● Для новичков · без Docker · без ручного JSON

Свой VPN на зарубежном VPS с Happ

Пошаговая инструкция с нуля: арендуем сервер, устанавливаем 3x-ui, создаём VLESS + REALITY и подключаем телефон или компьютер через Happ.

1 vCPUобычно достаточно для личного использования
1 GB RAMминимальная удобная конфигурация
Ubuntu22.04 LTS или 24.04 LTS
IPv4нужен публичный адрес сервера
↑ наверх

Что именно мы будем делать

Нам нужен виртуальный сервер за пределами РФ. На него мы установим 3x-ui — веб-панель для Xray. В панели создадим подключение VLESS + REALITY. На телефоне или компьютере установим Happ и импортируем готовую ссылку.

Ваше устройство
Happ
VLESS + REALITY
Ваш VPS
Небольшое уточнение. В техническом смысле VLESS/Xray — это прокси-технология, а Happ создаёт на устройстве VPN-туннель и направляет через него трафик. Для пользователя результат выглядит как привычное VPN-подключение.
↑ наверх

1. Арендуем VPS

VPS — это небольшой виртуальный компьютер в дата-центре. Для одного человека дорогой сервер не нужен.

Что выбирать при заказе

ПараметрЧто выбратьПочему
СтранаГермания, Финляндия, Нидерланды или другая нужная вам странаИменно IP этой страны будет видеть интернет
ОСUbuntu 24.04 LTS или 22.04 LTSДля них проще всего повторить эту инструкцию
CPU1 vCPUДля личного сервера обычно достаточно
RAM1 GB3x-ui/Xray не требуют мощного сервера для пары устройств
Диск10–20 GBБольшой диск здесь не нужен
СетьПубличный IPv4По этому IP Happ подключится к серверу
Доступroot + пароль или SSH keyНужен для первоначальной установки

Примеры провайдеров

Hetzner Cloud

Есть площадки в Германии и Финляндии, а также в США и Сингапуре. При создании нужен Public Network с IPv4.

Сайт ↗ Локации ↗

DigitalOcean

Виртуальные серверы называются Droplets. При создании выбираются Region, Ubuntu и размер сервера.

Сайт ↗ Инструкция ↗

Любой другой VPS

Провайдер не принципиален. Главное: Linux, зарубежная площадка, публичный IPv4 и полный SSH-доступ.

UbuntuIPv4root
После покупки сохраните: IP-адрес сервера, пользователя root, пароль и — если провайдер использует нестандартный SSH-порт — номер этого порта.
↑ наверх

2. Подключаемся к серверу

В Windows 10/11 можно использовать обычный PowerShell или Windows Terminal. Никакая отдельная программа обычно не нужна.

Откройте PowerShell

Нажмите Win → введите «PowerShell» → Enter.

Введите команду SSH

ssh root@IP_ВАШЕГО_СЕРВЕРА

Например:

ssh root@203.0.113.25

При первом входе ответьте yes

Are you sure you want to continue connecting (yes/no/[fingerprint])?
yes

Введите пароль

При наборе пароля Linux не показывает ни символов, ни звёздочек. Это нормально. Введите пароль вслепую и нажмите Enter.

Успех: если в строке появилось что-то вроде root@server:~#, вы уже на своём VPS.
↑ наверх

3. Устанавливаем 3x-ui

Сначала обновим список пакетов и установим curl:

apt update && apt install -y curl

Теперь запускаем официальный установщик 3x-ui:

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Установщик сам создаёт сервис, включает его автозапуск и генерирует случайные данные для входа.

Пример того, что нужно сохранить после установки
Usernameслучайный_логин
Passwordслучайный_пароль
Portнапример 2053
Web Base Path/случайный-путь/
Адрес панелиhttp://IP_СЕРВЕРА:ПОРТ/ПУТЬ/
Не публикуйте логин и пароль панели. Это доступ к управлению сервером и клиентскими конфигурациями.

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

x-ui

Откроется меню управления 3x-ui.

↑ наверх

4. Заходим в веб-панель

В браузере откройте адрес, который показал установщик. Он будет похож на:

http://203.0.113.25:2053/random-path/

Введите выданные установщиком Username и Password.

3x-ui · первый вход
Usernameваш логин
Password••••••••••••••
Login
Если страница не открывается: чаще всего закрыт порт панели в firewall самого VPS-провайдера. Разрешите входящий TCP на порт, который выдал 3x-ui.
↑ наверх

5. Создаём VLESS + REALITY

В панели перейдите в раздел Inbounds и нажмите Add Inbound.

Для первого сервера можно ориентироваться на эти значения:

Add Inbound · рекомендуемый шаблон
ProtocolVLESS
Port443
Network / TransportTCP
SecurityREALITY
Flowxtls-rprx-vision
Fingerprintchrome
Dest / Targetwww.microsoft.com:443
SNI / Server Nameswww.microsoft.com
Private / Public keyGenerate
Short IDGenerate
Save / Create
Названия полей могут немного отличаться между версиями. Например, TCP иногда отображается как Network/Transport, а настройки REALITY раскрываются отдельным блоком. Смысл параметров остаётся тем же.

