Настройка zapret от bol-van на Keentic
@toxa70x4Разворачивание OPKG Entware я упущу.
Подключаем по SSH к роутеру, по умолчанию порт 222.
Устанавливаем пакеты:
opkg install coreutils-sort curl git-http grep gzip ipset iptables kmod_ndms nano xtables-addons_legacy
Переходим в tmp:
cd /opt/tmp
Скачиваем zapret:
git clone --depth=1 https://github.com/bol-van/zapret.git
Переходим в каталог zapret и выполняем скрипт:
cd zapret
./install_easy.sh
Дальше покажу скриншотами, наглядно:
--dpi-desync=fake,disorder2 --dpi-desync-ttl=3 --dpi-desync-fooling=badsum
Дальше везде жмем Enter и ничего не трогаем.
Удаляем ненужное.
cd
rm -rf /opt/tmp/zapret
Теперь сделаем, что бы запрет стартовал при запуски Keenetic.
ln -fs /opt/zapret/init.d/sysv/zapret /opt/etc/init.d/S90-zapret
Правим стартовый скрипт, добавляем PATH и WS_USER
nano /opt/zapret/init.d/sysv/zapret
PATH=/opt/sbin:/opt/bin:/opt/usr/sbin:/opt/usr/bin:/usr/sbin:/usr/bin:/sbin:/bin
WS_USER=nobody
Создаем небольшой скрипт, чтобы Keenetic не забывал правила.
nano /opt/etc/ndm/netfilter.d/000-zapret.sh
#!/bin/sh
[ "$type" == "ip6tables" ] && exit 0
[ "$table" != "mangle" ] && exit 0
/opt/zapret/init.d/sysv/zapret restart-fw
chmod +x /opt/etc/ndm/netfilter.d/000-zapret.sh
Переводим net.netfilter.nf_conntrack_checksum в 0.
nano /opt/etc/init.d/S00fix
#!/bin/sh
start() {
echo 0 > /proc/sys/net/netfilter/nf_conntrack_checksum
}
stop() {
echo 1 > /proc/sys/net/netfilter/nf_conntrack_checksum
}
case "$1" in
'start')
start
;;
'stop')
stop
;;
*)
stop
start
;;
esac
exit 0
chmod +x /opt/etc/init.d/S00fix
Ну вот и все. Перезагружаем и проверяем.
reboot
P.S.
Поправить конфиг zapret'а:
nano /opt/zapret/config
Внести некоторые домены в исключение:
nano /opt/zapret/ipset/zapret-hosts-user-exclude.txt
/opt/zapret/ipset/clear_lists.sh
/opt/zapret/ipset/get_config.sh
Можно clear и get в cron засунуть, предварительно поставив cron, на случай смены ip у домена.
opkg install cron
nano /opt/etc/cron.daily/zapret
#!/bin/sh
/opt/zapret/ipset/clear_lists.sh
/opt/zapret/ipset/get_config.sh
chmod +x /opt/etc/cron.daily/zapret
/opt/etc/init.d/S10cron restart