Настройка VLESS в 3x-ui: пошаговое руководство по созданию защищенного прокси

Подробное руководство по настройке VLESS+REALITY в панели 3x-ui: от установки до подключения клиентов. Разбор параметров, типичные ошибки, советы по безопасности и ответы на частые вопросы.

Зачем нужен VLESS и что такое REALITY

VLESS — это современный прокси-протокол, разработанный для проекта XRay. В отличие от многих других протоколов, он не содержит лишних заголовков и служебных данных, что делает его легким и быстрым. Однако главная его особенность — возможность комбинировать с технологией REALITY, которая имитирует TLS-соединение с легитимным сайтом.

REALITY работает не через обфускацию трафика, а через имитацию. Когда клиент подключается к серверу, DPI (система глубокого анализа пакетов) видит обычное TLS-рукопожатие к известному сайту, например, microsoft.com. Это выглядит как стандартный браузерный запрос, поэтому блокировка такого трафика потребовала бы блокировки всего HTTPS, что невозможно. Именно поэтому VLESS+REALITY считается одним из самых устойчивых к блокировкам решений на текущий момент.

Классические протоколы, такие как OpenVPN, WireGuard или L2TP, блокируются по сигнатуре рукопожатия. Даже Shadowsocks с обфускацией все чаще выявляется DPI в пиковые часы из-за энтропийных паттернов случайного трафика. REALITY лишен этих недостатков, так как его трафик неотличим от обычного HTTPS.

Подготовка к настройке: что нужно заранее

Прежде чем приступать к настройке VLESS в 3x-ui, убедитесь, что у вас есть все необходимые компоненты.

Во-первых, вам понадобится виртуальный сервер (VPS) с реальным белым IP-адресом и выходом в интернет. Операционная система может быть любой, но чаще всего используется Ubuntu или Debian. Важно, чтобы у вас был root-доступ к серверу.

Во-вторых, панель 3x-ui должна быть уже установлена и открываться в браузере. Если она еще не установлена, сначала выполните установку, а затем возвращайтесь к настройке VLESS. В качестве альтернативы можно использовать готовые образы с предустановленной панелью, которые предлагают некоторые хостинг-провайдеры.

В-третьих, убедитесь, что порт, который вы планируете использовать (обычно 443), открыт в файрволе. Если вы используете ufw, проверьте статус командой ufw status и при необходимости добавьте правило ufw allow 443/tcp.

Наконец, подготовьте клиентское устройство. Для Android подойдут Hiddify или v2rayNG, для iOS — Hiddify или FoXray, для Windows — Hiddify или NekoBox. Большинство клиентов поддерживают импорт через QR-код или ссылку.

Установка 3x-ui: быстрый старт

Установка 3x-ui обычно выполняется одной командой. После подключения к серверу по SSH обновите списки пакетов и запустите установочный скрипт. Скрипт задаст несколько вопросов: порт для веб-панели (по умолчанию 54321) и уровень логирования. Через несколько минут установка завершится, и вы получите адрес для входа, логин и временный пароль.

Важно сразу сменить пароль администратора на надежный. Интерфейс панели простой: слева вертикальное меню с разделами «Статус», «Входящие подключения», «Клиенты», «Настройки». Перед созданием первого inbound панель бесполезна — нужно добавить сервер.

Если вы используете хостинг-провайдера, который предлагает установку 3x-ui при заказе сервера, вы получите ссылку на панель и учетные данные автоматически. Это самый простой способ, особенно для новичков.

Создание inbound VLESS+REALITY в 3x-ui

Войдите в панель 3x-ui и перейдите в раздел «Inbounds». Нажмите кнопку «Add Inbound» и заполните форму.

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

  • Remark — любое имя для вашего подключения, например, vless-reality.
  • Protocol — выберите VLESS.
  • Listen IP — оставьте пустым, чтобы слушать на всех интерфейсах.
  • Port — укажите 443 (стандартный HTTPS-порт, не вызывает подозрений).
  • Transmission — TCP.
  • Security — Reality.

После выбора Security: Reality появится блок настроек REALITY. Здесь важно не ошибиться.

Поле Dest (или Uname) — это домен, под который маскируется ваш трафик. Он должен быть крупным сайтом с TLS без ECH и без Cloudflare-прокси. Хорошие варианты: microsoft.com, apple.com, addons.mozilla.org, dl.google.com, www.speedtest.net. Не используйте Cloudflare-домены, так как они включают ECH, что ломает REALITY.

Поле Server Names — укажите тот же домен, что и в Dest, и можно добавить www-вариант. Например: microsoft.com, www.microsoft.com.

