Skip to content
ВажноAmneziaWG 3.1: как обновиться и как вернуться на 2.0Переустановка протокола, параметры по умолчанию, откат на 2.0 — и почему после этого перестают работать выданные конфигурации.Читать инструкцию →

📊 Панель 3X-UI: VLESS + Reality и блокировка ру-доменов

3X-UI — графическая веб-панель для управления VPN-сервером на ядре Xray-core. Через неё можно за пару минут создать подключение VLESS + Reality, выдавать отдельные ключи пользователям, следить за трафиком и настраивать правила маршрутизации.

В этом руководстве — полный путь от чистого VPS до готового ключа: установка панели, создание Inbound на порту 443 с маскировкой под ya.ru и блокировка рекламы и российских доменов.

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

Только IP-адрес сервера и root-пароль из панели управления хостингом — всё остальное делается по SSH и в браузере. Устанавливать что-либо на компьютер не нужно.

О скриншотах

На скриншотах серыми плашками закрыты IP-адрес, пароли, секретный путь панели, UUID клиента и ключи Reality — на их месте будут ваши собственные значения. Показанные в примерах адреса и доступы вымышленные.

🔑 Шаг 1. Данные для подключения к серверу

Откройте карточку сервера в панели управления хостингом (раздел Manage) и скопируйте:

ПолеЗначение
IP Addressадрес сервера, например 203.0.113.10
Usernameroot
Passwordпароль root-пользователя

Карточка сервера в панели управления хостингом: IP-адрес, логин root и пароль

Убедитесь, что сервер запущен — индикатор состояния должен быть зелёным. Если пароль утерян, его можно перевыпустить кнопкой Reset Password — но только на серверах, выданных с 20 июля 2026: подробнее.

Подробнее о параметрах подключения — в разделе Управление сервером.

💻 Шаг 2. Подключение по SSH

В PowerShell (Windows 10/11) или Terminal (macOS/Linux) выполните:

bash
ssh root@203.0.113.10

Подставьте свой IP. При первом подключении подтвердите отпечаток ключа словом yes, затем введите пароль.

Пароль не отображается

При вводе пароля в терминале не появляется ни символов, ни звёздочек — это нормально. Вставьте пароль (Ctrl+V / правый клик) и нажмите Enter.

Успешное подключение выглядит так:

text
Welcome to Ubuntu 26.04 LTS (GNU/Linux x86_64)
root@vps-4906:/home#

Терминал: подключение по SSH и приветствие Ubuntu 26.04 LTS

🚀 Шаг 3. Установка панели

Установите конкретную (проверенную) версию панели:

bash
VERSION=v2.5.5 && bash <(curl -Ls "https://raw.githubusercontent.com/mhsanaei/3x-ui/$VERSION/install.sh") $VERSION

Скрипт сам определит систему и архитектуру, поставит зависимости (wget, curl, tar, tzdata), скачает x-ui и Xray-core и зарегистрирует службу в systemd. Установка занимает 1–2 минуты.

Вывод установочного скрипта 3X-UI: определение системы и загрузка Xray-core

Зачем фиксировать версию

Команда с $VERSION ставит заведомо рабочий релиз. Если нужна всегда последняя версия, используйте: bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

🔐 Шаг 4. Порт и данные для входа

В процессе установки скрипт задаст вопрос:

text
Would you like to customize the Panel Port settings? (If not, a random port will be applied) [y/n]:

Запрос установщика о настройке порта панели

Рекомендуем нажать Enter (или ввести n) — панель сама сгенерирует случайный порт, случайный логин, пароль и секретный путь (Base URI Path). Это надёжнее любых стандартных значений: панель не найдут автоматические сканеры.

По завершении установки в консоли появится блок с доступами:

text
##############################################
Username: a1B2c3D4e5
Password: Xy7Zq2Lm9P
Port: 6873
WebBasePath: k4TnQ8pVzR2Wd
Access URL: http://203.0.113.10:6873/k4TnQ8pVzR2Wd
##############################################
x-ui v2.5.5 installation finished, it is running now...

