Files
3X-UI_autoVPS/manuals/3x-ui.md
T
itsnotkubrick 0ce96f08e1 Подписка с учётом приложения: kit-sub перед подпиской 3X-UI
- scripts/kit-sub.py — посредник на публичном порту подписки (HTTPS), 3X-UI только на 127.0.0.1
- Clash/Mihomo (Clash Verge, FlClash…) получают конфиг 3X-UI плюс AmneziaWG
- Happ, v2rayN, Karing, Hiddify — ссылки без AmneziaWG, которого они не умеют
- expire=0 убирается из Subscription-Userinfo — больше нет «01.01.1970»
- Сертификат перечитывается после продления Let's Encrypt, TLS в потоках, тайм-ауты
- Установщик ставит kit-sub сам (systemd, ограничения безопасности); адрес подписки не меняется

Проверено: Mihomo по итоговому Clash-конфигу — все 10 прокси, включая оба AmneziaWG;
обновление поверх существующей установки на сервере в России.
2026-09-27 18:13:46 +03:00

7.4 KiB
Raw Blame History

🛡 3X-UI: все протоколы одной командой

← Все инструкции

Одна команда ставит панель 3X-UI, создаёт подключения на 11 протоколах и выдаёт одну ссылку-подписку: приложение само получит подходящий ему формат и нужные протоколы. Домены не нужны.

Что делает скрипт:

  • ставит официальную 3X-UI проверенной версии её собственным установщиком и ядро Xray, с которым работают все клиенты (Hiddify, Mihomo, v2rayN, Happ);
  • выпускает сертификат Let's Encrypt на IP сервера и сам его продлевает;
  • прячет панель на случайном порту и пути, со случайными логином и паролем;
  • подбирает сайт для маскировки REALITY — с TLS 1.3 и HTTP/2;
  • создаёт подключения на всех протоколах из таблицы ниже, генерирует ключи и обфускацию AmneziaWG;
  • включает единую подписку с учётом приложения: Clash Verge и FlClash получают готовый конфиг Mihomo с AmneziaWG, остальные приложения — ссылки только на то, что они умеют;
  • открывает в ufw только нужные порты.

Протоколы

Протокол Порт Работает в
VLESS REALITY 443/tcp всех приложениях
Hysteria2 443/udp всех приложениях
VLESS XHTTP + REALITY 8443/tcp v2rayN, Happ, Clash Verge, FlClash
VLESS WebSocket + TLS 2053/tcp всех приложениях
Trojan gRPC + TLS 2083/tcp всех приложениях
VMess WebSocket + TLS 2087/tcp всех приложениях
Shadowsocks 2022 8388/tcp+udp всех приложениях (мобильный МТС его блокирует, по Wi-Fi работает)
TUIC v5 8444/udp Hiddify, Clash Verge, FlClash, NekoBox
AmneziaWG 51821/udp AmneziaVPN, AmneziaWG, Clash Verge, FlClash
AmneziaWG 3.1 51822/udp AmneziaVPN, AmneziaWG, Clash Verge, FlClash
MTProto 8445/tcp прокси прямо в Telegram (если сервер сам достаёт до Telegram)

Каждый протокол проверен настоящим подключением на ядрах Xray, Mihomo и sing-box, в том числе через интернет к серверу в России — стенд лежит в tests/matrix.

Note

Обычный WireGuard по умолчанию не ставится: в России его рукопожатие режет DPI, а попытки подключения могут привести к блокировке IP сервера. AmneziaWG — тот же WireGuard с маскировкой — проходит. Если сервер и пользователи за границей, добавьте wg в --protocols.

Что понадобится

  • VPS с Ubuntu 22.04/24.04 или Debian 12/13, доступ root по SSH
  • Свободные порты 443 и 80 — на свежем сервере они свободны

Установка

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

bash <(curl -fsSL https://raw.githubusercontent.com/itsnotkubrick/Reality_Hysteria2/main/scripts/3x-ui.sh)

Через пару минут скрипт покажет всё нужное:

Результат установки 3X-UI

  1. Адрес панели — откройте его в браузере.
  2. Логин и пароль от панели.
  3. Подписка — вставьте её в приложение или отсканируйте QR-код.

Всё это, вместе с отдельными ссылками на каждый протокол, сохраняется в /root/3x-ui.txt: посмотреть снова — cat /root/3x-ui.txt.

Подключение

В приложении нажмите + → Импорт из буфера (или «Добавить подписку») и вставьте ссылку:

Устройство Приложение
iPhone, iPad Happ, Streisand, Hiddify
Android Hiddify, Happ, v2rayNG, FlClash
Windows, macOS, Linux Hiddify, v2rayN, Clash Verge

Подписка смотрит, какое приложение её запрашивает: Clash Verge и FlClash получают AmneziaWG, а Happ, v2rayN, Karing и Hiddify — нет, потому что не умеют его. Для AmneziaVPN импортируйте ссылки vpn:// из /root/3x-ui.txt, для Telegram — ссылку tg:// оттуда же.

Добавить друга

В панели откройте Клиенты → Добавить клиента, отметьте все подключения и задайте одинаковый Subscription ID — у друга появится своя подписка со всеми протоколами.

Параметры

Параметр Что делает
--protocols reality,hy2,ws только выбранные протоколы; minimal — только REALITY
--port 8443 порт REALITY (TCP) и Hysteria2 (UDP) вместо 443
--cert fullchain.pem --key privkey.pem --host домен свой сертификат, например для домена
--sni www.samsung.com свой сайт для маскировки REALITY
--no-ufw не трогать файрвол

Как устроена подписка

Наружу смотрит небольшой сервис kit-sub (Python, служба kit-sub), а подписка 3X-UI работает только внутри сервера. kit-sub узнаёт приложение по User-Agent, добавляет AmneziaWG в конфиг для Clash-приложений, убирает из заголовка «срок 0», из-за которого приложения показывали 01.01.1970, и сам подхватывает продлённый сертификат.

Note

Если порт 80 занят, сертификат Let's Encrypt не получить. Тогда скрипт сделает свой сертификат и впишет его отпечаток в ссылки, а панель будет доступна через SSH-туннель. Подписка в этом режиме работает только изнутри сервера — используйте отдельные ссылки.

Обслуживание

Управление панелью — официальная команда x-ui: перезапуск, логи, обновление, удаление.

x-ui

← Все инструкции · Дальше: 🚀 Hysteria2 →