Jump to content
b1st

Обход блокировок на роутере!

Recommended Posts

15 minutes ago, Михаил Лукьянов said:

Кроме тора и vpn есть ещё shadowsocks и wireguard.

Спасибо за подсказки!!! С тором понятно, завтра настрою, а вот достоинства/недостатки решения на базе OpenVPN, shadowsocks и wireguard пока буду изучать. 

Share this post


Link to post
Share on other sites

Настроил по инструкции, был рад, но заметил странность

рутрекер который по хттпс у меня открывается нормально, а вот кинозал по хттп сразу после старта скрипта S99zapret работает, а потом отваливается через какое-то время. При этом попадаю не на заглушку провайдера, а просто пишет, что не удалось установить соединение. Пробовал режимы fragmentation, но с ним у меня работал только рутрекер и combined, на котором все заработало, но похоже хттп обход отваливается через какое-то время. В скрипте поменял еще BLACKHOLE=blocked.netbynet.ru меня туда провайдер заворачивает.

Share this post


Link to post
Share on other sites
2 часа назад, Dennon сказал:

Настроил по инструкции, был рад, но заметил странность

рутрекер который по хттпс у меня открывается нормально, а вот кинозал по хттп сразу после старта скрипта S99zapret работает, а потом отваливается через какое-то время. При этом попадаю не на заглушку провайдера, а просто пишет, что не удалось установить соединение. Пробовал режимы fragmentation, но с ним у меня работал только рутрекер и combined, на котором все заработало, но похоже хттп обход отваливается через какое-то время. В скрипте поменял еще BLACKHOLE=blocked.netbynet.ru меня туда провайдер заворачивает.

Оставьте combined. Создайте перехватчик для ndm /opt/etc/ndm/netfilter.d/zapret.sh:

#!/opt/bin/sh
[ "$type" == "ip6tables" ] && exit 0
[ "$table" != "nat" ] && exit 0   # check the table name
iptables -t nat -I PREROUTING -p tcp --dport 80 -i br0 -m set --match-set zapret dst -j DNAT --to 127.0.0.1:1188
iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner nobody -m set --match-set zapret dst -j DNAT --to 127.0.0.1:1188
/opt/bin/logger "http redirection rule created for zapret via netfilter hook"

Не забудьте

chmod +x /opt/etc/ndm/netfilter.d/zapret.sh

Я всё хотел автоматизировать создание перехватчика из скриптов, но  тут автор(bol-van) внезапно обновление выпустил. Наверное теперь наши наработки ему нужно влить в git, и заодно с перехватчиками ndm решить вопрос.

Share this post


Link to post
Share on other sites
On 4/19/2019 at 10:32 PM, Михаил Лукьянов said:

ipset restore восстановит значения из файла. Если править файл zapret.ipset руками, предварительно остановив zapret, и перезагружаться то изменения подхватятся. Если править значения в create_ipset.sh после создания или восстановления zapret.ipset, изменения не подхватятся. У меня получилось внести изменения без перезагрузки через ipset swap, но не у всех этот способ срабатывает.

Михаил, здравствуйте!

Подскажите пожалуйста, что именно нужно сделать чтобы поправить файл руками? И главное как именно его поправить. Тоже возникла проблема с zapret и ошибкой, попробовал способ со свапом, но не помогло. Не понимаю что делать дальше. Если надо перезагрузить роутер - не проблема.

Share this post


Link to post
Share on other sites

Друзья, приветствую!

После того как прикрыли koshara777.org я решил попробовать по инструкции в шапке сделать обход блокировок

но вот на одном шаге у меня появилась ошибка с библиотекой

~ # /opt/zapret/ipset/get_user.sh


dig: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory
dig: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory
dig: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory
Adding to ipset zapret6 (hash:ip) : /opt/zapret/ipset/zapret-ip-user6.txt
Adding to ipset zapret (hash:ip) : /opt/zapret/ipset/zapret-ip.txt
Adding to ipset zapret (hash:ip) : /opt/zapret/ipset/zapret-ip-user.txt
Adding to ipset ipban (hash:ip) : /opt/zapret/ipset/zapret-ip-user-ipban.txt

 

Можете мне пояснить почему не находится библиотека libc.so.0?

Что не так?

Share this post


Link to post
Share on other sites
В 29.07.2019 в 15:13, el matador сказал:

dig: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory

Я сталкивался с похожей проблемой с libc. Мне помогла полная переустановка php5 на php7

Share this post


Link to post
Share on other sites

Неожиданная проблема возникла: многие сервера за Cloudflare стали недоступны или показывают капчу, а всему причиной пропуск HTTPS через TOR.

Можете посоветовать как вывести Cloudflare из под такого обхода? Вроде РКН сейчас их подразбанил (частично).

Share this post


Link to post
Share on other sites
В 04.08.2019 в 23:26, Alex caswell сказал:

Неожиданная проблема возникла: многие сервера за Cloudflare стали недоступны или показывают капчу, а всему причиной пропуск HTTPS через TOR.

Можете посоветовать как вывести Cloudflare из под такого обхода? Вроде РКН сейчас их подразбанил (частично).

Добавьте в скрипт create_ipset.sh перед строкой

ipset save zapret -f /opt/zapret/ipset/zapret.ipset

Следующий код:
 

curl https://www.cloudflare.com/ips-v4 -o cloudfare.ip
for ip in $(cat cloudfare.ip ); do ipset del zapret $ip; done

 

Share this post


Link to post
Share on other sites

Спасибо за ответ! Пока, к сожалению, не помогло.

На скринах вывод и nano файла create_ipset.sh 

Screen Shot 2019-08-06 at 21.14.41.png

Screen Shot 2019-08-06 at 21.15.55.png

 

Для проверки что дело именно в этом пробовал flush. С чистым ipset-ом сайты открываются нормально.

Edited by Alex caswell

Share this post


Link to post
Share on other sites
12 hours ago, Михаил Лукьянов said:

Значит это  не cloudflare. Есть подозрения на гугловую капчу. Снимите дамп:


tcpdump -i br0 port 80 or port 443 -w dump.pcap

И выложите куда-нибудь.

Капча CF 100%, страница "One more step", внизу ray-id и IP который определился. Определяется IP из тора. 

Share this post


Link to post
Share on other sites
16 минут назад, Alex caswell сказал:

Капча CF 100%, страница "One more step", внизу ray-id и IP который определился. Определяется IP из тора. 

Да сделайте просто пинг по доменному имени сайта и проверьте этот IP с тем что в cloudfare.ip и с тем что в zapret:

ipset test zapret 195.82.146.214

 

Share this post


Link to post
Share on other sites

после обновления до версии KeeneticOS: 3.1 Beta 4 и выше обход перестаёт работать)))при откате на 3 бету всё работает-существует возможность вернуть работоспособность на новых версиях прошивки?

Share this post


Link to post
Share on other sites
Opkg::Manager: /opt/etc/init.d/S99zapret: iptable_raw.ko is already loaded.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: xt_string.ko is already loaded.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: nfqws is installed.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: tpws is installed.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: Restoring ipset.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: Adding iptables rule.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: iptables: No chain/target/match by that name.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: exit code 1.

Посоветуете что-нибудь?

Share this post


Link to post
Share on other sites
4 минуты назад, stakp сказал:

Opkg::Manager: /opt/etc/init.d/S99zapret: iptable_raw.ko is already loaded.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: xt_string.ko is already loaded.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: nfqws is installed.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: tpws is installed.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: Restoring ipset.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: Adding iptables rule.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: iptables: No chain/target/match by that name.
Авг 22 11:34:02 ndm
Opkg::Manager: /opt/etc/init.d/S99zapret: exit code 1.

Посоветуете что-нибудь?

Выяснить на какое правило ругань, и загрузить соответствующий модуль ядра.

  • Thanks 1

Share this post


Link to post
Share on other sites
55 минут назад, r13 сказал:

и загрузить соответствующий модуль ядра.

А облегчить загрузку модулей в автомате не судьба через kmod_config -> /opt/etc/init.d/S00kmod_config

/ # opkg list | grep kmod
kmod - 20-1 - Linux kernel module handling kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.
kmod_ndms - 24-5 - Linux kernel module handling kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.

 

Edited by vasek00
  • Thanks 1

Share this post


Link to post
Share on other sites

Добрый день!

Ситуация такая да версии прошивки роутера  3.01. B.3, обход прекрасно работает. Но стоит поставить версию выше, то обход уже не работает, вернее заглушка не вылетает, но и страница не открывается.. Откат обратно на старую версию прошивки решает проблему..

Чуть ниже выложу лог с журнала, там на, что то ругается, но я не пойму, что ему не хватает.. Пожалуйста подскажите, что делать, так как не очень хочется сидеть на старой версии прошивки)