Что означают непонятные поля

ПолеПростыми словами
VLESSПротокол, которым Happ будет подключаться к вашему Xray-серверу.
REALITYМеханизм Xray, который использует TLS-характеристики реального сайта; собственного домена и сертификата для этой схемы не требуется.
DestРеальный TLS-сайт, используемый REALITY как цель. Он должен поддерживать TLS 1.3/HTTP2 и быть доступен серверу и клиенту.
SNIИмя сайта из сертификата цели. Для примера выше — www.microsoft.com.
Public KeyПубличная часть ключа. Она попадёт в клиентскую ссылку Happ.
Private KeyСекретная часть. Она остаётся только на сервере.
Short IDДополнительный идентификатор клиента REALITY. Его проще сгенерировать кнопкой панели.
FingerprintИмитация распространённого TLS-клиента. В официальной документации как пример указан chrome.
Никогда не отправляйте Private Key другим людям. В ссылку клиента должен попадать Public Key, а не приватный.
↑ наверх

6. Создаём отдельного клиента

Внутри созданного Inbound добавьте клиента. UUID можно сгенерировать автоматически.

Client
Name / Emailmy-phone
UUIDGenerate
Flowxtls-rprx-vision
Traffic / Expiryбез ограничения — по желанию

Лучше делать отдельного клиента на каждое устройство:

my-phone
my-pc
tablet
family-phone

Так вы сможете отключить только одно устройство, не меняя конфигурации на остальных.

↑ наверх

7. Подключаем Happ

Happ — клиент на базе Xray. Он поддерживает VLESS Reality и работает на Windows, macOS, Linux, Android и iOS.

Открыть официальный сайт Happ ↗

В 3x-ui откройте созданного клиента

Рядом с клиентом найдите Share / QR / Copy link.

Скопируйте VLESS-ссылку

Она начинается примерно так:

vless://UUID@SERVER_IP:443?security=reality&...

Откройте Happ

Добавьте конфигурацию из буфера обмена или используйте QR-код, если он отображается в панели.

Выберите созданный профиль и включите подключение

Система может один раз спросить разрешение на создание VPN-подключения — подтвердите его.

Готово: вручную переносить UUID, SNI, Public Key и Short ID обычно не нужно — всё это уже содержится в vless:// ссылке.
↑ наверх

8. Проверяем, что всё работает

До включения Happ откройте любой сайт проверки IP. Затем включите профиль Happ и обновите страницу.

IP изменился

Должен отображаться публичный IP вашего VPS.

Страна изменилась

Геолокация IP обычно будет соответствовать выбранному дата-центру.

Сайты открываются

Если IP поменялся и интернет работает — основная настройка завершена.

ipinfo.io ↗ · ifconfig.me ↗

↑ наверх

Минимальная безопасность

Сначала убедитесь, что VPN уже работает. После этого можно немного закрыть сервер.

Firewall Ubuntu

Замените ПОРТ_ПАНЕЛИ на порт, который выдал 3x-ui:

ufw allow 22/tcp
ufw allow 443/tcp
ufw allow ПОРТ_ПАНЕЛИ/tcp
ufw --force enable
ufw status
Важно: если ваш VPS использует SSH не на порту 22, сначала разрешите именно ваш SSH-порт. Иначе можно случайно отрезать себе доступ к серверу.

Что ещё желательно сделать

Используйте длинный пароль панели, случайный Web Base Path, не публикуйте клиентские ссылки и включите 2FA в панели, если используемая версия 3x-ui предлагает такую настройку.

↑ наверх

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

Панель 3x-ui не открывается
Проверьте правильность IP, порта и Web Base Path. Затем проверьте firewall у VPS-провайдера. Через SSH выполните x-ui и убедитесь, что сервис запущен.
Happ импортировал профиль, но не подключается
Проверьте, что порт 443 доступен, Inbound включён, у клиента выбран xtls-rprx-vision, а ссылка действительно относится к этому клиенту.
Есть подключение, но интернет не работает
Сначала попробуйте другой сайт. Затем проверьте доступ самого VPS в интернет через SSH, например командой curl https://ifconfig.me. Также проверьте, что выбранный Dest/SNI доступен.
Ошибка REALITY / handshake
Частые причины: Dest и SNI не соответствуют друг другу, неверный Public Key/Short ID, клиентская ссылка старая либо неподходящая версия клиента. Самый простой путь для новичка — пересоздать ключи/Short ID и заново импортировать свежую ссылку.
Я потерял логин или адрес панели
Подключитесь по SSH и выполните x-ui. Через меню управления можно посмотреть или изменить параметры панели.
↑ наверх

Финальный чек-лист

Галочки сохраняются в браузере на этом устройстве.

↑ наверх

Официальные источники и справка

Если интерфейс изменился после выхода этой инструкции, в первую очередь сверяйтесь с официальной документацией.

Законодательство: правила использования VPN/прокси и требования к сетевым сервисам различаются по странам. Используйте сервер и программное обеспечение в соответствии с правилами вашей юрисдикции и условиями VPS-провайдера.