Итог установки: сгенерированные логин, пароль, порт, WebBasePath и Access URL, а также меню команд x-ui

Сохраните эти данные

Скопируйте весь блок в менеджер паролей до закрытия терминала. Без секретного пути (WebBasePath) панель не откроется — по обычному http://IP:ПОРТ вернётся ошибка 404.

Если данные потеряны, их всегда можно посмотреть на сервере командой x-ui settings.

Сразу после установки откройте порт панели в файрволе — иначе страница входа не откроется. Подставьте свой порт из блока выше:

bash
sudo ufw allow 6873/tcp

Заодно откройте порт, на котором будет работать подключение (по умолчанию 443): sudo ufw allow 443/tcp. Проверить текущие правила — sudo ufw status. Если UFW не включён, ничего открывать не нужно; о настройке файрвола — Безопасность сервера.

🌐 Шаг 5. Вход в веб-интерфейс

  1. Откройте в браузере Access URL из предыдущего шага: http://IP_СЕРВЕРА:ПОРТ/СЕКРЕТНЫЙ_ПУТЬ
  2. Введите сгенерированные Username и Password и нажмите Log In.
  3. При необходимости переключите язык интерфейса в выпадающем списке на форме входа.

Форма входа в панель 3X-UI

«Соединение не защищено»

Браузер покажет предупреждение, потому что панель работает по http, без сертификата. Для первичной настройки это допустимо, но пароль и ключи передаются в открытом виде. После настройки смените пароль на свой и по возможности включите HTTPS-сертификат в Panel Settings — либо открывайте панель через SSH-туннель.

🛡️ Шаг 6. Создание Inbound: VLESS + Reality на 443

Reality маскирует ваш трафик под обычное посещение реального сайта: сервер «заимствует» настоящий TLS-хендшейк выбранного домена, поэтому отдельный сертификат и свой домен не нужны. Сравнение с другими протоколами — в разделе Протоколы.

В левом меню откройте Inbounds и нажмите + Add Inbound.

Раздел Inbounds в панели 3X-UI с кнопкой Add Inbound

6.1. Основные параметры

ПараметрЗначение
Enabledвключено
Remarkлюбое имя, например VLESS-Reality
Protocolvless
Listen IPоставьте пустым (слушать все интерфейсы)
Port443 (альтернативы — ниже)
Total Flow0 — без лимита трафика
Durationпусто — без срока действия
TransmissionTCP (RAW)

В блоке Client:

ПараметрЗначение
Emailидентификатор пользователя — можно оставить сгенерированный или задать понятный (ivan-phone)
IDUUID клиента, генерируется автоматически (кнопка 🔄 создаёт новый)
Flowxtls-rprx-vision
Total Flow / Durationлимиты для конкретного клиента, 0/пусто — без ограничений

Форма Add Inbound: протокол vless, порт 443, блок Client с Flow xtls-rprx-vision и Transmission TCP (RAW)

Почему порт 443

443 — стандартный порт HTTPS. Трафик на нём не вызывает подозрений и почти никогда не блокируется в публичных сетях. Убедитесь, что порт не занят веб-сервером: ss -ltnp | grep :443.

Альтернативные порты

Если на 443 подключение не устанавливается — порт занят на сервере или режется провайдером — используйте один из запасных:

ПортКогда выбиратьЧто учесть
443по умолчаниюСтандартный HTTPS: маскировка максимально правдоподобна. Не должен быть занят веб-сервером или самой панелью.
8443443 занят или блокируетсяВторой по распространённости HTTPS-порт, в большинстве сетей открыт. Хороший первый вариант при сбоях на 443.
80в сети пропускают только веб-трафикПорт HTTP, но трафик у нас TLS — для DPI это выглядит нетипично, поэтому держите его как аварийный. Часто уже занят nginx или Apache.

Проверить, что порт свободен:

bash
ss -ltnp | grep -E ':(80|443|8443)\s'

Как сменить порт у готового подключения:

  1. Inbounds → у нужного подключения Edit (иконка карандаша) → поле Port.
  2. Сохраните и подтвердите перезапуск Xray.
  3. Если включён файрвол, откройте новый порт: ufw allow 8443/tcp.
  4. Выдайте клиентам ссылку заново — порт входит в ссылку vless://, старая перестанет работать.

Два подключения на всякий случай

Удобнее не менять порт туда-обратно, а создать второй Inbound — например, VLESS-Reality-8443 на порту 8443 — и выдать пользователю обе ссылки. Если в конкретной сети одна не подключается, он переключается на другую. У каждого Inbound собственные ключи Reality, поэтому для второго подключения снова нажмите Get New Cert.

6.2. Настройки Reality

Прокрутите форму до блока Security и выберите Reality. Заполните поля:

ПараметрЗначение
Showвыключено
Xver0
uTLSfirefox
Dest (Target)ya.ru:443
SNIya.ru
Max Time Diff (ms)0
Short IDsоставьте сгенерированный набор (кнопка 🔄 — новый)
SpiderX/
Public Key / Private Keyнажмите Get New Cert — пара ключей x25519 создастся автоматически

Блок Security с выбранным Reality: uTLS, Dest ya.ru:443, SNI ya.ru, SpiderX и ключи, ниже — блок Sniffing

uTLS: смените chrome на firefox

Панель подставляет chrome по умолчанию — на скриншоте выше видно именно его. По опыту тестирования отпечаток firefox проходит фильтрацию стабильнее, поэтому в выпадающем списке выберите его.

Значение попадёт в ссылку клиента как fp=firefox. Если меняете uTLS у готового подключения, выдайте ссылки заново.

Выбор домена для маскировки

ya.ru — удачный выбор для пользователей из России: сайт не заблокирован, поддерживает TLS 1.3 и обращения к нему выглядят естественно. Главное требование — домен должен быть доступен с сервера и не заблокирован у клиента.

Альтернативы для пользователей из России: 2gis.ru, pochta.ru. Из зарубежных подойдут dl.google.com, www.microsoft.com, www.cloudflare.com. Не используйте домены, которые сами могут быть заблокированы в регионе клиента.

Домен указывается в двух полях сразу: в Dest (Target) — с портом (2gis.ru:443), в SNI — без порта (2gis.ru).

6.3. Sniffing

В блоке Sniffing (на скриншоте выше) включите Enabled и отметьте HTTP, TLS, QUIC (FAKEDNS не нужен). Это позволит Xray определять домены внутри соединений — без этого не будут работать правила блокировки из Шага 8.

Нажмите Create. Inbound появится в списке со статусом «Enabled».

🔗 Шаг 7. Выдача ключа клиенту

  1. В списке Inbounds раскройте созданное подключение и нажмите на имя клиента (или Details).
  2. Откроется карточка со сводкой: протокол, адрес, порт, Security: reality, Domain Name: ya.ru.
  3. В блоке URL нажмите иконку копирования рядом с именем клиента — либо отсканируйте QR-код.

Карточка Details: параметры подключения, данные клиента и готовая ссылка vless://

Ссылка имеет вид:

text
vless://UUID@IP_СЕРВЕРА:443?type=tcp&security=reality&pbk=ПУБЛИЧНЫЙ_КЛЮЧ&fp=firefox&sni=ya.ru&sid=SHORT_ID&spx=%2F&flow=xtls-rprx-vision#Имя-клиента

Импортируйте её в клиентское приложение — все параметры подставятся сами.

Один ключ — одно устройство

Технически один ключ работает на нескольких устройствах одновременно, но статистика трафика по ним смешается, лимит и срок действия применятся ко всем сразу, а отозвать доступ у одного устройства не получится — только у всех. Для каждого устройства добавляйте отдельного клиента (Operations → Add Client), Inbound при этом остаётся один.

