StressOzz 0a644a44a4 Update readme.md
Updated the readme to improve clarity and added new sections on ad blocking and terminal features.
2026-10-11 20:26:46 +05:00
2026-07-11 01:24:35 +05:00
2026-10-02 23:55:06 +05:00
2026-10-04 14:30:59 +05:00
2026-10-11 20:26:46 +05:00
2026-07-28 00:54:25 +05:00

Zapret Manager

Одна панель для обхода блокировок на роутере OpenWrt — Zapret, Steer, Forkozz, ByeTube, Mixomo, TG WS Proxy, AmneziaWG, DoH, блокировка рекламы и hosts в одном месте.

Stars Telegram StressKVN Views


StressKVN — умный VPN для стабильного доступа в любых условиях

  • ✅ Работает даже при жёсткой фильтрации и белых списках
  • 🌍 Умная маршрутизация: зарубежные ресурсы идут через VPN, российские — напрямую
  • 📶 Подходит для роутеров на OpenWrt: настраивается один раз и работает для всех устройств в сети
  • 🧩 Подключается в Zapret Manager
  • ▶️ YouTube без рекламы
  • ⚡ Высокая скорость и безлимитный трафик
  • 🎁 Бесплатный тест на 3 дня

👉 Подробнее: StressKVN на GitHub


Для Windows - используйте: https://github.com/StressOzz/ZapretOzz


image

📖 Содержание


⚡ О проекте

Zapret Manager — это приложение для LuCI и отдельный веб-интерфейс, которые превращают роутер на OpenWrt в «комбайн» обхода блокировок. Вместо десятка разрозненных скриптов, пакетов и конфигов — одна панель, где каждый инструмент ставится, настраивается, проверяется и удаляется в пару кликов.

Панель умеет:

  • 🛡️ обходить DPI локально — без внешних серверов: Zapret (nfqws), Zapret2, ByeDPI (ByeTube);
  • 🔀 пускать выбранные сервисы через туннель — бесплатный Cloudflare WARP, свой VPN по подписке или свой сервер (Steer, Forkozz, Mixomo);
  • ✈️ ускорять Telegram — четыре вида TG WS Proxy;
  • 🔐 шифровать DNS для всей сети — DNS over HTTPS;
  • 🚫 блокировать рекламу и трекеры на всех устройствах — списки HaGeZi прямо в dnsmasq, без отдельных программ на телефонах и ПК;
  • 🧰 обслуживать роутер — системный отчёт, время и часовой пояс, зеркала пакетов, Flow Offloading fix, командная строка в браузере и многое другое.

Всё, что панель скачивает, берётся из официальных источников — GitHub проектов-авторов и репозиториев OpenWrt. Долгие операции идут в фоне на самом роутере: вкладку можно закрыть, а ход работы виден в окне вывода, когда вы вернётесь.


💻 Установка

Подключитесь к роутеру по SSH и выполните:

sh <(wget -qO - https://raw.githubusercontent.com/StressOzz/Zapret-Manager/refs/heads/main/ZapretManager_LuCI.sh)

Установщик:

  1. Останавливает прошлую версию панели (если в ней шла операция — попросит дождаться её окончания).
  2. Копирует бэкенд, rpcd-плагин, ACL, пункт меню LuCI и страницы.
  3. Ставит curl, unzip и uhttpd-mod-ubus (нужен для Web UI), если их нет.
  4. Поднимает отдельный экземпляр uhttpd на порту 7788 для Web UI.
  5. Добавляет сторожа в cron и команду zms для консольной версии Zapret Manager.

В конце в консоли будет адрес Web UI, например http://192.168.1.1:7788

Important

для работы некоторых стратегий, в терминале Windows необходимо один раз выполнить:

netsh int tcp set global timestamps=enabled

для пользователей Linux:

sysctl -w net.ipv4.tcp_timestamps=1

Note

Обновление. Панель сама проверяет новую версию и показывает баннер на дашборде. Кнопка «Обновить панель» скачивает установщик, проверяет его целостность (заголовок, номер версии, синтаксис sh -n) и только потом ставит. Настройки всех компонентов при обновлении сохраняются.

Tip

Консольная версия: команда zms запускает Zapret-Manager.sh прямо в терминале.

Note

Если Вам нужна версия, только для SSH - readme_ssh.md

sh <(wget -qO - 'https://raw.githubusercontent.com/StressOzz/Zapret-Manager/main/Zapret-Manager.sh')

Требования

Что Зачем
OpenWrt с firewall4 / nftables на этом построены все правила обхода
opkg (24.10 и старше) или apk (25.12 и новее) панель работает с обоими менеджерами
~15 МБ свободного флеша для Forkozz + sing-box; расширенный sing-box — ~40 МБ
~60 МБ свободной ОЗУ для блокировки рекламы: список хранится в памяти dnsmasq
aarch64_cortex-a53 только для Zapret2
OpenWrt 24.10+ для Forkozz и ByeTube (hev-socks5-tunnel в фидах)
ip-full для ByeTube (fwmark с маской)

🖥️ Два интерфейса: LuCI и Web UI

LuCI

Пункт меню Службы → Zapret Manager, 14 страниц: Дашборд, Zapret, Zapret2, Steer, Forkozz, Hosts, Блокировка рекламы, DNS over HTTPS, AmneziaWG, Терминал, TG WS Proxy, Mixomo, ByeTube, Система. Работает как обычное приложение LuCI.

Web UI на порту 7788

Самостоятельная панель, которая не требует открывать LuCI:

  • 🔑 вход по логину и паролю LuCI (через session.login ubus), с флажком «Запомнить на этом устройстве»;
  • 🎨 8 тем оформления: Светлая, Лёгкая, Тёмная, Контур, Бенто, Минимал, Ретро 98, Объём 3D. Выбранная тема сохраняется на роутере (/www/zm/theme.txt) и подхватывается на любом устройстве;
  • 📱 адаптивная вёрстка: на телефоне меню выезжает сбоку;
  • 🟢 цветные точки у разделов в меню: зелёная — работает, жёлтая — частично, красная — не работает;
  • 📊 в боковой панели — модель роутера, версия OpenWrt, температура и нагрузка ЦП, ОЗУ, флеш;
  • 🔒 сервер слушает только локальную сеть (rfc1918_filter), а при истечении сессии панель сама попросит войти снова.

Страницы LuCI и Web UI — один и тот же код: Web UI загружает те же модули и подменяет только «обвязку» LuCI. Что умеет одна, то умеет и другая.


🧩 Разбор разделов

📊 Дашборд

Сводка всего, что стоит на роутере.

  • Компоненты — статус каждого инструмента: Zapret, Zapret2, Steer (и через что идут сервисы — WARP, свой WARP или VPN), Forkozz, ByeTube, TG WS Proxy, Mixomo, DoH, AmneziaWG (сколько туннелей работает), домены в hosts, блокировка рекламы, терминал.
  • Система — модель, архитектура, платформа, версия OpenWrt, время работы, наличие интернета с задержкой (пинг ya.ru / vk.ru), шкалы температуры и нагрузки ЦП, ОЗУ, флеша и /tmp — обновляются каждые 5 секунд.
  • Версии — установленная и последняя версия каждого пакета: Zapret Manager, Zapret, Mihomo, MagiTrickle, hev-socks5-tunnel, TG WS Proxy, sTGWS, ядро steer, Forkozz, sing-box, Zapret2, ByeDPI, AmneziaWG, https-dns-proxy.
  • Подсказки-баннеры: «Включён Flow Offloading, а FIX не применён», «Роутер работает по IPv6, а в Zapret IPv6 выключен» — с кнопкой «Применить»; «Желательно перезагрузить роутер» — после удаления компонентов.

🛡️ Zapret

Локальный обход DPI на базе zapret-openwrt. Самый большой раздел — 7 вкладок.

Установка и управление
  • Установить и настроить — скачивает последний релиз zapret-openwrt под архитектуру роутера (до 5 попыток, проверка архива через unzip -t), ставит пакеты, загружает список исключений и дополнительные fake-файлы, затем применяет базовую стратегию v7, игровую Gv1 и полезные блоки в hosts.
  • Обновить до … — появляется, если на GitHub вышла новая версия.
  • Запустить / Остановить / Удалить — удаление полное: пакеты, /opt/zapret, конфиг, init-скрипты, задания cron, таблица nftables.
  • Если версия на GitHub не определилась, ставится проверенная фиксированная.
Стратегии
  • v1 – v10 — десять встроенных стратегий (split2, multisplit, hostfakesplit, fake с разным fooling и паттернами).
  • Flowseal — стратегии из zapret-discord-youtube: панель скачивает архив, разбирает .bat-файлы и переводит их пути и плейсхолдеры (%BIN%, %LISTS%, %GameFilter%) в формат OpenWrt.
  • При смене стратегии сохраняются YouTube-, Discord- и игровая части, QUIC для YouTube и дополнения.
  • Дополнения к стратегии:
    • Обход по спискам РКН — основной профиль работает только для сайтов из списка zapret4rocket и вашего списка хостов, а не «всё, кроме исключений». Помогает, если стратегия мешает обычным сайтам.
    • Блок --wssize 1:6 — отдельный профиль, уменьшающий окно TCP в начале HTTPS-соединения.
  • Редактор текущей стратегии — ручная правка блока NFQWS_OPT с проверкой (без одинарных кавычек, хотя бы один параметр --…).
  • «Не изменять стратегию» (#nochange) — панель больше не трогает стратегию: ни выбор стратегий, ни YouTube/Discord/игры, ни тест, ни переустановка Zapret.
Тест стратегий и автоподбор

Тест идёт в фоне, после него настройки Zapret возвращаются как были.

Режим Что делает
Текущая стратегия проверяет то, что стоит сейчас, ничего не меняя: заблокированные сайты и YouTube
По домену все стратегии v и Flowseal на ваших сайтах (до 30 доменов)
v1–v10 / Flowseal / v + Flowseal перебор стратегий по списку заблокированных сайтов
YouTube перебор стратегий Yv на адресах YouTube
Свои стратегии ваш список (/root/custom_test.txt, совместим с консольной версией) — на сайтах или на YouTube
  • Сначала делается контрольный замер без Zapret, затем каждая стратегия.
  • Список проверяемых сайтов: госуслуги, налоговая, rutube, торрент-трекеры, Discord, X, Instagram, GitHub и набор из dpi-checkers.
  • Результаты: сортировка по числу открывшихся сайтов, цветная шкала (зелёный — всё открылось, жёлтый — лучше, чем без Zapret, красный — не лучше), по клику — какие сайты открылись, а какие нет, кнопка «Применить» у каждой стратегии.
  • Автоподбор по расписанию — каждый день в выбранное время (01:00–06:00 или своё) роутер перебирает v / Flowseal / v + Flowseal и сравнивает лучшую с текущей. Новая стратегия ставится только если открывает больше сайтов. YouTube, Discord, игры, QUIC и дополнения сохраняются; при #nochange автоподбор ничего не меняет. Показывается итог последнего запуска.
YouTube
  • Стратегии Yv (список скачивается из репозитория Zapret Manager), меняется только YouTube-часть.
  • Выключить — убрать YouTube-часть совсем (например, если YouTube идёт через ByeTube или Steer).
  • QUIC для YouTube — отдельный блок для UDP 443: браузеры и приложение YouTube часто грузят видео по QUIC.
Игры
  • Игровые стратегии Gv1 – Gv4 с нужными диапазонами портов TCP/UDP.
  • Xtreme режим — обход на портах 80, 88, 443–65535 (для проверки игр, может мешать другим приложениям).
  • Выбор fake-файла (stun, quic_initial разных сайтов, tls_clienthello).
Discord
  • Стратегии Dv1 – Dv17 для discord.media, блок голоса discord,stun, выбор fake-файла.
  • Скрипты custom.d из примеров zapret: 50-stun4all (STUN на всех портах — голос и видео в Discord, Telegram, WhatsApp), 50-quic4all, 50-discord-media, 50-discord.
  • Финские IP для Discord — 200 записей finland10000–10199.discord.media в hosts, если голос не подключается.
Редактор списков и исключение устройств
  • Три списка: исключения (Zapret их не трогает), пользовательские хосты, Google (для YouTube и QUIC). Каждый — со счётчиком записей, кнопкой «Перечитать файл» и переключателем «Не изменять список» (#nochange).
  • Список исключений можно восстановить из репозитория и обновлять автоматически каждые 2 / 4 / 6 / 12 часов.
  • Исключение устройств — выбранные устройства (по IP из DHCP и ARP или вручную) ходят мимо Zapret.

⚡ Zapret2

Установка и управление Zapret2 из пакетов Routerich: скачивание, установка, стратегия, список исключений, Discord-скрипт; запуск, остановка, полное удаление.

Important

Только для архитектуры aarch64_cortex-a53. Несовместим с основным Zapret — панель не даст поставить оба (кроме экспертного режима).


🛣️ Steer

Выбранные сервисы идут через туннель — бесплатный Cloudflare WARP или ваш VPN. Остальной интернет — напрямую. Маршрутизацию ведёт ядро steer 2.x средствами ядра Linux: nftables, таблицы маршрутизации, домены через fake-IP. Панель пишет для ядра спеку (/etc/steer/spec.json), проверяет её (steer ctl check) и применяет без обрыва соединений — ядро трогает только изменившееся.

Вкладка «Сервисы»
  • Сервисы: YouTube, Discord, Instagram, WhatsApp, X, GitHub, Telegram, TikTok, HDRezka, Google Meet, Gemini, Google Play, Roblox, Cloudflare, CloudFront, DigitalOcean, Hetzner, OVH.
  • Категории: геоблок, заблокированные сайты, новости, аниме, 18+, хостинги и CDN, «Всё сразу» (Russia inside), сайты РФ из-за рубежа, блокировки Украины.
  • Дополнительные списки из каталога splify2-lists (itdoginfo/allow-domains, b4geoip и другие), сгруппированные по источнику. Каталог можно обновить, сменить на свой lists.json или выключить.
  • Свой список — домены (поддомены включаются сами) и IP/подсети.
  • «Скачивать списки через VPN» — если GitHub у провайдера не открывается.
  • Проверка — туннель каждого WARP (сервер Cloudflare, город, какая страна видна сайтам) + диагностика самого ядра steer.
  • «Куда пойдёт запрос» — введите домен или IP, и ядро покажет: через WARP, через VPN (и через какой узел) или напрямую, с подменным или настоящим адресом.
Вкладка «WARP»

Автоматический режим — три туннеля AmneziaWG в разных колониях Cloudflare, трафик идёт через самый быстрый живой:

  • ключи берутся у Cloudflare (ключ создаётся на роутере), при недоступности — у внешнего генератора, через реле или изнутри уже работающего туннеля;
  • разведка точек входа: перебор пулов адресов Cloudflare и портов (2408, 500, 1701, 4500, а если они закрыты — ещё 50 запасных);
  • отбраковка российских колоний (через них блокировки не снимаются) и точек, где DPI обрывает туннель (трафик пошёл и оборвался);
  • если ничего не подходит — перебор масок первого пакета I1 (QUIC, DNS, STUN, SIP, iCloud-DNS);
  • для каждого туннеля видно: сервер, город, страну для сайтов, точку входа, время последней связи и трафик.

Свой конфиг — один туннель по вашему конфигу WireGuard / AmneziaWG (zmwarp4). Конфиг хранится отдельно (/etc/zm-warp-own.conf) и переживает даже переустановку Steer. Переключаться между режимами можно в один клик — прежние туннели сохраняются.

Кнопки ремонта: «Перезапустить туннели», «Сменить точки входа», «Новые ключи», а для одного упавшего туннеля — «Переделать» или «Новые ключи» только для него.

Автоподбор мёртвых туннелей — раз в 10 минут проверяет туннели и неработающему (дольше 30 мин / 1 ч / 3 ч) подбирает новую точку входа, с третьей попытки — с новыми ключами, до 4 попыток. Работающие не трогает, без интернета не запускается. История последних подборов видна в карточке.

Автоперезапуск — каждые 2 / 6 / 12 часов или ежедневно в заданный час.

Вкладка «VPN»
  • Ссылка на подписку (https://…) или свои серверы: VLESS, Hysteria2, Trojan, Shadowsocks, VMess, SOCKS, HTTP. Нужные модули ядра (steer-vless, steer-hysteria2, steer-proxy) ставятся сами.
  • Шапка подписки: название, трафик и квота, срок действия.
  • Выбор узла или «Авто» (первый рабочий). Если выбранный узел не ответил — панель сама возвращает прежний выбор, а не оставляет сервисы без туннеля.
  • Проверка задержки — TCP-пинг до каждого узла (как «TCP» в Happ), пачками; Hysteria2 проверяется через ядро. Сортировка по пингу.
  • Скрыть узлы — вручную или по «маркерам» (флаги стран, слова в названии); новые узлы с этим словом тоже скрываются.
  • Свои серверы — редактор ссылок: изменить, удалить, добавить по одной или пачкой.
  • Автообновление подписки — каждые 3 / 6 / 12 / 24 часа; если список не изменился и VPN работает — туннель не трогается.
  • Сторож VPN — если VPN перестал отвечать, Steer перезапускается; закреплённый мёртвый узел сменяется на автовыбор с уведомлением в панели.
  • Переключатель WARP ⇄ VPN — в карточке Steer, выбор узла сохраняется.

Note

Если стоит splify2, ядро steer настроено вручную или занято Podkop/Forkop — Steer не перезаписывает чужие правила и покажет, кто занял ядро.


🍴 Forkozz

Выбранные сервисы идут через ваш сервер, подписку или туннель на базе движка NetShift и sing-box. Всё ставится только с GitHub и из репозитория OpenWrt — без сторонних зеркал (старые зеркала Forkop панель сама убирает из фидов).

Секции

До 9 секций, каждая ведёт свои сервисы через своё подключение: например, YouTube — через сервер в Европе, а ChatGPT — через WARP. Секции проверяются по порядку: если сайт попал в две, сработает левая. Один сервис можно включить только в одной секции — панель подскажет, где он уже выбран.

Карточка каждой секции на главной: состояние, текущий сервер и задержка, подписка, что через неё идёт.

Подключение
  • Серверы — ссылки vless, vmess, trojan, ss, socks5, hysteria2; редактор ссылок с распознаванием имени и хоста.
  • Подписка — одна или до 10 ссылок, серверы собираются в общий список; интервал обновления.
  • Туннель — интерфейс WireGuard / AmneziaWG (например, WARP из Steer).
  • Дополнительно: формат подписки (авто / Xray JSON для Happ / sing-box), группы по флагу страны или по началу имени, отбор серверов по словам, User-Agent, отключение проверки сертификата; параметры автовыбора (интервал, допуск, адрес проверки); UDP поверх TCP; свой DNS для туннеля; локальный прокси HTTP/SOCKS5 для программ в сети; «узнавать настоящий IP сайтов».
  • Серверы — режим «Авто» или «Вручную», переключение одним кликом, TCP-пинг всех серверов с результатами по мере проверки, сортировка, скрытие серверов, трафик и срок подписки.
  • Сторож — если закреплённый вручную сервер перестал отвечать, Forkozz переключается на автовыбор и показывает, какой сервер упал.
Сервисы, исключения, устройства
  • Сервисы — тот же каталог, что в Steer, + свои домены, IP-подсети и внешние .lst-списки.
  • Исключения — сайты и адреса, которые всегда идут напрямую, мимо всех секций.
  • Устройства — «Всё через Forkozz» (ТВ, приставки) и «Мимо Forkozz».
  • Обновить списки сейчас — с отчётом в окне вывода: какой набор правил скачан, сколько адресов в файрволе, были ли ошибки.
Настройки
  • DNS: протокол DoH / DoT / UDP, до 8 серверов с автопереключением (раз в пару минут проверяет и уходит на следующий, возвращается, когда первый оживёт), кнопка «Подобрать лучшие» (замер всех серверов с роутера), Bootstrap DNS, «DNS через VPN», «Не пускать приложения в обход DNS роутера» (блок публичных DoH), TTL и EDNS Client Subnet.
  • Сеть: из каких сетей принимать трафик, через какой интерфейс выходить в интернет, перезапуск при переподключении WAN, IPv6, «не менять DNS роутера».
  • Прочее: отключение QUIC для выбранных сервисов, торренты и NTP напрямую, интервал обновления списков.
  • sing-box: облегчённый (sing-box-tiny), обычный или расширенный (sing-box-extended). Расширенный ставится сам, когда среди серверов или в подписке есть XHTTP или VMess. Если новый sing-box не заработал — возвращается прежний. Уровень журнала (по умолчанию выключен — меньше нагрузки на флеш).
  • Панель sing-box (YACD) — соединения и трафик в реальном времени, при желании — доступ из интернета по ключу.
Проверка и переход со старого Forkop
  • Проверка — служба, sing-box, перенаправление DNS, FakeIP, ответ сервера каждой секции, исключения.
  • «Куда пойдёт запрос» — повторяет правила sing-box для домена или IP и показывает: через какую секцию, напрямую, исключение или блок.
  • Трафик — скорость, всего, число соединений и память sing-box.
  • Переход с прежнего движка Forkop — одной кнопкой: подключения, секции, списки, свои домены, исключения, устройства и DNS переносятся автоматически, старый движок удаляется.

▶️ ByeTube

Обход блокировки только доменов YouTube через ByeDPI + hev-socks5-tunnel. Остальной трафик идёт напрямую. dnsmasq-full складывает адреса YouTube в наборы nftables, трафик к ним маркируется и уходит в туннель ytb0.

  • Статус — ByeDPI, hev-socks5-tunnel, интерфейс, маркировка, policy routing, DNS, firewall, число IP в наборах.
  • Настройки — QUIC: блокировать (рекомендуется) или через прокси; IPv6; порт SOCKS5.
  • Стратегия — 6 готовых стратегий или своя строка параметров ciadpi.
  • Тест стратегий — каждая стратегия проверяется во временном экземпляре ByeDPI на отдельном порту: основной сервис и трафик клиентов не затрагиваются. Свои списки стратегий и доменов для теста.
  • Домены — встроенный список YouTube (вкл/выкл) + свои домены.
  • В консоли: bytetube diag <IP|имя телефона> — разбор, куда реально уходят DNS-запросы и соединения устройства (поможет найти включённый «Частный DNS»).

🏹 TG WS Proxy

Четыре прокси для Telegram:

Вариант Порт Источник
Go (MTProto) 1443 spatiumstas/tg-ws-proxy-go
SOCKS5 2080 d0mhate/-tg-ws-proxy-Manager-go
Rust (MTProto) 2443 valnesfjord/tg-ws-proxy-rs
sTGWS — xyzmean/brb
  • Готовая ссылка tg:// для каждого запущенного прокси, кнопка «Скопировать» и QR-код для телефона.
  • Установка последней версии с GitHub; если под архитектуру нет сборки — ставится проверенная.
  • Удаление принудительное — даже если менеджер пакетов отказывается.
  • Rust-прокси, поставленный пакетом luci-app-tg-ws-proxy-rs, панель распознаёт и только показывает (порт, ключ и FakeTLS — из его настроек).
  • sTGWS: перезапуск и подбор нового домена.
  • Автоперезапуск для каждого прокси (1–12 ч) и сторож — упавший прокси запускается заново в течение 2 минут.

🧱 Mixomo

Связка Mihomo (прокси-ядро) + hev-socks5-tunnel (мост в туннель) + MagiTrickle (направляет в туннель только выбранные сайты). На основе Mixomo от Internet-Helper.

  • Mixomo — установка всех трёх программ под архитектуру роутера, сетевой интерфейс и зона файрвола, запуск/остановка/перезапуск, обновление.
  • Веб-панель Mihomo — MetaCubeXD (по умолчанию) или Zashboard, порт 9090.
  • Подписка — обновляет ссылку в существующем провайдере или создаёт готовую конфигурацию с отдельной маршрутизацией YouTube.
  • Исключение серверов из подписки — вручную или по фразам; панель пишет exclude-filter и сохраняет ваш собственный фильтр.
  • Автоперезапуск — каждые 2 / 6 часов или ежедневно в заданный час.
  • Конфигурация — редактор config.yaml; если Mihomo не запустился с новой конфигурацией, изменения откатываются.
  • MagiTrickle — готовые списки (Internet Helper, ITDog, старый Internet Helper) и встроенное окно управления группами и подписками.
  • WARP — генерация WARP.conf (с подбором точки входа) и интеграция в Mihomo как прокси-выход.

📝 Hosts

  • Готовые блоки для /etc/hosts: nalog.ru, ntc.party, Instagram/Facebook, lib.rus.ec, AI-сервисы (ChatGPT, Claude, Gemini, Grok, DeepL, Copilot, ElevenLabs, Windsurf и др.), Twitch, Telegram Web, Spotify (обычный и расширенный), rutor, rutracker, Supercell, GitHub и GitHub Raw, tapeop.dev, финские IP Discord. Отметьте нужные и нажмите «Сохранить и применить».
  • GeoHide RU / EU / US — полная замена hosts списком GeoHideDNS.
  • Восстановить hosts — вернуть чистый файл.
  • Редактор всего /etc/hosts (резервная копия — /etc/hosts.bak). Для очень больших файлов (например, GeoHide) редактор отключается, чтобы не перегружать роутер.

🚫 Блокировка рекламы

Реклама, трекеры и телеметрия отсекаются на уровне DNS — для всех устройств в сети сразу: телефонов, ТВ, приставок, ПК. Списки HaGeZi подключаются прямо к dnsmasq, отдельные приложения на устройствах не нужны.

  • Список на выбор: Light, Multi, Pro (по умолчанию), Pro++, Ultimate — от мягкого до самого строгого.
  • Дополнительно: TIF mini — защита от фишинга и вредоносных доменов; запрет чужих DoH — устройства не смогут обойти блокировку, уйдя на свой публичный DoH-сервер. DoH-серверы самого роутера (https-dns-proxy) не блокируются никогда.
  • Белый список — до 500 доменов, по одному в строке. Сразу заполнен тем, что ломать нельзя: переходы по рекламе в поиске Яндекса, ссылки из писем и приложений Яндекса, рассылки Mail.ru, партнёрские ссылки AliExpress. Лишнее (http://, путь, *.) панель отрезает сама.
  • Автообновление раз в сутки в 04:xx (минуту панель выбирает случайно, чтобы не грузить источник одновременно) и кнопка «Обновить сейчас». Свежие копии (младше 12 часов) повторно не качаются.
  • Безопасное подключение: список скачивается с GitHub, а при недоступности — через jsDelivr; в нём остаются только домены; перед применением конфиг проверяется dnsmasq --test. Если после перезапуска dnsmasq не отвечает в течение 30 секунд, прежнее состояние возвращается автоматически.
  • Память: панель проверяет свободную ОЗУ (нужно не меньше ~60 МБ) и показывает, сколько занимает dnsmasq со списком. Роутеру с малым объёмом памяти подойдёт Light и без защиты от фишинга.
  • После перезагрузки папки dnsmasq пустеют — сторож сам собирает список заново из копии на флеше.
  • «Выключить» — убирает список из dnsmasq одной кнопкой.

🔐 DNS over HTTPS

Шифрованный DNS для всей сети на базе https-dns-proxy.

  • 11 провайдеров: Google, Cloudflare, Quad9, XBOX, Comss, DNS-AI, Яндекс Семейный, Яндекс Безопасный, GeoHide RU / EU / US.
  • Bootstrap DNS — как у провайдера или свои адреса (до 6).
  • Перехват DNS устройств — «Авто» (все устройства принудительно получают DNS через DoH, даже с вручную прописанным DNS) или «Не перехватывать». Работает вместе со Steer.
  • Удаление полное — пакеты, настройки, правила перехвата; dnsmasq возвращается к прежним серверам.

Note

Если стоит Forkozz, DoH не нужен — Forkozz сам шифрует DNS.


🔒 AmneziaWG

WireGuard с маскировкой: провайдеру сложнее заметить и заблокировать туннель.

  • Установка — пакеты под точную версию и цель OpenWrt из сборок 2Grey/awg-openwrt (с запасными зеркалами). Если модуль ядра не загрузился, панель подробно объясняет почему: нет файла, модуль собран для другого ядра, не хватает модулей ядра.
  • Интерфейсы — список всех туннелей AmneziaWG (в том числе туннелей Steer) с состоянием, адресом, точкой входа, рукопожатием, трафиком и зоной firewall.
    • Проверить — внешний IP, сервер Cloudflare, страна, потери и задержка, предупреждение об обрывах DPI.
    • Перезапустить, включить/выключить, сменить или подобрать точку входа, новые ключи WARP, показать/изменить конфиг, удалить.
  • WARP.conf — сгенерировать (стандартная точка, с подбором, своя точка) или «С проверкой связи»: роутер получает ключи, перебирает точки входа и маски и записывает связку, через которую трафик реально идёт.
  • Создать интерфейс — из WARP.conf или своего .conf, с зоной firewall («доступ из сети») и опцией «весь трафик в туннель».

💻 Терминал

Командная строка роутера прямо в браузере — на базе ttyd, без отдельного SSH-клиента.

  • Установка в один клик — пакет ttyd из репозитория OpenWrt (около 1 МБ); терминал запускается сам и добавляется в автозапуск.
  • Безопасно по умолчанию: слушает порт 7681 только в домашней сети (@lan), вход — по логину и паролю роутера (/bin/login).
  • Встроен в панель — открывается внутри страницы LuCI или Web UI; в Web UI не сбрасывается при переходе в другой раздел. Если панель открыта по https, а терминал работает по http, он откроется в отдельной вкладке.
  • Кнопки: «Открыть в новой вкладке», «Перезапустить», «Удалить» (останавливает терминал и убирает ttyd вместе с настройками).

⚙️ Система

  • Блокировка QUIC (UDP 80/443 из LAN в WAN), IPv6 в Zapret, Fix для Flow Offloading (правка шаблона firewall4).
  • Системная информация — отчёт одним кликом: роутер, сеть, провайдер, связь IPv4/IPv6, лимит GitHub API, Flow Offloading, DoH, Forkozz, Zapret (версия, стратегия, порты), домены в hosts, пакеты, поставленные вручную, и доступность ~40 сайтов. Кнопка «Скопировать отчёт» — удобно для вопросов в сообществе.
  • Время на роутере — живые часы, автоопределение часового пояса (пять сервисов геолокации, выбирается пояс большинства) и синхронизация времени по NTP, а если провайдер закрыл NTP — по заголовкам Date крупных сайтов. Нужно для всех расписаний панели.
  • Проверка сети — IPv4 и IPv6 до google.com.
  • Зеркало OpenWrt — переключение источника пакетов с проверкой доступности и откатом на default при ошибке.
  • Удалить Zapret Manager — убирает только панель; всё, что ставилось через неё, остаётся и продолжает работать.

🔗 Совместимость компонентов

Некоторые инструменты перехватывают один и тот же трафик, поэтому панель не даёт поставить их вместе и показывает понятную причину:

Компонент Не ставится вместе с
Zapret Zapret2
Zapret2 Zapret
Steer Forkozz, splify2, чужая настройка ядра steer
Forkozz Steer, Mixomo, DoH, Podkop, PassWall, NextDNS
Mixomo Forkozz, ByeTube
ByeTube Mixomo
DoH Forkozz

Steer и ByeTube могут работать параллельно — панель напомнит пускать YouTube только через что-то одно.


🔧 Как это устроено

Файлы на роутере
Путь Что это
/opt/zapret-manager-luci/backend.sh бэкенд: вся логика панели
/opt/zapret-manager-luci/netshift.uc ucode-модуль Forkozz
/opt/zapret-manager-luci/state/ состояние панели (тема, кэши версий, автоподбор и т.д.)
/opt/zapret-manager-luci/state/adblock/ настройки, белый список и скачанные списки блокировки рекламы
zm-adblock.conf в папке настроек dnsmasq собранный список блокировки (живёт в ОЗУ, после перезагрузки восстанавливается сторожем)
/usr/libexec/rpcd/zapret-manager rpcd-плагин — объект zapret-manager в ubus
/usr/share/rpcd/acl.d/luci-app-zapret-manager.json права доступа
/usr/share/luci/menu.d/luci-app-zapret-manager.json пункт меню LuCI
/www/luci-static/resources/view/zapret-manager/ страницы LuCI
/www/zm/, /www/zm-webui.html Web UI
/tmp/zapret-manager-luci/ журналы и pid фоновых операций
/etc/zm-steer/, /etc/zm-awg/ данные Steer и AmneziaWG
Фоновые операции

Установка, удаление, тесты и другие долгие действия запускаются как фоновые задания с журналом. Панель опрашивает статус и показывает вывод в «терминале» с подсветкой шагов (✓, ✗, →). Если операция не отвечает дольше 2 минут, внизу появляется кнопка «Остановить все операции» — она завершает всё дерево процессов и откатывает незаконченное (например, возвращает прежнюю версию Forkozz).

Шаги с сетью и менеджером пакетов ограничены по времени, а если DNS роутера не отвечает, на время операции подставляются 1.1.1.1 и 9.9.9.9 — потом прежний DNS возвращается.

Сторож (cron, раз в 2 минуты)

backend.sh zm_watch:

  • поднимает rpcd, если он упал или завис (иначе пропадает вход в LuCI), и перезапускает его, если он держит старый список методов панели;
  • возвращает DNS роутера, если операция прервалась на полпути;
  • перезапускает Forkozz, если он включён, но не работает (с нарастающей паузой), чинит мёртвые серверы и переключает DNS;
  • проверяет VPN Steer и чинит его;
  • поднимает упавшие TG WS Proxy;
  • возвращает список блокировки рекламы в dnsmasq после перезагрузки (или скачивает заново, если копии нет);
  • переводит ядро steer 1.x на 2.x.
Принцип «#nochange» и большие тексты
  • Строка #nochange в стратегии или списке запрещает панели менять их — ни при установке, ни при обновлении, ни в тестах. Переключатели «Не изменять» ставят и снимают её сами.
  • uhttpd принимает в /ubus не больше 64 КБ за запрос, поэтому большие тексты (hosts, списки, конфиги) отправляются частями и собираются на роутере.
  • После обновления панель сама сбрасывает кэш браузера (сверка build.txt), чтобы не работать со старыми файлами.

❓ Частые проблемы

Страница пишет «Object not found» / «метод не найден»

rpcd ещё не подхватил плагин. Подождите минуту или выполните:

/etc/init.d/rpcd restart

Сторож делает это сам в течение 2 минут.

Web UI не открывается на порту 7788

Нужен пакет uhttpd-mod-ubus (установщик ставит его сам). Проверьте:

uci show uhttpd.zmweb
/etc/init.d/uhttpd restart

Web UI доступен только из локальной сети.

Через Steer / Forkozz сайт всё равно идёт напрямую
  1. Проверьте его в «Куда пойдёт запрос».
  2. Отключите на устройстве «Частный DNS» (Android) и «Безопасный DNS» в браузере — они идут мимо роутера.
  3. Очистите DNS-кэш или перезапустите браузер — устройство могло запомнить старый адрес.
Модуль AmneziaWG не загружается

Готовые модули собраны под официальные прошивки OpenWrt. На сторонних сборках ядро может отличаться — нужна официальная прошивка той же версии. Причину панель пишет в журнале установки.

После включения блокировки рекламы перестал открываться сайт или ссылка
  1. Добавьте его домен в белый список на странице «Блокировка рекламы» и примените.
  2. Если сайты не открываются совсем — нажмите «Выключить» и проверьте, пропала ли проблема: чаще причина в интернете или DNS, а не в списке.
  3. На роутере с малым объёмом ОЗУ выберите список полегче (Light) или отключите защиту от фишинга — при нехватке памяти панель сама откажется ставить тяжёлый список.
Терминал не открывается во встроенном окне

Панель открыта по https, а ttyd работает по http — браузер не разрешает встроить его. Нажмите «Открыть в новой вкладке» (адрес вида http://192.168.1.1:7681). Терминал доступен только из локальной сети.


🗑️ Удаление

  • Только панель — «Система → Удалить Zapret Manager». Компоненты останутся и продолжат работать.
  • Блокировка рекламы — кнопка «Выключить»: список убирается из dnsmasq.
  • Терминал — кнопка «Удалить»: останавливает ttyd и удаляет пакет с настройками.
  • Компоненты — кнопкой «Удалить» на странице каждого из них. Удаление полное: пакеты, настройки, правила файрвола и маршрутизации, задания cron. После удаления панель проверяет интернет и DNS роутера и при необходимости сама перезапускает сеть.

🤝 Благодарности

Zapret Manager собирает в одном месте работу этих проектов и их авторов:

Проект Автор
zapret, zapret2 bol-van
zapret-openwrt remittor
Zapret2 (пакеты) routerich
Стратегии Flowseal Flowseal
ByeDPI-OpenWrt DPITrickster
mihomo, metacubexd, meta-rules-dat MetaCubeX
zashboard Zephyruso
hev-socks5-tunnel heiher
MagiTrickle MagiTrickle
sTGWS, Steer, каталог списков xyzmean
tg-ws-proxy-go (MTProto) spatiumstas
tg-ws-proxy-go (SOCKS5) d0mhate
tg-ws-proxy-rs (Rust) valnesfjord
Mixomo, GeoHideDNS Internet-Helper
allow-domains itdoginfo
NetShift (основа Forkozz) yandexru45
sing-box SagerNet
sing-box-extended shtorm-7
ios_rule_script blackmatrix7
b4geoip DanielLavrushin
b4geoip-forkop Greeg0ry
domain-list-community v2fly
dpi-checkers hyperion-cs
awg-openwrt (сборки) 2Grey
dns-blocklists (списки рекламы) hagezi
ttyd (терминал) tsl0922
warpscout (разведка WARP) vernette
base-relay (реле регистрации WARP) nellimonix

И всем пользователям, кто помогает, тестирует и поддерживает проект ❤️


💬 Сообщество

Telegram — Zapret Manager · StressKVN — обход белых списков

Made with ❤️ by StressOzz for the OpenWrt community

S
Description
Zapret Manager LuCI/Web adaptation for NanoPi R3S FriendlyWrt 6.1.141 with pinned AWG 3.1 module; based on StressOzz/Zapret-Manager.
Readme
7.4 MiB
0 Stars 1 Watchers 0 Forks