Авг 26 16:04:36
ndm
Dns::Manager: name server 8.8.8.8, domain (default) deleted.
Авг 26 16:04:36
ndm
Dns::InterfaceSpecific: name server 8.8.8.8 added, domain (default), interface GigabitEthernet0/Vlan4.
Авг 26 16:04:36
ndm
Http::Manager: security level set to private.
Авг 26 16:04:36
ndm
Http::Manager: bruteforce detection is enabled.
Авг 26 16:04:36
ndm
Http::Manager: bruteforce detection is reconfigured.
Авг 26 16:04:36
ndm
Http::Manager: enabled SSL service.
Авг 26 16:04:36
ndm
Http::Manager: enabled SSL redirect.
Авг 26 16:04:36
ndm
Network::Nat: a NAT rule added.
Авг 26 16:04:36
ndm
Network::Nat: a NAT rule added.
Авг 26 16:04:36
ndm
VpnServer::Nat: PPTP VPN NAT enabled.
Авг 26 16:04:36
ndm
Dns::Manager: name server 91.244.168.254 added, domain (default).
Авг 26 16:04:36
ndm
Dns::Manager: name server 77.88.8.8 added, domain (default).
Авг 26 16:04:36
ndm
Dns::Manager: name server 8.8.8.8 added, domain (default).
Авг 26 16:04:36
ndm
SstpServer::Nat: SSTP VPN NAT enabled.
Авг 26 16:04:36
ndm
Telnet::Server: security level unchanged.
Авг 26 16:04:36
ndm
Telnet::Server: bruteforce detection is reconfigured.
Авг 26 16:04:36
ndm
Ssh::Manager: security level unchanged.
Авг 26 16:04:36
ndm
Ssh::Manager: bruteforce detection is reconfigured.
Авг 26 16:04:36
ndm
Ftp::Server: security level unchanged.
Авг 26 16:04:36
ndm
Ftp::Server: bruteforce detection is reconfigured.
Авг 26 16:04:36
ndm
Dns::Manager: name server 91.244.168.254, domain (default) deleted.
Авг 26 16:04:36
ndm
Dns::Manager: name server 77.88.8.8, domain (default) deleted.
Авг 26 16:04:36
ndm
Dns::Manager: name server 8.8.8.8, domain (default) deleted.
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "00:df:33:00:2e:7b".
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "80:35:c1:78:e0:52".
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "d0:b3:3f:7d:95:b0".
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "e8:37:7a:94:c9:d2".
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "40:b0:76:5c:8a:a7".
Авг 26 16:04:36
ndm
Hotspot::Manager: rule "permit" applied to host "24:00:0b:02:3e:49".
Авг 26 16:04:36
ndm
Network::Ip6::Subnets: created subnet "Default".
Авг 26 16:04:36
ndm
Network::Ip6::Subnets: interface "Home" bound to subnet "Default".
Авг 26 16:04:36
ndm
Network::Ip6::Subnets: subnet "Default" enabled as SLAAC.
Авг 26 16:04:36
ndm
Network::Interface::Rtx::Ppe: software PPE enabled.
Авг 26 16:04:36
ndm
Network::Interface::Rtx::Ppe: hardware PPE enabled.
Авг 26 16:04:37
ndm
Network::Interface::Switch: "GigabitEthernet0/2": switch link up at port 3.
Авг 26 16:04:37
ndm
Network::Interface::Rtx::Ppe: hardware-ipv6 PPE enabled.
Авг 26 16:04:37
ndm
UPnP::Manager: using LAN interface: Bridge0.
Авг 26 16:04:37
ndm
Torrent::Client: RPC port changed to 8090 (public).
Авг 26 16:04:37
ndm
Torrent::Client: peer port unchanged.
Авг 26 16:04:37
ndm
Torrent::Client: peer port changed to 51413.
Авг 26 16:04:37
ndm
Torrent::Client: pending storage keenetic:/torrent.
Авг 26 16:04:37
ndm
IpSec::CryptoEngineManager: IPsec crypto engine set to "hardware".
Авг 26 16:04:37
ndm
IpSec::Manager: MTU is set to auto.
Авг 26 16:04:37
ndm
SstpServer::Manager: bound to Bridge0.
Авг 26 16:04:37
ndm
SstpServer::Manager: configured pool range 172.16.3.33 to 172.16.3.232.
Авг 26 16:04:37
ndm
SstpServer::Manager: enabled multiple login.
Авг 26 16:04:37
ndm
SstpServer::Manager: LCP echo parameters updated.
Авг 26 16:04:37
ndm
VpnServer::Manager: bound to Bridge0.
Авг 26 16:04:37
ndm
VpnServer::Manager: configured pool range 172.16.1.33 to 172.16.1.232.
Авг 26 16:04:37
ndm
VpnServer::Manager: enabled multiple login.
Авг 26 16:04:37
ndm
VpnServer::Manager: bruteforce detection is reconfigured.
Авг 26 16:04:37
ndm
Dhcp::Server: service enabled.
Авг 26 16:04:37
ndm
Dns::Manager: DNS proxy enabled.
Авг 26 16:04:37
ndm
Igmp::Proxy: IGMP proxy enabled.
Авг 26 16:04:37
ndm
Http::Manager: HTTP service was enabled.
Авг 26 16:04:37
ndm
Cifs::ServerTsmb: enabled.
Авг 26 16:04:37
ndm
Telnet::Server: telnet server enabled.
Авг 26 16:04:37
ndm
Ssh::Manager: SSH server enabled.
Авг 26 16:04:37
ndm
Ntp::Client: NTP client enabled.
Авг 26 16:04:37
ndm
Torrent::Client: enabled.
Авг 26 16:04:37
ndm
CloudControl::Agent: the cloud control service enabled.
Авг 26 16:04:37
ndm
Opkg::Manager: disk is set to: ultra:/.
Авг 26 16:04:37
ndm
Opkg::Manager: configured init script: "/opt/etc/init.d/rc.unslung".
Авг 26 16:04:37
ndm
Components::Manager: components auto-update disabled.
Авг 26 16:04:37
ndm
Components::Manager: auto-update channel is "beta".
Авг 26 16:04:37
ndm
Core::Hotplug::Manager: scanning hardware...
Авг 26 16:04:37
ndm
kernel: br0: port 5(rai4.1) entered blocking state
Авг 26 16:04:37
ndm
kernel: br0: port 5(rai4.1) entered disabled state
Авг 26 16:04:37
ndm
kernel: device rai4.1 entered promiscuous mode
Авг 26 16:04:37
ndm
kernel: device rai4 entered promiscuous mode
Авг 26 16:04:37
ndm
kernel: br0: port 5(rai4.1) entered blocking state
Авг 26 16:04:37
ndm
kernel: br0: port 5(rai4.1) entered listening state
Авг 26 16:04:37
ndm
Network::Interface::Rtx::AccessPoint: "WifiMaster0/AccessPoint0": peer isolation disabled.
Авг 26 16:04:37
ndm
Core::Hotplug::Manager: scanning hardware: done.
Авг 26 16:04:37
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/nf_conntrack_ftp.ko.
Авг 26 16:04:37
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/nf_nat_ftp.ko.
Авг 26 16:04:37
ndm
Core::Init: system ready, core startup time is 64 seconds.
Авг 26 16:04:37
ndm
Network::Interface::Rtx::AccessPoint: "WifiMaster1/AccessPoint0": peer isolation disabled.
Авг 26 16:04:38
ndm
kernel: br1: port 3(rai4.2) entered blocking state
Авг 26 16:04:38
ndm
kernel: br1: port 3(rai4.2) entered disabled state
Авг 26 16:04:38
ndm
kernel: device rai4.2 entered promiscuous mode
Авг 26 16:04:38
ndm
kernel: br1: port 3(rai4.2) entered blocking state
Авг 26 16:04:38
ndm
kernel: br1: port 3(rai4.2) entered listening state
Авг 26 16:04:38
ndm
Network::Interface::Rtx::AccessPoint: "WifiMaster0/AccessPoint1": peer isolation disabled.
Авг 26 16:04:38
ndm
FileSystem::Ext: "/dev/sda" has an unknown partition type, ignored.
Авг 26 16:04:38
ndm
FileSystem::Ext: ext4 "e23b3b95-e349-4c45-9e9b-52cdce37328a:": filesystem initialized.
Авг 26 16:04:38
ndm
kernel: EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
Авг 26 16:04:38
ndm
FileSystem::Repository: "e23b3b95-e349-4c45-9e9b-52cdce37328a:" registered.
Авг 26 16:04:38
ndm
Hotspot::Discovery::Explorer: "Bridge0": Interface Bridge0 IPv4 neighbour explorer started.
Авг 26 16:04:38
ndm
Hotspot::Discovery::Explorer: "Bridge1": Interface Bridge1 IPv4 neighbour explorer started.
Авг 26 16:04:38
ndm
kernel: Disable SMB fastpath
Авг 26 16:04:38
ndm
kernel: Enable SMB fastpath for 192.168.1.1/255.255.255.0
Авг 26 16:04:38
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/igmpsn.ko.
Авг 26 16:04:38
radvd[665]
version 2.15 started
Авг 26 16:04:38
ndm
kernel: igmpsn: IGMP switch snooping module (C) 2015-2019 NDM Systems Inc., v4.2.8
Авг 26 16:04:38
ndm
Ip6::Discovery::Explorer: "Bridge0": Interface Bridge0 IPv6 neighbour explorer started.
Авг 26 16:04:38
ndm
Ip6::Discovery::Explorer: "Bridge1": Interface Bridge1 IPv6 neighbour explorer started.
Авг 26 16:04:38
ndm
Network::Interface::Rtx::WifiMaster: "WifiMaster0": auto channel mode set.
Авг 26 16:04:38
ndm
Network::Interface::Rtx::WifiMaster: "WifiMaster1": auto channel mode set.
Авг 26 16:04:38
ndm
kernel: br0: port 1(eth2.1) entered blocking state
Авг 26 16:04:38
ndm
kernel: br0: port 1(eth2.1) entered listening state
Авг 26 16:04:38
ndm
Dns::Manager: name server 91.244.168.254 added, domain (default).
Авг 26 16:04:38
ndm
Dns::Manager: name server 77.88.8.8 added, domain (default).
Авг 26 16:04:38
ndm
Dns::Manager: name server 8.8.8.8 added, domain (default).
Авг 26 16:04:39
ndm
kernel: EXT4-fs (sda1): re-mounted. Opts: (null)
Авг 26 16:04:39
ndm
Opkg::Manager: /tmp/mnt/e23b3b95-e349-4c45-9e9b-52cdce37328a mounted to /tmp/mnt/e23b3b95-e349-4c45-9e9b-52cdce37328a.
Авг 26 16:04:39
ndm
Opkg::Manager: /tmp/mnt/e23b3b95-e349-4c45-9e9b-52cdce37328a mounted to /opt/.
Авг 26 16:04:39
ndm
Opkg::Manager: /tmp/mnt/e23b3b95-e349-4c45-9e9b-52cdce37328a initialized.
Авг 26 16:04:39
telnetd
waiting for connections...
Авг 26 16:04:39
ndm
Ntp::Client: unable to communicate with "1.pool.ntp.org".
Авг 26 16:04:39
ndm
Ntp::Client: could not synchronize, waiting...
Авг 26 16:04:39
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/hw_nat.ko.
Авг 26 16:04:39
ndm
kernel: Ralink/MTK HW NAT 5.0.4.0-11 Module Enabled, FoE Size: 16384
Авг 26 16:04:39
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/fastvpn.ko.
Авг 26 16:04:39
dropbear
Started version 2019.78-1
Авг 26 16:04:39
ndm
kernel: fastvpn: sizeof(bind) = 200
Авг 26 16:04:39
ndm
kernel: fastvpn: sizeof(hashent) = 56
Авг 26 16:04:39
ndm
kernel: fastvpn: registered
Авг 26 16:04:39
ndm
kernel: fastvpn: enabled
Авг 26 16:04:39
ndm
kernel: fastvpn: Fast VPN init, v4.0-131
Авг 26 16:04:39
ndm
kernel: fastvpn: PPPoE/IPoE LAN software acceleration is disabled
Авг 26 16:04:39
bndstrg
band steering control daemon v1.0-26 started
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 13:04:39
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables v1.4.21: Set zapret doesn't exist.
Авг 26 16:04:39
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: Try `iptables -h' or 'iptables --help' for more information.
Авг 26 13:04:39
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:39
ndm
Core::Server: started Session /var/run/ndm.core.socket.
Авг 26 16:04:40
ndm
Core::Session: client disconnected.
Авг 26 16:04:40
ndhcps
NDM DHCP server (version 3.2.37) started.
Авг 26 16:04:40
ndm
Core::Server: started Session /var/run/ndm.core.socket.
Авг 26 16:04:40
ndm
Core::Session: client disconnected.
Авг 26 16:04:40
ndm
Http::Manager: updated configuration.
Авг 26 16:04:40
ndm
Network::InterfaceFlusher: flushed conntrack and route cache.
Авг 26 13:04:40
root
Started cron from .
Авг 26 16:04:40
ndm
Network::InternetChecker: Internet access detected.
Авг 26 16:04:40
ndhcps
NDM DHCP server (version 3.2.37) started.
Авг 26 13:04:40
root
Started tor from .
Авг 26 16:04:40
ndm
Core::Server: started Session /var/run/ndm.core.socket.
Авг 26 16:04:40
ndm
Core::Session: client disconnected.
Авг 26 13:04:40
dropbear[714]
Running in background
Авг 26 16:04:40
ndm
kernel: br0: port 5(rai4.1) entered learning state
Авг 26 16:04:40
nimproxy
NDM IGMP/Multicast proxy (version 0.0.32) started.
Авг 26 16:04:40
avahi-daemon[729]
avahi-daemon 0.6.32 starting up.
Авг 26 13:04:40
Tor[746]
Tor 0.4.0.5 running on Linux with Libevent 2.1.8-stable, OpenSSL 1.1.1b, Zlib 1.2.11, Liblzma N/A, and Libzstd N/A.
Авг 26 13:04:40
Tor[746]
Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Авг 26 13:04:40
Tor[746]
Read configuration file "/opt/etc/tor/torrc".
Авг 26 13:04:40
Tor[746]
You configured a non-loopback address '192.168.1.1:9053' for DNSPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Авг 26 13:04:40
Tor[746]
You configured a non-loopback address '192.168.1.1:9040' for TransPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Авг 26 13:04:40
Tor[746]
You configured a non-loopback address '192.168.1.1:9100' for SocksPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Авг 26 13:04:40
Tor[746]
You configured a non-loopback address '192.168.1.1:9053' for DNSPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Авг 26 13:04:40
Tor[746]
You configured a non-loopback address '192.168.1.1:9040' for TransPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Авг 26 13:04:40
Tor[746]
Opening Socks listener on 127.0.0.1:9050
Авг 26 13:04:40
Tor[746]
Opened Socks listener on 127.0.0.1:9050
Авг 26 13:04:40
Tor[746]
Opening Socks listener on 192.168.1.1:9100
Авг 26 13:04:40
Tor[746]
Opened Socks listener on 192.168.1.1:9100
Авг 26 13:04:40
Tor[746]
Opening DNS listener on 192.168.1.1:9053
Авг 26 13:04:40
Tor[746]
Opened DNS listener on 192.168.1.1:9053
Авг 26 13:04:40
Tor[746]
Opening DNS listener on 127.0.0.1:9053
Авг 26 13:04:40
Tor[746]
Opened DNS listener on 127.0.0.1:9053
Авг 26 13:04:40
Tor[746]
Opening Transparent pf/netfilter listener on 192.168.1.1:9040
Авг 26 13:04:40
Tor[746]
Opened Transparent pf/netfilter listener on 192.168.1.1:9040
Авг 26 13:04:40
Tor[746]
Bootstrapped 0% (starting): Starting
Авг 26 13:04:40
Tor[746]
Received local state file with skewed time (/opt/var/lib/tor/state): It seems that our clock is behind by 3 minutes, 43 seconds, or that theirs is ahead. Tor requires an accurate clock to work: please check your time, timezone, and date settings.
Авг 26 13:04:40
Tor[746]
Problem bootstrapping. Stuck at 0% (starting): Starting. (Clock skew -223 in local state file from /opt/var/lib/tor/state; CLOCK_SKEW; count 1; recommendation warn; host ? at ?)
Авг 26 16:04:41
ndm
kernel: br0: port 2(ra0) entered disabled state
Авг 26 16:04:41
ndm
kernel: TSMB module version 3019.7.4 started from process 747!
Авг 26 13:04:41
Tor[746]
You are running Tor as root. You don't need to, and you probably shouldn't.
Авг 26 16:04:41
ndm
kernel: br1: port 3(rai4.2) entered learning state
Авг 26 16:04:41
ndm
IpSec::CryptoEngineManager: start load hardware crypto processing.
Авг 26 16:04:41
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/crypto_k.ko.
Авг 26 16:04:41
ndm
kernel: EIP93: Started (v 4.3.0.0-24)
Авг 26 16:04:41
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/esp4_hw.ko.
Авг 26 16:04:41
ndm
IpSec::CryptoEngineManager: hardware crypto processing was enabled.
Авг 26 16:04:41
ndm
kernel: br0: port 1(eth2.1) entered learning state
Авг 26 16:04:42
ndm
kernel: IPv6: ADDRCONF(NETDEV_UP): ra0: link is not ready
Авг 26 16:04:42
ndm
kernel: IPv6: ADDRCONF(NETDEV_CHANGE): ra0: link becomes ready
Авг 26 16:04:42
ndm
kernel: br0: port 2(ra0) entered blocking state
Авг 26 16:04:42
ndm
kernel: br0: port 2(ra0) entered listening state
Авг 26 16:04:42
ndm
Opkg::Manager: /opt/etc/init.d/rc.unslung: exit code 1.
Авг 26 16:04:42
ndm
kernel: br0: port 3(rai0) entered disabled state
Авг 26 16:04:42
coalagent
version 0.3.33 starting.
Авг 26 16:04:43
ndm
kernel: br0: port 5(rai4.1) entered forwarding state
Авг 26 16:04:43
ndm
kernel: br0: topology change detected, propagating
Авг 26 16:04:44
ndm
kernel: br1: port 3(rai4.2) entered forwarding state
Авг 26 16:04:44
ndm
kernel: br1: topology change detected, propagating
Авг 26 16:04:44
ndm
kernel: br0: port 3(rai0) entered blocking state
Авг 26 16:04:44
ndm
kernel: br0: port 3(rai0) entered listening state
Авг 26 16:04:44
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(ea:37:7a:93:c9:d2) had associated successfully.
Авг 26 16:04:44
bndstrg
band steering: finished
Авг 26 16:04:44
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(ea:37:7a:93:c9:d2) set key done in WPA2/WPA2PSK.
Авг 26 16:04:44
ndm
Core::Server: started Session /var/run/ndm.core.socket.
Авг 26 16:04:44
upnp
HTTP listening on port 54877
Авг 26 16:04:44
upnp
Listening for NAT-PMP/PCP traffic on port 5351
Авг 26 16:04:44
ndm
Core::Server: started Session /var/run/ndm.core.socket.
Авг 26 16:04:44
ndm
Core::Session: client disconnected.
Авг 26 16:04:44
ndm
kernel: capability: warning: `nginx' uses 32-bit capabilities (legacy support in use)
Авг 26 16:04:44
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 13:04:44
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:44
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 16:04:44
ndm
Cloud::Agent: can not connect to the cloud server.
Авг 26 13:04:44
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:44
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 13:04:44
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:45
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 16:04:45
ndm
kernel: br0: port 1(eth2.1) entered forwarding state
Авг 26 16:04:45
ndm
kernel: br0: topology change detected, propagating
Авг 26 13:04:45
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:04:45
ndm
kernel: br0: port 2(ra0) entered learning state
Авг 26 16:04:45
ndhcps
DHCPREQUEST received (STATE_INIT) for 192.168.1.72 from 40:b0:76:5c:8a:a7.
Авг 26 16:04:45
ndhcps
sending ACK of 192.168.1.72 to 40:b0:76:5c:8a:a7.
Авг 26 16:04:46
ndm
Cifs::ServerTsmb: service started.
Авг 26 16:04:46
bndstrg
band steering control daemon v1.0-26 started
Авг 26 16:04:47
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/nf_conntrack_sip.ko.
Авг 26 16:04:47
ndm
Core::System::DriverManager: loading /lib/modules/4.9-ndm-2/nf_nat_sip.ko.
Авг 26 16:04:47
ndm
kernel: br0: port 3(rai0) entered learning state
Авг 26 16:04:48
ndm
kernel: ACS result: Primary Channel 2, Min Channel Busy = 0, BW = 20
Авг 26 16:04:48
wmond
WifiMaster0/AccessPoint0: (MT7615) BSS(ra0) channel switched to 2.
Авг 26 16:04:48
ndm
kernel: br0: port 2(ra0) entered forwarding state
Авг 26 16:04:48
ndm
kernel: br0: topology change detected, propagating
Авг 26 13:04:48
Tor[746]
Starting with guard context "default"
Авг 26 13:04:49
Tor[746]
Bootstrapped 5% (conn): Connecting to a relay
Авг 26 16:10:03
ndm
Core::System::Clock: system time has been changed.
Авг 26 16:10:03
ndm
Ntp::Client: time synchronized with "2.pool.ntp.org".
Авг 26 13:10:03
Tor[746]
Tried for 315 seconds to get a connection to [scrubbed]:0. Giving up.
Авг 26 13:10:03
Tor[746]
Core::Syslog: last message repeated 24 times.
Авг 26 13:10:03
Tor[746]
Tried for 315 seconds to get a connection to [scrubbed]:0. Giving up. (waiting for circuit)
Авг 26 13:10:03
Tor[746]
Tried for 315 seconds to get a connection to [scrubbed]:0. Giving up. (waiting for circuit)
Авг 26 16:10:03
bndstrg
band steering: enabled
Авг 26 16:10:03
ndm
kernel: ACS result: Primary Channel 36, Min Channel Busy = 0, BW = 80
Авг 26 16:10:03
wmond
WifiMaster1/AccessPoint0: (MT7615) BSS(rai0) channel switched to 36.
Авг 26 13:10:04
Tor[746]
Bootstrapped 10% (conn_done): Connected to a relay
Авг 26 16:10:04
ndm
kernel: br0: port 3(rai0) entered forwarding state
Авг 26 16:10:04
ndm
kernel: br0: topology change detected, propagating
Авг 26 13:10:04
Tor[746]
Bootstrapped 14% (handshake): Handshaking with a relay
Авг 26 13:10:04
Tor[746]
Bootstrapped 15% (handshake_done): Handshake with a relay done
Авг 26 13:10:04
Tor[746]
Bootstrapped 75% (enough_dirinfo): Loaded enough directory info to build circuits
Авг 26 13:10:04
Tor[746]
Bootstrapped 90% (ap_handshake_done): Handshake finished with a relay to build circuits
Авг 26 13:10:04
Tor[746]
Bootstrapped 95% (circuit_create): Establishing a Tor circuit
Авг 26 13:10:05
Tor[746]
Bootstrapped 100% (done): Done
Авг 26 16:10:07
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(d0:b3:3f:7d:95:b0) had associated successfully.
Авг 26 16:10:07
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(d0:b3:3f:7d:95:b0) set key done in WPA2/WPA2PSK.
Авг 26 16:10:07
ndhcps
DHCPDISCOVER received from d0:b3:3f:7d:95:b0.
Авг 26 16:10:07
ndhcps
making OFFER of 192.168.1.137 to d0:b3:3f:7d:95:b0.
Авг 26 16:10:08
ndhcps
DHCPREQUEST received (STATE_SELECTING) for 192.168.1.137 from d0:b3:3f:7d:95:b0.
Авг 26 16:10:08
ndhcps
sending ACK of 192.168.1.137 to d0:b3:3f:7d:95:b0.
Авг 26 16:10:10
ndm
Core::Ndss: [920] HTTP error: 403 (request forbidden).
Авг 26 16:10:15
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(ea:37:7a:93:c9:d2) had associated successfully.
Авг 26 16:10:15
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(ea:37:7a:93:c9:d2) set key done in WPA2/WPA2PSK.
Авг 26 16:10:16
ndhcps
DHCPDISCOVER received from e8:37:7a:94:c9:d2.
Авг 26 16:10:16
ndhcps
making OFFER of 192.168.1.91 to e8:37:7a:94:c9:d2.
Авг 26 16:10:16
ndhcps
DHCPREQUEST received (STATE_SELECTING) for 192.168.1.91 from e8:37:7a:94:c9:d2.
Авг 26 16:10:17
ndhcps
sending ACK of 192.168.1.91 to e8:37:7a:94:c9:d2.
Авг 26 16:10:19
ndm
Io::TcpSocket: connected to 192.168.1.91:80.
Авг 26 16:10:19
ndm
Mws::RciClient: "e8:37:7a:94:c9:d2": response code 200 (OK).
Авг 26 16:10:19
ndm
Mws::RciClient: "e8:37:7a:94:c9:d2": Content-Length: 1858.
Авг 26 16:10:19
ndm
[truncated] Mws::RciClient: "e8:37:7a:94:c9:d2": [995]: "{"show":{"version":{"release":"v2.08(AAUQ.4)C2","arch":"mips","ndm":{"exact":"0-df82a04","cdate":"16 Oct 2017"},"bsp":{"exact":"0-02ec1b2","cdate":"16 Oct 2017"},"ndw":{"version":"4.2.0.166","features":"wifi_button,hw_mode_switch,nopack,flexible_menu,emulate_firmware_progress","components":"ddns,dot1x,interface-extras,kabinet,miniupnpd,nathelper-h323,nathelper-ftp,nathelper-pptp,nathelper-rtsp,nathelper-sip,ppe,trafficcontrol,base,cloud,cloudcontrol,config-ap,config-client,config-repeater,corewireless,dhcpd,components,easyconfig,igmp,l2tp,ppp,pptp,pppoe,ydns,skydns,pingcheck,base-l10n,theme-ZyXEL-Intl,base-theme,sysmode,easyconfig-3.2,base-ZyXEL-Intl,ispdb"},"manufacturer":"ZyXEL","vendor":"ZyXEL","series":"Keenetic series","model":"Keenetic","hw_version":"02132000-F","hw_id":"kl_rf","device":"Keenetic Lite III","class":"Internet Center"},"identification":{"servicetag":"006379071102602","serial":"S152E34002682","mac":"e8:37:7a
Авг 26 16:10:19
ndm
Io::TcpSocket: connected to 192.168.1.91:80.
Авг 26 16:10:19
ndm
Mws::RciClient: "e8:37:7a:94:c9:d2": response code 200 (OK).
Авг 26 16:10:19
ndm
Mws::RciClient: "e8:37:7a:94:c9:d2": Content-Length: 26796.
Авг 26 16:10:19
ndm
Mws::RciClient: "e8:37:7a:94:c9:d2": [995]: excessive (19383 bytes).
Авг 26 16:12:03
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(e4:c8:01:bc:7d:72) had associated successfully.
Авг 26 16:12:03
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(e4:c8:01:bc:7d:72) set key done in WPA2/WPA2PSK.
Авг 26 16:12:04
ndhcps
DHCPDISCOVER received from e4:c8:01:bc:7d:72.
Авг 26 16:12:05
ndhcps
making OFFER of 192.168.1.75 to e4:c8:01:bc:7d:72.
Авг 26 16:12:05
ndhcps
DHCPREQUEST received (STATE_SELECTING) for 192.168.1.75 from e4:c8:01:bc:7d:72.
Авг 26 16:12:05
ndhcps
sending ACK of 192.168.1.75 to e4:c8:01:bc:7d:72.
Авг 26 16:13:29
ndm
UPnP::Manager: a new nat rule appended.
Авг 26 16:13:29
ndm
UPnP::Manager: redirect rule added: tcp GigabitEthernet0/Vlan4:13849 -> 192.168.1.137:1080.
Авг 26 16:13:29
ndm
UPnP::Manager: a new filter rule appended.
Авг 26 16:13:29
ndm
UPnP::Manager: forward rule added: tcp GigabitEthernet0/Vlan4 -> 192.168.1.137:1080.
Авг 26 16:13:29
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 13:13:29
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:13:29
ndm
UPnP::Manager: a new nat rule appended.
Авг 26 16:13:29
ndm
UPnP::Manager: redirect rule added: udp GigabitEthernet0/Vlan4:13849 -> 192.168.1.137:3027.
Авг 26 16:13:29
ndm
UPnP::Manager: a new filter rule appended.
Авг 26 16:13:29
ndm
UPnP::Manager: forward rule added: udp GigabitEthernet0/Vlan4 -> 192.168.1.137:3027.
Авг 26 16:13:29
ndm
Opkg::Manager: /opt/etc/ndm/netfilter.d/zapret.sh: iptables: No chain/target/match by that name.
Авг 26 13:13:29
root
http+https redirection rule created for zapret via netfilter hook
Авг 26 16:15:05
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(d8:ce:3a:31:00:34) had associated successfully.
Авг 26 16:15:05
wmond
WifiMaster0/AccessPoint0: (MT7615) STA(d8:ce:3a:31:00:34) set key done in WPA2/WPA2PSK.
Авг 26 16:15:05
ndhcps
DHCPDISCOVER received from d8:ce:3a:31:00:34.
Авг 26 16:15:06
ndhcps
making OFFER of 192.168.1.77 to d8:ce:3a:31:00:34.
Авг 26 16:15:06
ndhcps
DHCPREQUEST received (STATE_SELECTING) for 192.168.1.77 from d8:ce:3a:31:00:34.
Авг 26 16:15:06
ndhcps
sending ACK of 192.168.1.77 to d8:ce:3a:31:00:34.
Авг 26 16:15:06
ndhcps
DHCPREQUEST received (STATE_SELECTING) for 192.168.1.77 from d8:ce:3a:31:00:34.
Авг 26 16:15:07
ndhcps
sending ACK of 192.168.1.77 to d8:ce:3a:31:00:34.
Авг 26 16:23:55
ndm
Core::Configurator: not found: "show/rc/skydns".
Авг 26 16:24:04
ndm
Core::Ndss: [3117] HTTP error: 403 (request forbidden).
Авг 26 16:30:37
ndm
Core::Configurator: not found: "show/rc/skydns".
Авг 26 16:30:42
ndm
Core::Ndss: [3339] HTTP error: 403 (request forbidden).
Edited by biman

