XRAYUI: плагин XRAY-Core для роутеров ASUS

asuswrt-merlin-xrayui / Client

$ wget -O /tmp/asuswrt-merlin-xrayui.tar.gz https://github.com/DanielLavrushin/asuswrt-merlin-xrayui/releases/latest/download/asuswrt-merlin-xrayui.tar.gz && rm -rf /jffs/addons/xrayui && tar -xzf /tmp/asuswrt-merlin-xrayui.tar.gz -C /jffs/addons && mv /jffs/addons/xrayui/xrayui /jffs/scripts/xrayui && chmod 0777 /jffs/scripts/xrayui && sh /jffs/scripts/xrayui install

3X-UI / Panel with server

$ openssl req -x509 -keyout /etc/ssl/certs/3x-ui.key -out /etc/ssl/certs/3x-ui.pem -newkey rsa:4096 -sha256 -days 3650 -nodes -new $ openssl x509 -noout -sha256 -fingerprint -in /etc/ssl/certs/3x-ui.pem
$ bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Настройки / Подключения

Схема: Пользователь -> Nginx (443 порт) -> Xray

Это классическая схема «проксирование через WebSocket + TLS» (часто называемая WS + TLS или VLESS+WS+TLS).

Как это работает:

Пользователь подключается к вашему домену (например, yourdomain.com) по стандартному HTTPS-порту 443.

Nginx, получив запрос, проверяет его.

Ключевой момент:

Вы настраиваете в nginx правило, чтобы запросы, приходящие на определённый путь

(например, /graphql, /ray, /ws), пересылались (проксировались) на локальный порт, где работает Xray (например, 127.0.0.1:10000).

Обычный веб-трафик (запрос к сайту) идёт к вашему сайту или отдаёт fake page, а трафик по секретному пути — к Xray.

Со стороны интернета весь трафик выглядит как обычный HTTPS, что обеспечивает высокую степень маскировки и обхода блокировок.

Зачем это нужно:

Маскировка: Трафик Xray выглядит как обычный веб-серфинг.

Надёжность: Используется порт 443, который почти всегда открыт.

Безопасность: TLS-шифрование завершается на nginx.

Разделение: На одном IP-адресе можно одновременно держать и сайт, и прокси-сервис.

Схема: Пользователь -> Nginx (2053 порт) -> Панель 3x-ui

Это схема для доступа к веб-панели управления Xray.

Как это работает:

Панель 3x-ui по умолчанию слушает свой порт (например, 2053) и отдаёт веб-интерфейс.

Вы НЕ открываете порт 2053 напрямую в фаерволе. Вместо этого вы настраиваете nginx как обратный прокси.

Nginx слушает порт 2053 на внешнем интерфейсе, принимает входящие соединения и передаёт их на внутренний порт панели 3x-ui (например, 127.0.0.1:2053).

Важное преимущество: Вы можете легко добавить к этому соединению аутентификацию (логин/пароль) на уровне nginx (auth_basic) или даже TLS-сертификат, чтобы шифровать доступ к самой панели, что сильно повышает безопасность.