rm -f /tmp/pw.sh wget -qO /tmp/pw.sh "https://gist.githubusercontent.com/zonetx/15ca9f18ec2a44a24b034dca28375857/raw/install.sh?t=$(date +%s)" sh /tmp/pw.sh
Установка одной командой. Настройка — по чек-листу.
Гайд для роутеров на OpenWrt 25.12+ с apk. Ставит Passwall 2, тему Argon и базовые зависимости. Работает даже при активном DPI — через GitHub-зеркала.
Большая работа — и мини-просьба
Если этот гайд и скрипт установки сэкономят тебе пару часов — можешь поддержать проект криптодонатом. Три валюты на выбор. Любая сумма. Всегда добровольно.
Поддержать проект
Отсканируй QR с телефона или скопируй адрес. Сеть — TRON (TRC20). Низкие комиссии, быстрые переводы. Memo не требуется.
Поддержать проект
Адрес в формате bech32 (bc1…). Работает в любом современном Bitcoin-кошельке: BlueWallet, Electrum, Ledger, Trezor.
Поддержать проект
Отсканируй QR с телефона или скопируй адрес. Работает в любом Solana-кошельке: Phantom, Solflare, Backpack. Memo не требуется.
Рекомендуемый путь
Универсальный скрипт для всех поддерживаемых роутеров. Автоматически обходит DPI через GitHub-зеркала. Делает бэкап и откатывает изменения при сбое.
root, скопируй три строки ниже, нажми Enter. Через 5 минут открывай http://192.168.1.1 → Services → Passwall 2.ssh root@router до рабочего Passwall.Отдельно для одной модели
Архитектура aarch64_cortex-a53. Альтернативный скрипт и полный список команд — для случая, если универсальный способ не подошёл.
wget -qO- 'https://gist.githubusercontent.com/zonetx/dcdc6cb5126f2833aeae237ee8bde1b4/raw/setup.sh' | sh
apk update apk add luci luci-ssl unzip dnsmasq-full kmod-nft-socket kmod-nft-tproxy apk del dnsmasq uci set system.@system[0].zonename='Europe/Moscow' uci set system.@system[0].timezone='MSK-3' uci commit system uci set network.globals.packet_steering='2' uci commit network uci set firewall.@defaults[0].flow_offloading='1' uci set firewall.@defaults[0].flow_offloading_hw='0' uci commit firewall /etc/init.d/sysntpd enable /etc/init.d/sysntpd restart /etc/init.d/uhttpd enable /etc/init.d/uhttpd restart mkdir -p /tmp/passwall2 cd /tmp/passwall2 wget -O luci-app-passwall2.apk \ https://github.com/Openwrt-Passwall/openwrt-passwall2/releases/download/26.4.5-1/luci-app-passwall2-26.4.5-r1.apk wget -O passwall_packages_apk_aarch64_cortex-a53.zip \ https://github.com/Openwrt-Passwall/openwrt-passwall2/releases/download/26.4.5-1/passwall_packages_apk_aarch64_cortex-a53.zip mkdir -p /tmp/passwall2/pkgs unzip -o passwall_packages_apk_aarch64_cortex-a53.zip -d /tmp/passwall2/pkgs cd /tmp/passwall2/pkgs apk add --allow-untrusted ./*.apk cd /tmp/passwall2 apk add --allow-untrusted ./luci-app-passwall2.apk mkdir -p /tmp/argon cd /tmp/argon wget -O luci-theme-argon.apk \ https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.4.3/luci-theme-argon-2.4.3-r20250722.apk apk add --allow-untrusted ./luci-theme-argon.apk uci set luci.main.mediaurlbase='/luci-static/argon' uci commit luci /etc/init.d/network restart /etc/init.d/firewall restart /etc/init.d/dnsmasq restart /etc/init.d/uhttpd restart reboot
Быстрый маршрут после установки
Три шага, которые нужно сделать сразу — без них Passwall не включится.
Открой LuCI
Зайди на роутер по адресу http://192.168.1.1 и перейди в Services → Passwall 2. Включи Main switch в разделе Main.
Добавь свой прокси-узел
В разделе Node List нажми Add и вставь свой VLESS/Shadowsocks URI или заполни поля вручную. Без этого Passwall не знает, куда пускать трафик.
Проверь четыре вкладки
Пройдись по Main, Shunt Rule, DNS и Forwarding. Обязательные значения — ниже в разделе настроек.
Обязательные пункты настройки
Четыре вкладки в Passwall 2, которые точно нужно проверить. Нажми на скриншот, чтобы открыть его крупно.
Main — основной запуск
Main switch— включить- Проверить выбранный
Node Localhost ProxyиClient Proxy— включеныNode Socks Listen Port: 1070,Node Socks Bind Local— вкл.
Shunt Rule — маршрутизация
Domain Strategy: IPOnDemandDomain matcher: hybridDirect DNS result write to IPSet— вкл.Enable GeoIP Data Parsing— вкл.- ADSblock →
Blackhole, RUSSIA →Direct, AI → твой AI-прокси, Default → основной зарубежный узел
DNS — удалённый DNS
Remote DNS Protocol: DoHRemote DNS DoH: CloudflareRemote DNS Outbound: RemoteDirect Query StrategyиRemote Query Strategy: UseIPv4DNS Redirect— вкл.Domain Overrideможно оставить по умолчанию
Forwarding — трафик и TPROXY
Prefer firewall tools: NftablesTCP Proxy Way: TPROXYTCP Redir PortsиUDP Redir Ports: AllIPv6 TProxy— выкл., если не используешь IPv6Hijacking ICMP (PING)— обычно выкл.
Готовые правила маршрутизации
Блокировка рекламы и правильная маршрутизация российских ресурсов в обход прокси. Скопируй строки в соответствующие поля Passwall на вкладке Shunt Rule.
Реклама и трекеры
Весь трафик к известным рекламным доменам и трекерам попадает в Blackhole — просто обрывается.
Domain List
Российские ресурсы
Российские домены и IP не идут через прокси — это быстрее и не ломает логины к сайтам, требующим RU-геолокацию.
Domain List + IP List
Services → Passwall 2 → Shunt Rule. Для каждой категории (ADSblock, RUSSIA) есть отдельная страница со списками. Domain List — одно правило на строку. IP List — тоже одно на строку. После сохранения: Save & Apply, затем перезапустить Passwall.
Если что-то пошло не так
Самые частые проблемы при установке и их решения. Проверь сначала время на роутере и доступ к GitHub — это 80% случаев.
SSL error: connection EOF
Провайдер/DPI режет TLS-соединения к GitHub. Скрипт автоматически пробует зеркала, но если и они не работают — поменяй DNS на роутере.
uci set network.wan.peerdns=0 && uci add_list network.wan.dns='1.1.1.1'
certificate not yet valid
На свежем роутере время не синхронизировано, и HTTPS падает на проверке сертификатов. Запусти скрипт с флагом, который отключает проверку.
INSECURE_HTTPS=1 sh /tmp/pw.sh
Нужен свой GitHub-прокси
Если встроенные зеркала тоже не открываются — укажи свой прокси через переменную окружения.
GITHUB_PROXY_PREFIX=https://your-proxy/ sh /tmp/pw.sh
Скрипт старой версии
GitHub Gist кэширует raw-файлы ~5 минут. Если обновил gist и запускаешь ту же ссылку — добавь cache-busting параметр.
...raw/install.sh?t=$(date +%s)
Откатить неудачную установку
Скрипт автоматически откатывается при сбое. Но если LuCI работает странно — бэкап конфигов лежит в /root/passwall2-backup-*, восстанови вручную.
Мало места на роутере
Скрипт требует минимум 25 MB на /overlay. Освободи место: удали неиспользуемые LuCI-приложения и перезагрузи роутер.
df -h /overlay
Частые вопросы
Какой способ установки выбрать?
Для большинства роутеров — универсальный install.sh. Блок ASUS AX4200 нужен только если универсальный способ не сработал или хочется видеть все команды явно.
Скрипт безопасный? Что он делает с роутером?
Перед установкой скрипт делает бэкап /etc/config/system, network, firewall, luci в /root/passwall2-backup-*. При любой ошибке автоматически восстанавливает конфиги и удаляет пакеты, добавленные во время установки. Можно посмотреть весь код скрипта перед запуском.
Как обновить Passwall до новой версии?
Запусти скрипт ещё раз. Он скачает актуальный релиз с GitHub и переустановит поверх. Настройки Passwall сохраняются.
Что делает скрипт с dnsmasq?
Заменяет стандартный dnsmasq на dnsmasq-full — эта версия нужна Passwall для расширенной работы с DNS. Если замена не удастся, скрипт откатит изменение и вернёт обычный dnsmasq.
Сколько места нужно на роутере?
Минимум 25 MB свободных на /overlay. Полная установка с Argon занимает около 30-40 MB. Проверить место: df -h /overlay.
Как удалить Passwall 2?
Через LuCI → System → Software, либо в консоли: apk del luci-app-passwall2 passwall2 xray-core sing-box. После перезагрузки полностью удалится.