Share this post


Link to post
Share on other sites
32 минуты назад, biman сказал:

Добрый день!

Ситуация такая да версии прошивки роутера  3.01. B.3, обход прекрасно работает. Но стоит поставить версию выше, то обход уже не работает, вернее заглушка не вылетает, но и страница не открывается.. Откат обратно на старую версию прошивки решает проблему..

Чуть ниже выложу лог с журнала, там на, что то ругается, но я не пойму, что ему не хватает.. Пожалуйста подскажите, что делать, так как не очень хочется сидеть на старой версии прошивки)

Тоже самое что и чуть выше,

 в новых прошивках не используемые системой модули ядра не загружаются автоматически.

Нужно добавлять в скрипты загрузку используемых в решении модулей ядра для iptables.

Share this post


Link to post
Share on other sites
3 hours ago, r13 said:

Тоже самое что и чуть выше,

 в новых прошивках не используемые системой модули ядра не загружаются автоматически.

Нужно добавлять в скрипты загрузку используемых в решении модулей ядра для iptables.

Ещё бы знать, что и где добавить...

Похоже остаётся надеяться только на то, что разработчики софта откатят обратно.. Явно же это очень неудобно))

Пока буду на третьей бете сидеть))

Share this post


Link to post
Share on other sites
49 минут назад, biman сказал:

Ещё бы знать, что и где добавить...

Похоже остаётся надеяться только на то, что разработчики софта откатят обратно.. Явно же это очень неудобно))

Пока буду на третьей бете сидеть))

Для того чтобы узнать что добавить, надо выяснить на какой строке скрипта ошибка.

ЗЫ Отката не будет, скорее уж доработка скрипта, загрузка всех подряд модулей которые просто будут занимать память сомнительный вариант. 

Edited by r13

Share this post


Link to post
Share on other sites
On 8/26/2019 at 9:30 PM, r13 said:

Для того чтобы узнать что добавить, надо выяснить на какой строке скрипта ошибка.

ЗЫ Отката не будет, скорее уж доработка скрипта, загрузка всех подряд модулей которые просто будут занимать память сомнительный вариант.

Подскажите, как узнать на какой строке ошибка-я выясню и сюда скину.. Реально обидно, обновления выходят один за одним, видно, что ведётся большая работа, а приходится сидеть на старой бете..

Edited by biman

Share this post


Link to post
Share on other sites
13 минуты назад, biman сказал:

Подскажите, как узнать на какой строке ошибка-я выясню и сюда скину.. Реально обидно, обновления выходят один за одним, видно, что ведётся большая работа, а приходится сидеть на старой бете..

Например между строчками скрипта по обработке iptables добавить

