Skip to content

Instantly share code, notes, and snippets.

@pwd491
Last active July 3, 2025 17:05
Show Gist options
  • Save pwd491/a23b5a6f32c5e9f523f2ce0bd8f952ed to your computer and use it in GitHub Desktop.
Save pwd491/a23b5a6f32c5e9f523f2ce0bd8f952ed to your computer and use it in GitHub Desktop.
OpenWRT manual for zapret

ДАННАЯ ИНСТРУКЦИЯ УСТАРЕЛА. ZAPRET СИЛЬНО ВИДОИЗМЕНИЛСЯ!!!

Warning

С 13.09.2024 R0STELEK0M начал бороться с некоторыми стратегиями обхода.

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

Как обновить zapret?

Если у вас уже склонирован репозиторий, то переходим в каталог: cd /overlay/zapret (или туда, куда вы изначально склонировали репу) и вписываем git pull , репозиторий скачает изменения.

Если вы удалили репозиторий, то можете склонировать его заново (пункт 2).

Далее вызываем ./install_easy.sh и соглашаемся на пункте do you want to delete all files there and copy this version (default : N) (Y/N) ?. Далее всё можете прокликать с значениями по умолчанию. Затем, обновите конфигируционный файл и файл фильтрации. (пункт 6 и 6.1)

Для того, чтобы перезапустить zapret /etc/init.d/zapret restart

Требования:

  • Прошивка OpenWRT от 15 до 22 версии на роутере TP-LINK.
  • Настроенный интернет.
  • Минимум 32MB RAM и 64MB FLASH. либо используйте overlay.
  1. Выполняем обновление и установку первоначальных модулей
opkg update
opkg install iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptables-mod-ipopt iptables-mod-conntrack-extra ipset curl ip6tables-mod-nat git-http
mkdir /opt
cd /overlay
git clone --depth 1 https://github.com/bol-van/zapret
cd zapret
./install_bin.sh
./install_prereq.sh
./install_easy.sh
  1. Создаём ссылку на скрипт запуска и на событие поднятия интерфейса:
ln -fs /opt/zapret/init.d/openwrt/zapret /etc/init.d
ln -fs /opt/zapret/init.d/openwrt/90-zapret /etc/hotplug.d/iface
  1. Создаём конфиг и листы по умолчанию
cp /opt/zapret/config.default /opt/zapret/config

cp /opt/zapret/ipset/zapret-hosts-user-exclude.txt.default /opt/zapret/ipset/zapret-hosts-user-exclude.txt

echo nonexistent.domain >/opt/zapret/ipset/zapret-hosts-user.txt

touch /opt/zapret/ipset/zapret-hosts-user-ipban.txt
  1. Пропишем ютубовские домены для фильтрации.
vi /opt/zapret/ipset/zapret-hosts-user.txt

И добавляем эти строки: (обновлено 26.08.2024)

youtube.com
youtu.be
ggpht.com
ytimg.com
i.ytimg.com
i9.ytimg.com
yt3.ggpht.com
l.google.com
play.google.com
youtubei.googleapis.com
wide-youtube.l.google.com
nhacmp3youtube.com
googleusercontent.com
googleapis.com
googlevideo.com
youtubei.googleapis.com
1e100.net

6.1. Обновим конфиг (обновлён 16.09.2024)

vi /opt/zapret/config
MODE=nfqws
MODE_HTTP=1
MODE_HTTP_KEEPALIVE=0
MODE_HTTPS=1
MODE_QUIC=1
MODE_FILTER=hostlist

NFQWS_OPT_DESYNC="--dpi-desync=fake,split2 --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin --dpi-desync-fooling=badsum"
#NFQWS_OPT_DESYNC_HTTP=""
#NFQWS_OPT_DESYNC_HTTPS=""
#NFQWS_OPT_DESYNC_HTTP6=""
#NFQWS_OPT_DESYNC_HTTPS6=""
#NFQWS_OPT_DESYNC_QUIC="--dpi-desync=fake --dpi-desync-repeats=6"
#NFQWS_OPT_DESYNC_QUIC6=""
  1. Обновим листы
crontab -e
Вставляем строку:
0 12 */2 * * /opt/zapret/ipset/get_config.sh
  1. Включаем автозапуск и запускаем:
/etc/init.d/zapret enable
/etc/init.d/zapret start
  1. Настройка firewall Создать ссылку на firewall include:
ln -fs /opt/zapret/init.d/openwrt/firewall.zapret /etc/firewall.zapret

Проверить была ли создана ранее запись о firewall include :

uci show firewall | grep firewall.zapret

Если firewall.zapret нет, значит добавить :

uci add firewall include
uci set firewall.@include[-1].path="/etc/firewall.zapret"
uci set firewall.@include[-1].reload="1"
uci commit firewall

Проверить не включен ли flow offload :

uci show firewall.@defaults[0]

Если flow_offloading=1 или flow_offloading_hw=1 ,

uci set firewall.@defaults[0].flow_offloading=0
uci set firewall.@defaults[0].flow_offloading_hw=0
uci commit firewall

Перезапустить фаервол :

fw3 restart
@ostapkob
Copy link

На телефоне работает на телике постоянно пытается запуститься

@pwd491
Copy link
Author

pwd491 commented Sep 22, 2024

На телефоне работает на телике постоянно пытается запуститься

NFQWS_OPT_DESYNC="--dpi-desync=fake,disorder2 --dpi-desync-ttl=0 --dpi-desync-ttl6=0 --dpi-desync-fooling=md5sig,badseq --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin"
NFQWS_OPT_DESYNC_QUIC="--dpi-desync=fake --dpi-desync-repeats=6"

@AlexLas84
Copy link

перестало работать и на телефоне и на компе и на телевизоре что можно сделать?

@pwd491
Copy link
Author

pwd491 commented Oct 12, 2024

перестало работать и на телефоне и на компе и на телевизоре что можно сделать?

Поищите новые стратегии обхода здесь bol-van/zapret#200

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment