diff --git a/changes.txt b/changes.txt index 9618cf1..1fd9e44 100644 --- a/changes.txt +++ b/changes.txt @@ -25,3 +25,4 @@ compile : openwrt compile howto v4 tpws : added ability to insert extra space after http method : "GET /" => "GET /" +ISP support : TKT support diff --git a/init.d/debian7/zapret b/init.d/debian7/zapret index 7f44651..6ff4237 100755 --- a/init.d/debian7/zapret +++ b/init.d/debian7/zapret @@ -2,6 +2,7 @@ # CHOOSE ISP HERE. UNCOMMENT ONLY ONE LINE. ISP=mns +#ISP=tkt #ISP=beeline #ISP=domru @@ -31,7 +32,7 @@ case "$1" in echo "Adding iptables rule" case "${ISP}" in - mns) + mns|tkt) iptables -t raw -C PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass 2>/dev/null || iptables -t raw -I PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass DAEMON=$NFQWS @@ -64,7 +65,7 @@ case "$1" in echo "Deleting iptables rule" case "${ISP}" in - mns) + mns|tkt) iptables -t raw -D PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass DAEMON=$NFQWS ;; diff --git a/init.d/openwrt/firewall.user.tkt b/init.d/openwrt/firewall.user.tkt new file mode 100644 index 0000000..5bf7a93 --- /dev/null +++ b/init.d/openwrt/firewall.user.tkt @@ -0,0 +1,5 @@ +# put it to /etc/firewall.user + +# for TKT ISP +iptables -t raw -D PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num 200 --queue-bypass 2>/dev/null +iptables -t raw -I PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num 200 --queue-bypass diff --git a/init.d/openwrt/zapret b/init.d/openwrt/zapret index 1172985..56b988d 100755 --- a/init.d/openwrt/zapret +++ b/init.d/openwrt/zapret @@ -3,6 +3,7 @@ # CHOOSE ISP HERE. UNCOMMENT ONLY ONE LINE. #ISP=mns +#ISP=tkt #ISP=beeline ISP=domru @@ -21,7 +22,7 @@ START=18 get_daemon() { case "${ISP}" in - mns) + mns|tkt) DAEMON_OPTS="--qnum=$QNUM --wsize=4" DAEMON=$NFQWS ;; diff --git a/init.d/ubuntu12/zapret.conf b/init.d/ubuntu12/zapret.conf index f0efa2b..9cecd38 100644 --- a/init.d/ubuntu12/zapret.conf +++ b/init.d/ubuntu12/zapret.conf @@ -5,6 +5,7 @@ stop on runlevel [!2345] # CHOOSE ISP HERE. UNCOMMENT ONLY ONE LINE. env ISP=mns +#env ISP=tkt #env ISP=beeline #env ISP=domru @@ -23,7 +24,7 @@ pre-start script /opt/zapret/ipset/create_ipset.sh case "${ISP}" in - mns) + mns|tkt) iptables -t raw -C PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass || iptables -t raw -I PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass ;; @@ -44,7 +45,7 @@ end script script case "${ISP}" in - mns) + mns|tkt) NFEXE=$NFQWS NFARG="--qnum $QNUM --wsize=4" ;; @@ -62,7 +63,7 @@ end script pre-stop script case "${ISP}" in - mns) + mns|tkt) iptables -t raw -D PREROUTING -p tcp --sport 80 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass ;; beeline) diff --git a/readme.txt b/readme.txt index a2f00b8..5e99586 100644 --- a/readme.txt +++ b/readme.txt @@ -114,6 +114,7 @@ dom.ru : нужно проксирование HTTP сессий через tpws 2 запрашиваемых поддомена : s.kinozal.tv и st.kinozal.tv с разными IP адресами. sknt.ru : проверена работа с tpws с параметром "--split-http-req=method". возможно, будет работать nfqueue, пока возможности проверить нет +tkt : нужно разделение http запроса на сегменты, настройки mns.ru подходят Пример установки на debian 7 ---------------------------- @@ -159,9 +160,9 @@ ubuntu 12,14 -------------------- Существует несколько основных систем запуска служб : sysvinit, upstart, systemd. -Насройка зависит от системы, используемой в вашем дистрибутиве. +Настройка зависит от системы, используемой в вашем дистрибутиве. Типичная стратегия - найти скрипт или конфигурацию запуска других служб и написать свой по аналогии, -при необходимости почитывая документации по системе запуска. +при необходимости почитывая документацию по системе запуска. Нужные команды можно взять из предложенных скриптов. Фаерволлы @@ -199,3 +200,10 @@ opkg install iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptable Зашедулить задание обновления листа : crontab -e Создать строчку "0 12 * * */2 /opt/zapret/ipset/get_reestr.sh". Это значит в 12:00 каждые 2 дня обновлять список. + +Если у вас linux x64, то вместо компиляции toolchain можно использовать пре-компилированный SDK от разработчиков openwrt. +https://downloads.openwrt.org/ +Найдите вашу версию openwrt, найдите вашу архитектуру, скачайте файл "OpenWrt-SDK-*". +Фактически это тот же buildroot, только в нем уже подготовлен toolchain для нужной версии openwrt, +нужной target архитектуры и хост-системы linux x64. +