logger “1”

...

logger “2”

И таким образом получить в логе доп логирование указывающее на строку. 

Share this post


Link to post
Share on other sites
9 minutes ago, r13 said:

Например между строчками скрипта по обработке iptables добавить

logger “1”

...

logger “2”

И таким образом получить в логе доп логирование указывающее на строку. 

Вот скрипт-где именно ставить?Потом,как заменю,смотреть в журнале?

#!/bin/sh
# For systemd :
#  install : /usr/lib/lsb/install_initd zapret
#  remove : /usr/lib/lsb/remove_initd zapret
### BEGIN INIT INFO
# Provides:        zapret
# Required-Start:    $local_fs $network
# Required-Stop:    $local_fs $network
# Default-Start:    2 3 4 5
# Default-Stop:        0 1 6
### END INIT INFO

# CHOOSE ACTION PERFORMED ON PACKETS: FRAGMENTATION (NFQWS) OR MODIFICATION (TPWS).
#ACTION=fragmentation
ACTION=modification
#ACTION=combined

# CHOSE NETWORK INTERFACE BEHIND NAT
SLAVE_ETH=br0


IPSET_CR=/opt/zapret/ipset/create_ipset.sh
NAME=zapret
DESC=anti-zapret

QNUM=200
TPPORT=1188
ROUTE_TABLE_NUM=100
NFQWS=/opt/zapret/binaries/mips32r1-lsb/nfqws
TPWS=/opt/zapret/binaries/mips32r1-lsb/tpws
TPWS_USER=nobody
#FILL THE ADRESS OF BLACKHOLE PAGE
BLACKHOLE=blackhole.beeline.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

PIDFILE=/var/run/$NAME.pid

set -e