Кнопка Get New Cert генерирует пару ключей (Private Key и Public Key) автоматически. Публичный ключ понадобится для клиента, поэтому скопируйте его.

Кнопка Add ShortId генерирует случайный hex-идентификатор. Он используется для верификации клиента.

В секции «Clients» нажмите «Add Client» и заполните:

  • Email — любое имя без пробелов (например, phone, laptop). Пробелы ломают парсинг конфига.
  • ID (UUID) — нажмите кнопку генерации.
  • Flow — обязательно выберите xtls-rprx-vision.
  • Total GB — 0 означает без лимита, или укажите лимит.
  • Expire Date — оставьте пустым для бессрочного доступа.

После нажатия «Create» inbound сохранится, и XRay перезапустится автоматически.

Подключение клиентов: QR-код, ссылка и подписка

После создания inbound вы можете получить конфигурацию для клиента тремя способами.

QR-код: На странице Inbounds найдите созданный inbound и нажмите иконку QR-кода. Отсканируйте его клиентом (Hiddify, v2rayNG и др.) — конфиг импортируется мгновенно.

Ссылка vless://: Нажмите кнопку Copy напротив клиента. Ссылка будет выглядеть примерно так: vless://UUID@ВАШ_IP:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=microsoft.com&fp=chrome&pbk=ПУБЛИЧНЫЙ_КЛЮЧ&sid=SHORTID&type=tcp#vless-reality

Эту ссылку можно отправить в мессенджер и открыть на устройстве — клиент предложит импортировать конфиг.

Подписка (subscription): В 3x-ui есть функция subscription URL. Скопируйте ссылку подписки и добавьте ее в клиенте (например, в Hiddify: плюс → Add from URL). Клиент будет автоматически обновлять конфиги.

Для ручной настройки можно использовать шаблон URL-строки, который включает все параметры: UUID, IP, порт, тип транспорта, security, публичный ключ, fingerprint, SNI, shortId и flow.

Проверка работы и типичные ошибки

После подключения проверьте, что все работает правильно. На устройстве включите VPN и откройте сайт 2ip.ru — IP должен смениться на IP вашего VPS. В панели 3x-ui в разделе Inbounds вы увидите статистику трафика — если цифры растут, все работает.

На сервере можно посмотреть логи XRay: docker compose logs -f 3x-ui | grep accepted (если используется Docker) или journalctl -u xray -f. Вы должны видеть строки вида accepted tcp:ВАШ_IP:PORT.

Если подключение не работает, проверьте по порядку:

  1. Порт открыт в файрволе: ufw status | grep 443.
  2. Контейнер или служба запущены: docker compose ps или systemctl status xray.
  3. Flow у клиента — xtls-rprx-vision (не пусто).
  4. Dest-домен не Cloudflare и не с ECH.
  5. Public Key в конфиге клиента совпадает с тем, что в панели.

Частая ошибка — забыть включить IP forwarding на сервере. По умолчанию VPS не перенаправляет пакеты. Включите его командой sysctl -w net.ipv4.ip_forward=1 и добавьте правило в iptables для NAT, иначе интернет на клиенте не заработает.

Тонкая настройка: несколько inbound, лимиты и безопасность

3x-ui позволяет создавать несколько inbound на разных портах. Например, можно сделать резервный inbound на порту 8443 с теми же настройками. Если один порт будет заблокирован провайдером, клиенты смогут переключиться на другой. Не забудьте открыть порт в файрволе: ufw allow 8443/tcp.

Для каждого устройства лучше создавать отдельного клиента. Это упрощает просмотр статистики и позволяет выборочно отзывать доступ, не меняя конфиг остальным.

Если вы планируете давать доступ другим людям, установите лимит трафика (Total GB). Когда лимит исчерпается, 3x-ui автоматически отключит клиента. Возобновить доступ можно вручную или сбросить счетчик.

Для повышения приватности отключите логи доступа в настройках XRay: XRay Settings → Log → Access Log Level → None. Это также снизит нагрузку на диск.

Если начались проблемы со скоростью, попробуйте сменить Dest-домен. Это не обязательно означает блокировку — возможно, деградировал маршрут до конкретного IP. Смените на другой крупный домен и проверьте.

Альтернативные способы настройки VLESS

Помимо ручной настройки через 3x-ui, существуют и другие способы развернуть VLESS+REALITY.

AmneziaVPN: Это приложение позволяет настроить VPN на собственном сервере без глубоких технических знаний. Достаточно ввести IP-адрес и root-пароль сервера, выбрать протокол XRay (XRay with Reality), и программа сама настроит все на сервере. По умолчанию используется протокол VLESS. Это отличный вариант для быстрого старта.

