Установщик 3X-UI: 12 протоколов и единая подписка одной командой

- REALITY, Hysteria2, XHTTP, VLESS/VMess WS, Trojan gRPC, Shadowsocks 2022, TUIC,
  WireGuard, AmneziaWG (классика и 3.1, обфускация генерируется), MTProto
- Все подключения пользователя с общим subId — 3X-UI собирает одну подписку;
  Clash/Mihomo-клиенты получают готовый конфиг, остальные — ссылки
- Свой сертификат: --cert/--key; без Let's Encrypt — самоподписанный, отпечаток в ссылках (pcs)
- --protocols для выбора протоколов, повторный запуск досоздаёт недостающее
- Генератор Mihomo: AmneziaWG 3.1 с правильными именами параметров и version: 3
- Инструкция и матрица обновлены: подписка проверена на Xray, Mihomo и sing-box
This commit is contained in:
itsnotkubrick
2026-09-27 17:19:33 +03:00
parent 78935727be
commit 5958eceefb
9 changed files with 428 additions and 123 deletions
+52 -33
View File
@@ -1,19 +1,43 @@
# 🛡 3X-UI + REALITY
# 🛡 3X-UI: все протоколы одной командой
[← Все инструкции](../README.md#инструкции)
Одна команда ставит панель [3X-UI](https://github.com/MHSanaei/3x-ui) и сразу
создаёт рабочее подключение VLESS REALITY. Домены не нужны.
Одна команда ставит панель [3X-UI](https://github.com/MHSanaei/3x-ui), создаёт подключения
на 12 протоколах и выдаёт **одну ссылку-подписку**: приложение само получит
подходящий ему формат и нужные протоколы. Домены не нужны.
**Что делает [скрипт](../scripts/3x-ui.sh):**
- ставит официальную 3X-UI проверенной версии её собственным установщиком;
- выпускает для панели сертификат Let's Encrypt на IP сервера и сам его продлевает;
- прячет панель на случайном порту и случайном пути, со случайными логином и паролем;
- подбирает сайт для маскировки REALITY — проверяет, что тот отвечает по TLS 1.3 и HTTP/2;
- создаёт подключение VLESS REALITY на 443 порту и первого клиента;
- открывает в ufw только нужные порты;
- выдаёт ссылку `vless://` и QR-код.
- ставит официальную 3X-UI проверенной версии её собственным установщиком
и ядро Xray, с которым работают все клиенты (Hiddify, Mihomo, v2rayN, Happ);
- выпускает сертификат Let's Encrypt на IP сервера и сам его продлевает;
- прячет панель на случайном порту и пути, со случайными логином и паролем;
- подбирает сайт для маскировки REALITY — с TLS 1.3 и HTTP/2;
- создаёт подключения на всех протоколах из таблицы ниже, генерирует ключи
и обфускацию AmneziaWG;
- включает единую подписку: Clash Verge и FlClash получают готовый конфиг Mihomo,
остальные приложения — список ссылок;
- открывает в 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 | всех приложениях |
| TUIC v5 | 8444/udp | Hiddify, Clash Verge, FlClash, NekoBox |
| WireGuard | 51820/udp | всех приложениях и WireGuard |
| AmneziaWG | 51821/udp | AmneziaWG на роутерах Keenetic, Clash Verge, FlClash |
| AmneziaWG 3.1 | 51822/udp | AmneziaVPN, Clash Verge, FlClash |
| MTProto | 8445/tcp | прокси прямо в Telegram |
Каждый протокол проверен настоящим подключением на ядрах Xray, Mihomo и sing-box —
стенд лежит в [tests/matrix](../tests/matrix/).
## Что понадобится
@@ -34,51 +58,46 @@ bash <(curl -fsSL https://raw.githubusercontent.com/itsnotkubrick/Reality_Hyster
1. **Адрес панели** — откройте его в браузере.
2. **Логин и пароль** от панели.
3. **Ссылка для подключения** — вставьте её в клиент или отсканируйте QR-код.
3. **Подписка** — вставьте её в приложение или отсканируйте QR-код.
Всё это сохраняется в файл `/root/3x-ui.txt` — посмотреть снова: `cat /root/3x-ui.txt`.
Всё это, вместе с отдельными ссылками на каждый протокол, сохраняется в `/root/3x-ui.txt`:
посмотреть снова — `cat /root/3x-ui.txt`.
## Подключение
Ссылку `vless://` поддерживают:
В приложении нажмите **+** → **Импорт из буфера** (или «Добавить подписку») и вставьте ссылку:
| Устройство | Приложение |
|---|---|
| iPhone, iPad | Streisand, Happ, Hiddify |
| Android | Hiddify, v2rayNG, Happ |
| Windows, macOS, Linux | Hiddify, v2rayN |
| iPhone, iPad | Happ, Streisand, Hiddify |
| Android | Hiddify, Happ, v2rayNG, FlClash |
| Windows, macOS, Linux | Hiddify, v2rayN, Clash Verge |
В приложении нажмите **+** → **Импорт из буфера** или отсканируйте QR-код.
Для AmneziaVPN и Telegram возьмите отдельные ссылки `vpn://` и `tg://` из `/root/3x-ui.txt`.
## Добавить друга
В панели откройте **Клиенты → Добавить клиента**, выберите подключение
**REALITY**, задайте имя и при желании лимит трафика и срок. Ссылку для
друга покажет кнопка **QR-код** рядом с клиентом.
В панели откройте **Клиенты → Добавить клиента**, отметьте все подключения и задайте
одинаковый **Subscription ID** — у друга появится своя подписка со всеми протоколами.
## Параметры
Команду можно запустить с параметрами — например, если порт 443 уже занят:
```bash
bash <(curl -fsSL https://raw.githubusercontent.com/itsnotkubrick/Reality_Hysteria2/main/scripts/3x-ui.sh) --port 8443
```
| Параметр | Что делает |
|---|---|
| `--port 8443` | порт REALITY вместо 443 |
| `--sni www.apple.com` | свой сайт для маскировки |
| `--panel-ssl none` | без сертификата: панель будет доступна только через SSH-туннель |
| `--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` | не трогать файрвол |
> [!NOTE]
> Если порт 80 занят, сертификат для панели не получить — скрипт сам
> переключится на доступ через SSH-туннель и покажет нужную команду.
> Если порт 80 занят, сертификат Let's Encrypt не получить. Тогда скрипт сделает свой
> сертификат и впишет его отпечаток в ссылки, а панель будет доступна через SSH-туннель.
> Подписка в этом режиме работает только изнутри сервера — используйте отдельные ссылки.
## Обслуживание
Управление панелью — официальная команда `x-ui`: перезапуск, логи,
обновление, удаление.
Управление панелью — официальная команда `x-ui`: перезапуск, логи, обновление, удаление.
```bash
x-ui