case "$1" in
  start)
        if lsmod | grep "iptable_raw " &> /dev/null ;  then
         echo "iptable_raw.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/iptable_raw.ko &> /dev/null; then
          echo "iptable_raw.ko loaded"
         else
          echo "Cannot find iptable_raw.ko kernel module, aborting"
          exit 1
         fi
        fi
    if lsmod | grep "xt_string " &> /dev/null ;  then
         echo "xt_string.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/xt_string.ko &> /dev/null; then
          echo "xt_string.ko loaded"
         else
          echo "Cannot find xt_string.ko kernel module, aborting"
          exit 1
         fi
        fi
        if ($NFQWS 2> /dev/null| grep "wsize") &> /dev/null ; then
         echo "nfqws is installed"
        else
         echo "nfqws is not installed, aborting"
         exit 1
        fi
        if ($TPWS --test 2> /dev/null| grep "maxconn") &> /dev/null ; then
         echo "tpws is installed"
        else
         echo "tpws is not installed, aborting"
         exit 1
        fi
    echo "Restoring ipset"
    #($IPSET_CR)
    if !(ipset list -n zapret > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret.ipset
    fi
    if !(ipset list -n zapret6 > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret6.ipset
    fi
    echo "Adding iptables rule"
    case "${ACTION}" in
        fragmentation)
        iptables -t raw -C PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200 2>/dev/null ||
         iptables -t raw -I PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
        iptables -t raw -C PREROUTING -p tcp --sports 80,443 --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 -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
        #iptables -t nat -C PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888 2>/dev/null ||
        #         iptables -t nat -I PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
        DAEMON=$NFQWS
        DAEMON_OPTS="--qnum=$QNUM --wsize=5"
        ;;
        modification)
        sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
    if [ -e /proc/net/if_inet6 ] ; then
        ! ip -6 route add local default dev lo table 99
          ! ip -6 rule add from all fwmark 0x9 lookup 99
      ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
       ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
      ip6tables -t mangle -N DIVERT
      ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
      ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
      ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
    fi
    iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
    iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
        DAEMON=$TPWS
        DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
        ;;
    combined)
  sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
  if [ -e /proc/net/if_inet6 ] ; then
    ! ip -6 route add local default dev lo table 99
    ! ip -6 rule add from all fwmark 0x9 lookup 99
    ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
     ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
    ip6tables -t mangle -N DIVERT
    ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
    ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
    ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
  fi
  iptables -t raw -C PREROUTING -p tcp --sports 443 --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 -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
  iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  $NFQWS --daemon --qnum=$QNUM --wsize=5
  DAEMON=$TPWS
  DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
  ;;
    esac

    echo -n "Starting $DESC: "
    start-stop-daemon -S -q -p $PIDFILE -b -m -x $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  stop)
    echo "Saving ipset"
    ipset save zapret -f /opt/zapret/ipset/zapret.ipset
  if [ -e /proc/net/if_inet6 ] ; then
       ipset save zapret6 -f /opt/zapret/ipset/zapret6.ipset
  fi
    echo "Deleting iptables rule"

    case "${ACTION}" in
       fragmentation)
          iptables -t raw -D PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
          iptables -t raw -D PREROUTING -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
          #iptables -t nat -D PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
          DAEMON=$NFQWS
        ;;
        modification)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      if [ -e /proc/net/if_inet6 ] ; then
        ! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        ! ip6tables -t mangle -F DIVERT 2>/dev/null
        ! ip6tables -t mangle -X DIVERT 2>/dev/null
        ! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        ! ip -6 rule del from all fwmark 0x9 2>/dev/null
        ! ip -6 route del local default dev lo table 99 2>/dev/null
      fi
        DAEMON=$TPWS
        ;;
    combined)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t raw -D PREROUTING -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      if [ -e /proc/net/if_inet6 ] ; then
        ! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        ! ip6tables -t mangle -F DIVERT 2>/dev/null
        ! ip6tables -t mangle -X DIVERT 2>/dev/null
        ! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        ! ip -6 rule del from all fwmark 0x9 2>/dev/null
        ! ip -6 route del local default dev lo table 99 2>/dev/null
      fi
      #ip -6 route flush table 99
      killall nfqws
    DAEMON=$TPWS
  ;;
    esac

    echo -n "Stopping $DESC: "
    start-stop-daemon  -K -q -p $PIDFILE -x $DAEMON
    echo "$NAME."
    ;;
  *)
    N=/etc/init.d/$NAME
    echo "Usage: $N {start|stop}" >&2
    exit 1
    ;;
esac

exit 0

 

Edited by biman

Share this post


Link to post
Share on other sites
14 минуты назад, biman сказал:

modification)
        sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
    if [ -e /proc/net/if_inet6 ] ; then
        ! ip -6 route add local default dev lo table 99
          ! ip -6 rule add from all fwmark 0x9 lookup 99
      ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
       ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
      ip6tables -t mangle -N DIVERT
      ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
      ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
      ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
    fi
    iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
    iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
        DAEMON=$TPWS
        DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
        ;;

В этом блоке,

Да, смотреть в логе

Share this post


Link to post
Share on other sites
2 часа назад, r13 сказал:

В этом блоке,

Да, смотреть в логе

Отключите поддержку IPv6 (закомментируйте блок):

	if [ -e /proc/net/if_inet6 ] ; then
		! ip -6 route add local default dev lo table 99
		! ip -6 rule add from all fwmark 0x9 lookup 99
		ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
		ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
		ip6tables -t mangle -N DIVERT
		ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
		ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
		ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
	fi

Это нужно сделать и для секции start и для секции stop. У меня роутер старый, третья прошивка уже не встаёт. Проверить негде, да я на даче сейчас особо и не горю. С IPv6 изначально проблемы были https://forum.keenetic.net/topic/6593-policy-based-routing-для-ipv6/ , но код я оставил как PoC идей Валдикса и Болвана, к тому же я его старался сделать  совместимым не только с кинетиками.

 

Share this post


Link to post
Share on other sites
49 minutes ago, Михаил Лукьянов said:

Отключите поддержку IPv6 (закомментируйте блок):


	if [ -e /proc/net/if_inet6 ] ; then
		! ip -6 route add local default dev lo table 99
		! ip -6 rule add from all fwmark 0x9 lookup 99
		ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
		ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
		ip6tables -t mangle -N DIVERT
		ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
		ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
		ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
	fi

Это нужно сделать и для секции start и для секции stop. У меня роутер старый, третья прошивка уже не встаёт. Проверить негде, да я на даче сейчас особо и не горю. С IPv6 изначально проблемы были https://forum.keenetic.net/topic/6593-policy-based-routing-для-ipv6/ , но код я оставил как PoC идей Валдикса и Болвана, к тому же я его старался сделать  совместимым не только с кинетиками.

 

Закомментировал всё, что связано с ipv6...обход не работает и стала выскакивать заглушка..

#!/bin/sh
# For systemd :
#  install : /usr/lib/lsb/install_initd zapret
#  remove : /usr/lib/lsb/remove_initd zapret
### BEGIN INIT INFO
# Provides:        zapret
# Required-Start:    $local_fs $network
# Required-Stop:    $local_fs $network
# Default-Start:    2 3 4 5
# Default-Stop:        0 1 6
### END INIT INFO

# CHOOSE ACTION PERFORMED ON PACKETS: FRAGMENTATION (NFQWS) OR MODIFICATION (TPWS).
#ACTION=fragmentation
ACTION=modification
#ACTION=combined

# CHOSE NETWORK INTERFACE BEHIND NAT
SLAVE_ETH=br0