Самостоятельная установка XRay: Если вы хотите полный контроль, можно установить XRay вручную. Для этого нужно:

  1. Установить XRay через официальный скрипт.
  2. Сгенерировать UUID и ключи X25519.
  3. Выбрать сайт с поддержкой HTTP/2, TLS 1.3 и X25519.
  4. Создать конфигурационный файл config.json с inbound VLESS+REALITY.
  5. Перезапустить XRay и проверить статус.

Этот способ требует больше времени и знаний, но дает полное понимание процесса. В конфигурационном файле нужно указать порт, протокол, настройки REALITY (dest, serverNames, privateKey, shortIds) и клиентов с UUID и flow.

Сравнение VLESS+REALITY с другими протоколами

VLESS+REALITY часто сравнивают с WireGuard и OpenVPN. WireGuard блокируется ТСПУ с 2022 года из-за хорошо известной UDP-сигнатуры. OpenVPN также легко обнаруживается по сигнатуре рукопожатия. VLESS+REALITY имитирует TLS-рукопожатие к легитимному сайту, поэтому для DPI это выглядит как обычный HTTPS. Чтобы заблокировать такой трафик, пришлось бы блокировать весь HTTPS, что невозможно.

По сравнению с Shadowsocks, VLESS+REALITY более устойчив к DPI, так как не создает энтропийных паттернов случайного трафика. Shadowsocks с обфускацией все чаще выявляется в пиковые часы.

Важно отметить, что VLESS — это не VPN в строгом смысле, а прокси-протокол. Он не шифрует весь трафик, а только передает его через защищенный туннель. Однако для обхода блокировок и обеспечения конфиденциальности этого достаточно.

Безопасность и рекомендации по эксплуатации

При использовании VLESS+REALITY важно соблюдать несколько правил безопасности.

Во-первых, всегда используйте надежные пароли для панели 3x-ui и меняйте их регулярно. Панель управления — это точка входа для злоумышленников, поэтому ограничьте доступ к ней по IP, если это возможно.

Во-вторых, не используйте один и тот же UUID для разных клиентов. Каждый клиент должен иметь свой уникальный UUID, чтобы можно было управлять доступом и статистикой.

В-третьих, регулярно обновляйте 3x-ui и XRay до последних версий. Разработчики исправляют уязвимости и улучшают производительность.

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

Наконец, помните, что использование VPN для обхода блокировок может нарушать законодательство в некоторых странах. Убедитесь, что вы действуете в рамках закона.

Вопросы и ответы

Какой домен выбрать для Dest в REALITY?

Для Dest нужно выбирать крупный HTTPS-сайт без ECH и без Cloudflare-прокси. Хорошие варианты: microsoft.com, apple.com, addons.mozilla.org, dl.google.com, www.speedtest.net. Cloudflare-домены (например, discord.com) не подходят, так как они включают ECH, что ломает REALITY. Проверить можно через dig TXT _dnskey.домен или сервис check.cdn77.com.

Почему VLESS+REALITY, а не просто WireGuard?

WireGuard блокируется ТСПУ с 2022 года из-за хорошо известной UDP-сигнатуры. VLESS+REALITY имитирует TLS-рукопожатие к легитимному сайту, поэтому для DPI это выглядит как обычный HTTPS. Чтобы заблокировать такой трафик, нужно заблокировать весь HTTPS, что нереально.

Что такое Flow xtls-rprx-vision и зачем он нужен?

Flow xtls-rprx-vision — это расширение XTLS Vision, которое встраивает TLS клиента прямо в транспортный слой без двойного шифрования. Fingerprint становится неотличим от браузерного Chrome. Для России обязательно включайте эту опцию, так как она улучшает производительность и маскировку.

Клиент подключился, но скорость низкая. Что делать?

Проверьте: 1) Flow должен быть xtls-rprx-vision — без него XRay работает без оптимизации. 2) Dest — не Cloudflare-домен. 3) Пинг до сервера — если выше 80 мс, это влияет на субъективную скорость. 4) Провайдер может шейпить трафик по объему, а не блокировать.

Можно ли добавить нескольких пользователей в один inbound?

Да, это главная фишка 3x-ui. В одном inbound можно создать сколько угодно клиентов — у каждого свой UUID и, опционально, свой лимит трафика и срок действия. Все работают через один порт.

Нужно ли открывать в файрволе порт для каждого нового inbound?

Да. Каждый inbound слушает отдельный порт — добавьте его в ufw: ufw allow ПОРТ/tcp. Если забудете, клиенты не смогут подключиться даже при правильных настройках.