🚫 Шаг 8. Блокировка рекламы и ру-доменов

Российские сайты и сервисы доступны без VPN, а часть из них ещё и ограничивает доступ с зарубежных IP-адресов. Поэтому такой трафик разумно не пропускать через сервер: это снижает нагрузку, экономит трафик и уменьшает риск жалоб на IP.

  1. В левом меню откройте Xray Configs.
  2. Разверните секцию Basic Routing.
  3. Заполните два поля:
ПолеЗначения
Block IPsPrivate IPs, RU Russia
Block DomainsAds All, Ads RU, RU Russia, .ru, .su, .рф
  1. Нажмите Save, затем подтвердите перезапуск ядра Xray (Restart Xray).

Xray Configs → Basic Routing: Block IPs с Private IPs и RU Russia, Block Domains с Ads All, Ads RU, RU Russia, .ru, .su, .рф

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

  • Private IPs — закрывает доступ к внутренней сети сервера (10.0.0.0/8, 192.168.0.0/16, 127.0.0.1 и т.д.). Обязательное правило безопасности: без него клиент может обращаться к локальным службам сервера, включая саму панель.
  • RU Russia (IP и домены) — блокирует российские адреса и домены из списка geoip/geosite.
  • .ru, .su, .рф — доменные зоны, которых нет в geosite-списке.
  • Ads All, Ads RU — блокировка рекламных и трекерных доменов на уровне сервера, для всех клиентов сразу.

Маскировка под ya.ru продолжит работать

Правила маршрутизации применяются к трафику клиентов. TLS-хендшейк Reality с ya.ru — это отдельное прямое соединение сервера, блокировка зоны .ru на него не влияет.

Побочный эффект

После включения этих правил российские сайты станут недоступны при включённом VPN — их нужно открывать с VPN выключенным или настроить в клиенте раздельное туннелирование (split tunneling), исключив .ru-домены из VPN. Если такое поведение не подходит, уберите из Block Domains зоны .ru, .su, .рф и пункт RU Russia, оставив только Ads All / Ads RU и Private IPs.

📱 Клиентские приложения

Ссылки и QR-коды из 3X-UI поддерживаются всеми современными клиентами:

ПлатформаПриложения
AndroidHiddify, v2rayNG, NekoBox
iOS (iPhone)Streisand, FoXray, Shadowrocket, V2Box
Windows / macOSHiddify, NekoRay, v2rayN

⚙️ Управление панелью через SSH

Все служебные операции доступны через команду x-ui:

bash
x-ui

Откроется текстовое меню. Отдельные подкоманды:

КомандаДействие
x-ui start / stop / restartзапуск, остановка, перезапуск панели
x-ui statusтекущее состояние службы
x-ui settingsпоказать логин, пароль, порт и Base URI Path
x-ui enable / disableавтозапуск при загрузке системы
x-ui logжурнал работы
x-ui banlogжурнал блокировок Fail2ban
x-ui updateобновление панели
x-ui uninstallполное удаление

❗ Если что-то не работает

  • Панель не открывается в браузере. Проверьте, что в адресе указан секретный путь (/k4TnQ8pVzR2Wd из Шага 4), и что служба запущена: x-ui status. Если включён файрвол, откройте порты: ufw allow 6873/tcp и ufw allow 443/tcp (подставьте свой порт панели).
  • Забыты логин и пароль. Выполните на сервере x-ui settings — данные будут показаны в консоли.
  • Клиент не подключается. Убедитесь, что порт 443 не занят другой службой (ss -ltnp | grep :443), Inbound включён, а в клиенте совпадают pbk, sid и sni — проще всего заново импортировать ссылку из панели. Если в конкретной сети не подключается только этот порт, попробуйте 8443 или 80 — см. Альтернативные порты.
  • Не открываются сайты после Шага 8. Скорее всего срабатывают правила блокировки — проверьте список Block Domains в Xray Configs → Basic Routing.

Другие типовые вопросы — в разделе Решение проблем (FAQ).