mirror of
https://github.com/bol-van/zapret.git
synced 2025-05-24 22:32:58 +03:00
gzip support in ipset/*.sh and tpws
This commit is contained in:
@@ -12,6 +12,7 @@ define Package/tpws
|
||||
CATEGORY:=Network
|
||||
TITLE:=tpws
|
||||
SUBMENU:=Zapret
|
||||
DEPENDS:=+zlib
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
|
@@ -97,6 +97,7 @@ nfqws
|
||||
Эта программа - модификатор пакетов и обработчик очереди NFQUEUE.
|
||||
Она берет следующие параметры :
|
||||
--daemon ; демонизировать прогу
|
||||
--pidfile=<file> ; сохранить PID в файл
|
||||
--qnum=200 ; номер очереди
|
||||
--wsize=4 ; менять tcp window size на указанный размер
|
||||
--hostcase ; менять регистр заголовка "Host:" по умолчанию на "host:".
|
||||
@@ -108,10 +109,11 @@ tpws
|
||||
-----
|
||||
|
||||
tpws - это transparent proxy.
|
||||
--daemon ; демонизировать прогу
|
||||
--pidfile=<file> ; сохранить PID в файл
|
||||
--user=<username> ; менять uid процесса
|
||||
--bind-addr ; на каком адресе слушать. может быть ipv4 или ipv6 адрес. если не указано, то слушает на всех адресах ipv4 и ipv6
|
||||
--port=<port> ; на каком порту слушать
|
||||
--daemon ; демонизировать прогу
|
||||
--user=<username> ; менять uid процесса
|
||||
--split-http-req=method|host ; способ разделения http запросов на сегменты : около метода (GET,POST) или около заголовка Host
|
||||
--split-pos=<offset> ; делить все посылы на сегменты в указанной позиции. Если отсыл длинее 8Kb (размер буфера приема), то будет разделен каждый блок по 8Kb.
|
||||
--hostcase ; менять регистр заголовка "Host:". по умолчанию на "host:".
|
||||
@@ -126,6 +128,7 @@ tpws - это transparent proxy.
|
||||
; список читается 1 раз при старте и хранится в памяти в виде иерархической структуры для быстрого поиска.
|
||||
; для списка РКН может потребоваться система с 128 Mb памяти ! расчитывайте требование RAM для процесса как 3-5 кратный размер файла списка.
|
||||
; по сигналу HUP список будет перечитан при следующем принятом соединении
|
||||
; список может быть запакован в gzip. формат автоматически распознается и разжимается
|
||||
Параметры манипуляции могут сочетаться в любых комбинациях.
|
||||
Есть исключения : split-pos заменяет split-http-req. hostdot и hosttab взаимоисключающи.
|
||||
|
||||
@@ -136,7 +139,7 @@ tpws - это transparent proxy.
|
||||
На выходе получите ipset/zapret-ip-user.txt с IP адресами.
|
||||
|
||||
2) ipset/get_reestr.sh получает список доменов от rublacklist и дальше их ресолвит в ip адреса
|
||||
в файл ipset/zapret-ip.txt. В этом списке есть готовые IP адреса, но судя во всему они там в точности в том виде,
|
||||
в файл ipset/zapret-ip.txt.gz. В этом списке есть готовые IP адреса, но судя во всему они там в точности в том виде,
|
||||
что вносит в реестр РосКомПозор. Адреса могут меняться, позор не успевает их обновлять, а провайдеры редко
|
||||
банят по IP : вместо этого они банят http запросы с "нехорошим" заголовком "Host:" вне зависимости
|
||||
от IP адреса. Поэтому скрипт ресолвит все сам, хотя это и занимает много времени.
|
||||
@@ -185,7 +188,7 @@ get_reestr.sh может использовать мультипоточный
|
||||
----------------------------
|
||||
|
||||
Альтернативой ipset является использование tpws со списком доменов.
|
||||
Список доменов РКН может быть получен скриптом ipset/get_hostlist.sh - кладется в ipset/zapret-hosts.txt.
|
||||
Список доменов РКН может быть получен скриптом ipset/get_hostlist.sh - кладется в ipset/zapret-hosts.txt.gz.
|
||||
Этот скрипт автоматически добавляет к списку РКН домены из zapret-hosts-user.txt.
|
||||
tpws должен запускаться без фильтрации по ipset. Весь трафик http идет через tpws, и он решает нужно ли
|
||||
применять дурение в зависимости от поля Host: в http запросе.
|
||||
@@ -273,7 +276,7 @@ TPWS_OPT_HTTPS="--split-pos=3"
|
||||
Включить автозапуск службы :
|
||||
systemctl enable zapret
|
||||
|
||||
Удалить старые листы, если они были созданы ранее :
|
||||
Удалить старые листы, если они были созданы ранее :
|
||||
rm /opt/zapret/ipset/zapret-ip.txt* /opt/zapret/ipset/zapret-ip-user.txt* /opt/zapret/ipset/zapret-ip-ipban.txt* /opt/zapret/ipset/zapret-ip-user-ipban.txt* /opt/zapret/ipset/zapret-hosts.txt*
|
||||
По желанию прописать в /opt/zapret/ipset/zapret-hosts-user.txt свои домены.
|
||||
Выполнить скрипт обновления листа :
|
||||
@@ -446,18 +449,18 @@ ipset можно выкинуть, если не будем пользовать
|
||||
mv zapret-master zapret
|
||||
rm /tmp/zapret-master.zip
|
||||
|
||||
Если места совсем мало :
|
||||
opkg update
|
||||
opkg install netcat
|
||||
cd /tmp
|
||||
Если места совсем мало :
|
||||
opkg update
|
||||
opkg install netcat
|
||||
cd /tmp
|
||||
netcat -l -p 1111 >zapret.tar.gz
|
||||
На linux системе скачать и распаковать zapret. Оставить необходимый минимум файлов.
|
||||
Запаковать в архив zapret.tar.gz.
|
||||
md5sum zapret.tar.gz
|
||||
netcat <router_ip> 1111 <zapret.tar.gz
|
||||
<ctrl+c>
|
||||
На роутере
|
||||
md5sum zapret.tar.gz
|
||||
На linux системе скачать и распаковать zapret. Оставить необходимый минимум файлов.
|
||||
Запаковать в архив zapret.tar.gz.
|
||||
md5sum zapret.tar.gz
|
||||
netcat <router_ip> 1111 <zapret.tar.gz
|
||||
<ctrl+c>
|
||||
На роутере
|
||||
md5sum zapret.tar.gz
|
||||
Проверить соответствие hash.
|
||||
|
||||
Не стоит работать с распакованной версией zapret на windows. Потеряются ссылки и chmod.
|
||||
@@ -470,7 +473,7 @@ ipset можно выкинуть, если не будем пользовать
|
||||
|
||||
Настроить параметры согласно разделу "Выбор параметров".
|
||||
|
||||
Удалить старые листы, если они были созданы ранее :
|
||||
Удалить старые листы, если они были созданы ранее :
|
||||
rm /opt/zapret/ipset/zapret-ip.txt* /opt/zapret/ipset/zapret-ip-user.txt* /opt/zapret/ipset/zapret-ip-ipban.txt* /opt/zapret/ipset/zapret-ip-user-ipban.txt* /opt/zapret/ipset/zapret-hosts.txt*
|
||||
По желанию прописать в /opt/zapret/ipset/zapret-hosts-user.txt свои домены.
|
||||
Выполнить скрипт обновления листа :
|
||||
|
Reference in New Issue
Block a user