IPSET_CR=/opt/zapret/ipset/create_ipset.sh
NAME=zapret
DESC=anti-zapret

QNUM=200
TPPORT=1188
ROUTE_TABLE_NUM=100
NFQWS=/opt/zapret/binaries/mips32r1-lsb/nfqws
TPWS=/opt/zapret/binaries/mips32r1-lsb/tpws
TPWS_USER=nobody
#FILL THE ADRESS OF BLACKHOLE PAGE
BLACKHOLE=blackhole.beeline.ru
BLACKHOLE_REG="|0D0A|Location: http://$BLACKHOLE"

PIDFILE=/var/run/$NAME.pid

set -e

case "$1" in
  start)
        if lsmod | grep "iptable_raw " &> /dev/null ;  then
         echo "iptable_raw.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/iptable_raw.ko &> /dev/null; then
          echo "iptable_raw.ko loaded"
         else
          echo "Cannot find iptable_raw.ko kernel module, aborting"
          exit 1
         fi
        fi
    if lsmod | grep "xt_string " &> /dev/null ;  then
         echo "xt_string.ko is already loaded"
        else
         if insmod /lib/modules/$(uname -r)/xt_string.ko &> /dev/null; then
          echo "xt_string.ko loaded"
         else
          echo "Cannot find xt_string.ko kernel module, aborting"
          exit 1
         fi
        fi
        if ($NFQWS 2> /dev/null| grep "wsize") &> /dev/null ; then
         echo "nfqws is installed"
        else
         echo "nfqws is not installed, aborting"
         exit 1
        fi
        if ($TPWS --test 2> /dev/null| grep "maxconn") &> /dev/null ; then
         echo "tpws is installed"
        else
         echo "tpws is not installed, aborting"
         exit 1
        fi
    echo "Restoring ipset"
    #($IPSET_CR)
    if !(ipset list -n zapret > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret.ipset
    fi
    if !(ipset list -n zapret6 > /dev/null) ; then
     ipset restore -f /opt/zapret/ipset/zapret6.ipset
    fi
    echo "Adding iptables rule"
    case "${ACTION}" in
        fragmentation)
        iptables -t raw -C PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200 2>/dev/null ||
         iptables -t raw -I PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
        iptables -t raw -C PREROUTING -p tcp --sports 80,443 --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 -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
        #iptables -t nat -C PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888 2>/dev/null ||
        #         iptables -t nat -I PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
        DAEMON=$NFQWS
        DAEMON_OPTS="--qnum=$QNUM --wsize=5"
        ;;
        modification)
        sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
    #if [ -e /proc/net/if_inet6 ] ; then
       #! ip -6 route add local default dev lo table 99
          #! ip -6 rule add from all fwmark 0x9 lookup 99
      #ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
       #ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
      #ip6tables -t mangle -N DIVERT
      #ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
      #ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || #ip6tables -t mangle -I DIVERT -j ACCEPT
      #ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
    #fi
    iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
    iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
     iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
        DAEMON=$TPWS
        DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
        ;;
    combined)
  sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=1
  #if [ -e /proc/net/if_inet6 ] ; then
    #! ip -6 route add local default dev lo table 99
    #! ip -6 rule add from all fwmark 0x9 lookup 99
    #ip6tables -t mangle -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null ||
     #ip6tables -t mangle -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1
    #ip6tables -t mangle -N DIVERT
    #ip6tables -t mangle -C DIVERT -j MARK --set-mark 9 2>/dev/null || #ip6tables -t mangle -A DIVERT -j MARK --set-mark 9
    #ip6tables -t mangle -C DIVERT -j ACCEPT 2>/dev/null || ip6tables -t mangle -I DIVERT -j ACCEPT
    #ip6tables -t mangle -C PREROUTING -p tcp -m socket  -j DIVERT 2>/dev/null || #ip6tables -t mangle -I PREROUTING -p tcp -m socket  -j DIVERT
  #fi
  iptables -t raw -C PREROUTING -p tcp --sports 443 --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 -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
  iptables -t nat -C PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  iptables -t nat -C OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null ||
   iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT
  $NFQWS --daemon --qnum=$QNUM --wsize=5
  DAEMON=$TPWS
  DAEMON_OPTS="--port=$TPPORT --user=$TPWS_USER  --methodeol"
  ;;
    esac

    echo -n "Starting $DESC: "
    start-stop-daemon -S -q -p $PIDFILE -b -m -x $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  stop)
    echo "Saving ipset"
    ipset save zapret -f /opt/zapret/ipset/zapret.ipset
  if [ -e /proc/net/if_inet6 ] ; then
       ipset save zapret6 -f /opt/zapret/ipset/zapret6.ipset
  fi
    echo "Deleting iptables rule"

    case "${ACTION}" in
       fragmentation)
          iptables -t raw -D PREROUTING -p tcp --sport 80 -m string --hex-string "$BLACKHOLE_REG" --algo bm -j DROP --from 40 --to 200
          iptables -t raw -D PREROUTING -m multiport -p tcp --sports 80,443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
          #iptables -t nat -D PREROUTING -p tcp --dport 443 -m set --match-set zapret dst -j REDIRECT --to-port 8888
          DAEMON=$NFQWS
        ;;
        modification)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      #if [ -e /proc/net/if_inet6 ] ; then
        #! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        #! ip6tables -t mangle -F DIVERT 2>/dev/null
        #! ip6tables -t mangle -X DIVERT 2>/dev/null
        #! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        #! ip -6 rule del from all fwmark 0x9 2>/dev/null
        #! ip -6 route del local default dev lo table 99 2>/dev/null
      #fi
        DAEMON=$TPWS
        ;;
    combined)
      sysctl -w net.ipv4.conf.$SLAVE_ETH.route_localnet=0
      ! iptables -t raw -D PREROUTING -m multiport -p tcp --sports 443 --tcp-flags SYN,ACK SYN,ACK -m set --match-set zapret src -j NFQUEUE --queue-num $QNUM --queue-bypass
      ! iptables -t nat -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      ! iptables -t nat -D OUTPUT -p tcp --dport 80 -m owner ! --uid-owner $TPWS_USER -m set --match-set zapret dst -j DNAT --to 127.0.0.1:$TPPORT 2>/dev/null
      if [ -e /proc/net/if_inet6 ] ; then
        #! ip6tables -t mangle -D PREROUTING -p tcp -m socket -j DIVERT 2>/dev/null
        #! ip6tables -t mangle -F DIVERT 2>/dev/null
        #! ip6tables -t mangle -X DIVERT 2>/dev/null
        #! ip6tables -t mangle -D PREROUTING -p tcp --dport 80 -i $SLAVE_ETH -m set --match-set zapret6 dst -j TPROXY --tproxy-mark 0x9/0x9 --on-port $TPPORT --on-ip ::1 2>/dev/null
        #! ip -6 rule del from all fwmark 0x9 2>/dev/null
        #! ip -6 route del local default dev lo table 99 2>/dev/null
      #fi
      #ip -6 route flush table 99
      killall nfqws
    DAEMON=$TPWS
  ;;
    esac

    echo -n "Stopping $DESC: "
    start-stop-daemon  -K -q -p $PIDFILE -x $DAEMON
    echo "$NAME."
    ;;
  *)
    N=/etc/init.d/$NAME
    echo "Usage: $N {start|stop}" >&2
    exit 1
    ;;
esac

exit 0

 

Edited by biman

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...