passwall2 / установочный гайд
Passwall 2 × Argon × OpenWrt

Установка одной командой. Настройка — по чек-листу.

Гайд для роутеров на OpenWrt 25.12+ с apk. Ставит Passwall 2, тему Argon и базовые зависимости. Работает даже при активном DPI — через GitHub-зеркала.

Target OS
OpenWrt 25.12+
Package
apk
Install time
~5 min
Languages
RU / EN / 中 / FA
02 / Install

Рекомендуемый путь

Универсальный скрипт для всех поддерживаемых роутеров. Автоматически обходит DPI через GitHub-зеркала. Делает бэкап и откатывает изменения при сбое.

TL;DR
Зайди на роутер по SSH под root, скопируй три строки ниже, нажми Enter. Через 5 минут открывай http://192.168.1.1 → Services → Passwall 2.
Скачать
~5 sec
Установка
2-3 min
Настройка
~1 min
Готово
enjoy
Весь процесс — примерно 5 минут от ssh root@router до рабочего Passwall.
universal install.sh
Запустить на роутере по SSH
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
03 / ASUS AX4200

Отдельно для одной модели

Архитектура aarch64_cortex-a53. Альтернативный скрипт и полный список команд — для случая, если универсальный способ не подошёл.

asus-only setup.sh
Альтернативный скрипт
Если универсальный install.sh не сработал — попробуй этот. Он тот же, но под конкретную архитектуру.
wget -qO- 'https://gist.githubusercontent.com/zonetx/dcdc6cb5126f2833aeae237ee8bde1b4/raw/setup.sh' | sh
manual ручная установка
Полный список команд
Если хочется видеть каждую команду — вот полный список для aarch64_cortex-a53. Версия Passwall 2 указана фиксированная (26.4.5-1) — при необходимости замени на новую.
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
04 / After install

Быстрый маршрут после установки

Три шага, которые нужно сделать сразу — без них 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. Обязательные значения — ниже в разделе настроек.

05 / Settings

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

Четыре вкладки в Passwall 2, которые точно нужно проверить. Нажми на скриншот, чтобы открыть его крупно.

Passwall Main settings screenshot
tab / main

Main — основной запуск

  • Main switch — включить
  • Проверить выбранный Node
  • Localhost Proxy и Client Proxy — включены
  • Node Socks Listen Port: 1070, Node Socks Bind Local — вкл.
Passwall Shunt Rule settings screenshot
tab / shunt rule

Shunt Rule — маршрутизация

  • Domain Strategy: IPOnDemand
  • Domain matcher: hybrid
  • Direct DNS result write to IPSet — вкл.
  • Enable GeoIP Data Parsing — вкл.
  • ADSblock → Blackhole, RUSSIA → Direct, AI → твой AI-прокси, Default → основной зарубежный узел
Passwall DNS settings screenshot
tab / dns

DNS — удалённый DNS

  • Remote DNS Protocol: DoH
  • Remote DNS DoH: Cloudflare
  • Remote DNS Outbound: Remote
  • Direct Query Strategy и Remote Query Strategy: UseIPv4
  • DNS Redirect — вкл. Domain Override можно оставить по умолчанию
Passwall Forwarding settings screenshot
tab / forwarding

Forwarding — трафик и TPROXY

  • Prefer firewall tools: Nftables
  • TCP Proxy Way: TPROXY
  • TCP Redir Ports и UDP Redir Ports: All
  • IPv6 TProxy — выкл., если не используешь IPv6
  • Hijacking ICMP (PING) — обычно выкл.
06 / routing rules

Готовые правила маршрутизации

Блокировка рекламы и правильная маршрутизация российских ресурсов в обход прокси. Скопируй строки в соответствующие поля Passwall на вкладке Shunt Rule.

Блокировка

Реклама и трекеры

Весь трафик к известным рекламным доменам и трекерам попадает в Blackhole — просто обрывается.

→ Blackhole
Куда: Shunt Rule → ADSblock → Domain List
geosite:category-ads-all geosite
Одно правило
Прямое подключение

Российские ресурсы

Российские домены и IP не идут через прокси — это быстрее и не ломает логины к сайтам, требующим RU-геолокацию.

→ Direct
Куда: Shunt Rule → RUSSIA → Domain List + IP List
regexp:\.(ru|su|xn--p1ai)$ regex
geosite:category-ru geosite
geoip:ru geoip
Все три строки
Как это вставлять: В Passwall 2 открой Services → Passwall 2 → Shunt Rule. Для каждой категории (ADSblock, RUSSIA) есть отдельная страница со списками. Domain List — одно правило на строку. IP List — тоже одно на строку. После сохранения: Save & Apply, затем перезапустить Passwall.
07 / Troubleshooting

Если что-то пошло не так

Самые частые проблемы при установке и их решения. Проверь сначала время на роутере и доступ к GitHub — это 80% случаев.

Network

SSL error: connection EOF

Провайдер/DPI режет TLS-соединения к GitHub. Скрипт автоматически пробует зеркала, но если и они не работают — поменяй DNS на роутере.

uci set network.wan.peerdns=0 && uci add_list network.wan.dns='1.1.1.1'

Time

certificate not yet valid

На свежем роутере время не синхронизировано, и HTTPS падает на проверке сертификатов. Запусти скрипт с флагом, который отключает проверку.

INSECURE_HTTPS=1 sh /tmp/pw.sh

Proxy

Нужен свой GitHub-прокси

Если встроенные зеркала тоже не открываются — укажи свой прокси через переменную окружения.

GITHUB_PROXY_PREFIX=https://your-proxy/ sh /tmp/pw.sh

Cache

Скрипт старой версии

GitHub Gist кэширует raw-файлы ~5 минут. Если обновил gist и запускаешь ту же ссылку — добавь cache-busting параметр.

...raw/install.sh?t=$(date +%s)

Rollback

Откатить неудачную установку

Скрипт автоматически откатывается при сбое. Но если LuCI работает странно — бэкап конфигов лежит в /root/passwall2-backup-*, восстанови вручную.

Storage

Мало места на роутере

Скрипт требует минимум 25 MB на /overlay. Освободи место: удали неиспользуемые LuCI-приложения и перезагрузи роутер.

df -h /overlay

08 / FAQ

Частые вопросы

Какой способ установки выбрать?

Для большинства роутеров — универсальный 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. После перезагрузки полностью удалится.

Shortcuts: ? help, / nav, g i jump