Как выбрать SNI для Reality
Половина вопросов про Reality звучит одинаково: какой домен поставить в настройки. От этого выбора зависит, как ваш сервер выглядит со стороны и как быстро он попадёт в блокировку. Разберём, что именно вы выбираете, какие у сайта-маскировки есть технические требования и как проверить кандидата за пару минут.
Можно ли так на OBLAKO
Да, если SNI это ваш собственный домен. Личный Reality для себя и близких разрешён правилами, а маскировка под свой домен по инструкции про self-steal полностью соответствует правилам. С SNI популярного чужого сайта сервер на OBLAKO долго не проработает: система находит такие сертификаты и выключает сервер автоматически, пока SNI не заменят на свой домен.
Три поля, которые путают
В серверной части Reality есть три связанных параметра:
- target (в старых версиях
dest): адрес, куда Xray пересылает всех, кто подключился без вашего ключа. Сканер, браузер или проверка провайдера увидят именно этот сайт со всеми его сертификатами и заголовками. - serverNames: список имён, с которыми сервер принимает клиентов. Обычно это имя из сертификата сайта, указанного в target.
- SNI в ссылке клиента (
sni=): имя, которое клиент открыто пишет в начале TLS-соединения. Оно должно входить вserverNames.
SNI передаётся без шифрования. Это единственное, что любой посредник на пути видит о вашем соединении, кроме IP-адреса сервера. Поэтому пара «имя сайта и адрес, на который идёт трафик» должна выглядеть правдоподобно.
Технические требования к сайту-маскировке
Разработчики Reality в описании проекта называют обязательный минимум:
- TLS 1.3. Reality имитирует рукопожатие TLS 1.3, сайт на TLS 1.2 не подойдёт.
- HTTP/2 (h2) в ALPN. Современные браузеры почти всегда договариваются о нём.
- Без перенаправления на другой домен. Если
https://имя/отвечает редиректом на другое имя, маскировка рассыпается.
Есть и желательные условия:
- сайт и его IP находятся близко к вашему серверу, чтобы задержки при пересылке были естественными;
- после ServerHello сайт шифрует остальное рукопожатие одной пачкой, как делают популярные веб-серверы;
- сертификат достаточно большой, без экзотики.
Отдельное предупреждение есть в документации Xray: не берите в target сайты за Cloudflare и другими CDN. Xray честно пересылает чужие запросы на target, и сервер превращается в открытый проброс к CDN, которым могут воспользоваться посторонние.
Почему чужие известные сайты больше не работают в России
Долгое время стандартным советом было поставить www.microsoft.com, dl.google.com или сайт Apple. Технически они проходят по всем требованиям выше. Проблема в другом: такие имена отвечают с адресов самих компаний и их CDN. Когда www.microsoft.com вдруг отвечает с IP недорогого VPS у европейского хостера, это бросается в глаза любой автоматической проверке.
В 2026 году в России такие расхождения ловят массово, причём блокируют не только сервер, но и соседние адреса. Хронология и механизм подробно описаны в статье Блокировки VLESS Reality и self-steal. Вывод для выбора SNI простой: имя должно правдоподобно жить на вашем IP.
Варианты по надёжности
1. Свой домен на своём сервере (self-steal)
Самый надёжный вариант. Домен ваш, DNS указывает на ваш VPS, на сервере работает настоящий сайт с сертификатом Let's Encrypt, а Reality пересылает посторонних на него. Имя, адрес, сертификат и содержимое сходятся, и придраться не к чему.
Требования к сайту-маскировке выполняются автоматически: nginx отдаёт TLS 1.3 и h2, редиректов нет, а сайт находится на том же сервере. Остаётся только выбрать безликое имя без слов vpn, proxy, node и подобных. Зону .ru для такого домена лучше не брать, почему, объяснено в следующем разделе. Как это сделать и где купить домен, рассказано в статье Домен для self-steal.
2. Соседний сайт из той же сети
Компромисс для тех, у кого нет домена: найти чужой сайт, который работает в той же подсети или у того же хостера, что и ваш VPS. Тогда SNI и адрес хотя бы относятся к одной сети. Для поиска есть официальный сканер RealiTLScanner: он перебирает адреса вокруг вашего и показывает сайты с TLS 1.3 и h2.
Минусы у варианта существенные. Сайт может в любой момент переехать, сменить сертификат или закрыться, и маскировка сломается. Кроме того, вы используете имя чужого ресурса. Запускайте сканер со своего компьютера, а не с VPS: массовое сканирование с сервера похоже на атаку и нарушает правила большинства хостеров, включая наши.
3. Имена из «белого списка»
В сети советуют ставить в SNI российские сайты вроде крупных поисковиков и соцсетей, мол, их не блокируют. Это не работает так, как кажется, и сам Xray с этим согласен: если в serverNames есть имя в зоне .ru, .ir или .cn либо имя со словами apple, icloud или microsoft, при запуске он пишет в лог предупреждение REALITY: Choosing "..." as the target will increase the likelihood of your server's IP being blocked by the GFW. Когда мобильный оператор включает режим белых списков, он ограничивает доступ к зарубежным IP целиком, и имя в рукопожатии ничего не меняет. А в обычном режиме российское имя на немецком IP выглядит ещё подозрительнее, чем американское. Что реально помогает при белых списках, разобрано в статье Белые списки и каскад серверов.
Как проверить кандидата
Проверку удобно начать прямо на сервере, где уже стоит Xray. Встроенная команда подключается к сайту дважды, без SNI и с ним, и для каждого раза показывает версию TLS, обмен ключами и сертификат:
xray tls ping ВАШ_ДОМЕНВ блоке Pinging with SNI ищите строку TLS Version: TLS 1.3. Строка TLS Post-Quantum key exchange: true (X25519MLKEM768) означает, что сайт поддерживает постквантовый обмен ключами, и клиенты Reality автоматически его используют, это плюс. В строке Cert's allowed domains должно быть ваше имя. ALPN эта команда не показывает, его проверим отдельно.
Проверьте, что нет редиректа на другой домен:
curl -sI https://ВАШ_ДОМЕН | head -5Ответ 200 или редирект на тот же домен (например, с / на /ru/) подходит. Редирект на другое имя означает, что сайт не годится.
Поддержку h2 и ещё раз версию TLS покажет OpenSSL:
openssl s_client -connect ВАШ_ДОМЕН:443 -servername ВАШ_ДОМЕН -tls1_3 -alpn h2 </dev/null 2>/dev/null | grep -E "Protocol|ALPN"В ответе должны быть TLSv1.3 и h2.
Как поменять SNI на работающем сервере
Если сервер настроен через панель 3x-ui, поменяйте поля Target и SNI в настройках подключения, сохраните и обновите ссылки или подписку у всех клиентов. Если Xray настроен вручную, правка описана в разделе Если Xray уже установлен статьи про self-steal.
После смены имени старые ссылки перестают подключаться: SNI в них больше не входит в serverNames. UUID, ключи и Short ID при этом не меняются, достаточно заменить имя в ссылке.
Коротко
- SNI виден всем на пути трафика, поэтому имя должно правдоподобно жить на IP вашего сервера.
- Минимум для сайта-маскировки: TLS 1.3, h2, без редиректа на другой домен, не за CDN.
- Чужие известные домены в 2026 году в России приводят к блокировке IP.
- Надёжнее всего свой домен и свой сайт на том же сервере.