Files
Zapret-Manager/README (2) (1).md
T
2026-10-04 14:30:30 +05:00

51 KiB
Raw Blame History

⚡ 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;
  • 🧰 обслуживать роутер — системный отчёт, время и часовой пояс, зеркала пакетов, Flow Offloading fix и многое другое.

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


💻 Установка

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

sh <(wget -O - 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.

Note

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

Tip

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

Требования

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

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

LuCI

Пункт меню Службы → Zapret Manager, 12 страниц. Работает как обычное приложение 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

  • 16 готовых блоков для /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 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 («доступ из сети») и опцией «весь трафик в туннель».

⚙️ Система

  • Блокировка 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/ состояние панели (тема, кэши версий, автоподбор и т.д.)
/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;
  • переводит ядро 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. На сторонних сборках ядро может отличаться — нужна официальная прошивка той же версии. Причину панель пишет в журнале установки.


🗑️ Удаление

  • Только панель — «Система → Удалить Zapret Manager». Компоненты останутся и продолжат работать.
  • Компоненты — кнопкой «Удалить» на странице каждого из них. Удаление полное: пакеты, настройки, правила файрвола и маршрутизации, задания 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
warpscout (разведка WARP) vernette
base-relay (реле регистрации WARP) nellimonix

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


💬 Сообщество

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

Made with ❤️ by StressOzz for the OpenWrt community