Канон Шредингера (31 янв 2026)

Фантастический рассказ. О тульпах, людях и богах.

Установка и конфигурирование bol-van/zapret в linux

Больше
6 ч. 40 мин. назад - 6 ч. 30 мин. назад #1 от Aleksej
Скажу честно, петля затягивается. То, что работало вчера, сегодня уже может не работать. Именно потому ищем новые решения; как говорят шлюшки-айтишники Роспотребнадзора - "мне просто было интересно решить техническую проблему". Ок.

Тестировал на Leap OpenSUSE 15.6. Сделал ряд скриптов, значительно облегчающих работу с этим автономным средством противодействия DPI, выложу в ближайшее время на гитхабе. А пока - вот так, короткой строкой. Понеслось:

Code:
sudo zypper install -t pattern devel_basis sudo zypper install -y gcc make libmnl-devel zlib-devel libcap-devel libnetfilter_queue-devel libnfnetlink-devel


Дальше, опять же по-быстрому, делаем ряд симлинков:

Code:
sudo ln -s /usr/include/libmnl/libmnl/libmnl.h /usr/include/libmnl/libmnl.h sudo ln -s /usr/include/libnetfilter_queue/libnetfilter_queue/libnetfilter_queue.h            /usr/include/libnetfilter_queue/libnetfilter_queue.h sudo ln -s   /usr/include/libnfnetlink/libnfnetlink/libnfnetlink.h   /usr/include/libnfnetlink/libnfnetlink.h sudo ln -s   /usr/include/libnfnetlink/libnfnetlink/linux_nfnetlink.h   /usr/include/libnfnetlink/linux_nfnetlink.h sudo ln -s   /usr/include/libnfnetlink/libnfnetlink/linux_nfnetlink_compat.h   /usr/include/libnfnetlink/linux_nfnetlink_compat.h sudo ln -s   /usr/include/libnetfilter_queue/libnetfilter_queue/linux_nfnetlink_queue.h   /usr/include/libnetfilter_queue/linux_nfnetlink_queue.h

Теперь (всё работает до ребута только):

Code:
sudo modprobe nfnetlink_queue sudo modprobe nf_conntrack sudo modprobe nf_defrag_ipv6  # для IPv6, если используется sudo sysctl -w net.netfilter.nf_conntrack_tcp_be_liberal=1  # либеральный TCP-трекинг sudo sysctl -w net.netfilter.nf_conntrack_checksum=0  # badsum в desync sudo nft add table inet zapret sudo nft add chain inet zapret output '{type filter hook output priority 0; }' sudo nft add rule inet zapret output \     meta mark and 0x40000000 == 0 \     tcp dport { 80, 443 } \     ct original packets 1-6 \     counter queue num 100 bypass


Далее.

Code:
git clone https://github.com/bol-van/zapret.git cd zapret ./install_easy.sh

Если были неудачные попытки инсталляции, оптимально:

Code:
make clean

Проверяем:

Code:
sudo nft -v

у меня, таким образом, nftables v0.9.8 (E.D.S.).
Тестируем; после ввода команды второй раз счетчики должны меняться:

Code:
sudo nft list table inet zapret curl -4 https://rutracker.org sudo nft list table inet zapret


Теперь запускаем скрипт тестирования стратегий обхода блокировок (лежит в корне каталога zapret), предварительно сделав исполняемым:

Code:
chmod +x blockcheck.sh ./blockcheck.sh


Скрипт, в качестве итога работы, выведет в консоль несколько стратегий, в результате применения которых ему удалось через curl достучаться до rutracker.org (по умолчанию). Выбираем любую и запускаем софтину, например:

Code:
sudo ~/zapret/nfq/nfqws --qnum=100 --dpi-desync=fake --dpi-desync-ttl=4 --debug=1

Выход как-то так:

Code:
sudo kill $(cat /var/run/nfqws.pid)

Но, повторюсь, неудобно и хлопотно. Действительно заработал nfqws у меня лишь только после того, как удалось автоматизировать рутину, чтобы не тратить на нее время. Об этом - в самое ближайшее время.
Последнее редактирование: 6 ч. 30 мин. назад пользователем Aleksej. Причина: Небольшие исправления

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 3
Работает на Kunena форум