Настройка лучших VPN протоколов! VLESS с XTLS-Reality на сервере XRay с установкой через 3X-UI панель
VLESS с XTLS-Reality — используют уникальный метод идентификации на этапе TLS-рукопожатияпо принципу свой/чужой. Если сервер определяет клиента как «своего», он просто работает как прокси.
TLS — это протокол шифрования и аутентификации, разработанный для защиты интернет-коммуникаций. TLS-рукопожатие— это процесс, который запускает сеанс связи, использующий TLS.Во время TLS-рукопожатия две взаимодействующие стороны обмениваются сообщениями, чтобы подтвердить друг друга, проверить друг друга, установить алгоритмы шифрования, которые они будут использовать, и согласовать ключи сеанса.
При этом, в реальном времени, ваш прокси-трафик скрывается под обычным браузерным трафиком в виде HTTPS соединения, используя реальный TLS-сертификат.
В случае неузнаваемого трафика, соединение перенаправляется на реальный сайт (например, google.com) и имитирует его поведение. Это обеспечивает высокую степень маскировки и делает практически невозможным детектирование прокси.
Более подробно про эти протоколы можете почитать, например на хабре. Не буду перегружать этот пост теорией — это, всё-таки, пошаговый гайд, а не лекция по принципам работы протоколов.
Вы наверное спросите: а лучше ли этот вариант настройки, чем тот же WireGuard или Outline с Shadowsocks? — Да! В разы лучше!
Как минимум, потому что WG – уже научились блокировать, а SS – достаточно устаревший протокол.
Таким образом, VLESS с XTLS-Reality являются самыми современными протоколамиобфускации и шифрования. Вычислить которые сторонние инструменты не смогут ещё ближайшие пару лет.
Плюс ко всему, после установки графической панели 3X-UI на сервере также можно будет настроить такие протоколы VPN, как: VMESS, Trojan, Shadowsocks-2022, Transparent Proxy, Dokodemo-Door и Socks.
Окей, давайте приступим к установке и настройке сервера.
Пункт 1. Про VPS/VDS сервер
*Данный этап можно пропустить, если у вас уже есть VPS/VDS сервер. Например, на который ранее был установлен OpenVPN или WireGuard, и которые впоследствии перестали работать из-за блокировки протоколов.
Если, всё-таки, у вас нет своего VPS/VDS сервера, то я рекомендую вам арендовать его у хостинг-провайдера Aeza.
Почему? — (спросите вы) — потому что я сам ещё ни разу не пожалел, когда однажды наткнулся на этого хостинга и с тех пор регулярно пользуюсь их услугами. Конечно, пару раз у них были технические неполадки — но это бывает у всех. Кстати, спасибо поддержке в части оперативного решения этих проблем:)
Говоря о том, что нам там предлагают под наши цели — это виртуальные VPS сервера, расположенные в странах европы, России и США. С реальной скоростью соединения с сервером примерно 500 мбит/с и безлимитным трафиком (что очень важно для VPN сервера) .
1. Для начала вам нужно перейти по этой ссылке, зарегистрироваться и перейти в личный кабинет.
Обратите внимание! С 24 октября внутренней валютой сервиса стал Евро.Оплату точно также можно осуществлять в рублях, например, через СБП (комиссия 1%). И все рубли будут автоматически конвертироваться в евро по актуальному курсу ~100 руб.
2. Далее, нажмите на Виртуальный сервер, выберите нужную страну, тариф Shared и минимальную конфигурацию сервера.
3. На наш сервер нужно установить операционную систему Ubuntu 20.04— её и выберите. Отключите бекапы — тут они не нужны (в случае чего всё можно быстро переустановить) . Выберите период оплаты и, собственно, оплатите аренду.
Кстати, после регистрации по моей реферальной ссылке у вас в течении 24 часов будет бонус 15% к пополнению баланса.
Минуты 2-3 сервер будет активироваться и после на почту придут данные для авторизации для подключения к серверу. Либо, ip-адрес и пароль можно будет посмотреть в разделе мои услуги и нажать на название вашего сервера.
Пункт 2. Подключение к серверу по SSH и установка графической панели 3X-UI
1. Откройте командную строку (Windows) или терминал (MacOS) и введите следующую команду:
ssh root@ip_adress
где ip_adress — ip_адрес вашего сервера.
Если что, по SSH можно подключиться ещё в Linux и даже с Android устройства через программу JuiceSSH.
2. У вас спросят "Are you sure you want to continue connecting(yes/no/[fingerprint]) ? " — ответьте yes.
3. Введите пароль от сервера, который вам пришёл на почту. При вводе пароль не будет отображаться, поэтому лучше скопировать и вставить с помощью сочетаний клавиш: Cntl+V (Windows) или Command+V (MacOS)
4. Первым делом, необходимо обновить компоненты операционной системы Ubuntu до последней версии. Для этого введите следующую команду:
apt update && apt upgrade -y
5. Теперь установим Curl — эта утилита нужна для загрузки файлов и пакетов в терминале. Сделаем это с помощью этой команды:
apt install curl -y
6. И, неожиданно, сразу же установим панель 3X-UI. Мы это будем делать напрямую в ОС с помощью скрипта из официального репозитория на GitHub:
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
Этот скрипт можно использовать и для первоначальной установки и для обновления версии графической панели. Каждый раз используется последняя актуальная версия.
7. После завершения установки вам у вас спросят: Хотите ли вы внести дополнительные модификации — ответьте Y (да)
Вводим username - Любой какой вам нравится — я введу Revelix.
Вводим password — Любой более-менее надёжный и запомните его — тут я тоже введу Revelix (Если что, запомните регистр, если также будете вводить)
И наконец, вводим порт, через который будет работать панель 3X-UI. Лучше всего где-нибудь в верхнем конце диапазона, до 65535. Я введу 5580.
8. Готово! Графическая панель 3X-UI установлена на ваш сервер!
Пункт 3. Защита сервера
1. Для защиты нашей системы установим программу fail2ban — она нужна для блокировки IP-адресов при превышении количества попыток совершения какого-либо действия, например, неудачного ввода SSH-пароля.
apt install fail2ban -y && systemctl start fail2ban && systemctl enable fail2ban
2. Теперь, чтоб ещё лучше защитить свой сервер от несакционированно проникновения третьих лиц (или ботов) добавим нового пользователя с правами Root, а после чего отключим учётную запись root.
adduser user
где user - замените на своё имя пользователя. Я создам пользователя с названием Revelix.
3. Введите пароль для своей новой учётной записи. Лучше всего придумайте его с сочетанием верхнего регистра, нижнего регистра и цифр.
4. Далее вам будет предложено ввести информацию о вашем новом пользователе. Вы можете оставить их пустыми:
5. Добавьте новую учетную запись в группу sudo, введя:
usermod -aG sudo user
где user — также замените на своё ранее созданное имя пользователя.
6. Переключитесь на новую учётную запись с помощью команды:
su - user
где user — ваше новое имя пользователя.
7. Теперь заблокируем вход пользователя root по SSH. Для этого нужно отредактировать файл /etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
Введите ранее созданный пароль для этой учётной записи и нажмите Enter.
8. Затем, найдите (перемещайтесь с помощью стрелок на клавиатуре) директиву PermitRootLoginи при необходимости раскомментируйте (если она закомментирована)
Установите её значение равным no, как показано на скриншоте ниже:
После ввода изменений нажмите сочетание клавиш Cnrl + X, подвердите сохранение: Y
9. Как только вы закончите, сохраните и закройте файл. У вас должна появиться командная строка.
Затем перезапустите службу sshd, чтобы применить последние изменения в конфигурациях.
sudo service sshd restart
10. После этого можете попробовать подключиться через ssh root@ip-адрес, но у вас ничего не получится.
Поэтому, теперь вам можно будет подключится к серверу только с помощью новой учётной записи, так же в формате: ssh user@ip-адрес, где user — ваше ранее созданное имя пользователя, а ip_adress — ip-адрес вашего сервера.
Пункт 4. Создание протоколов в графической панели 3X-UI
1. Чтобы войти в веб версию панели, в браузере идём по адресу:
http://xxx.xxx.xxx.xxx:PORT/panel/
где xxx.xxx.xxx.xxx — IP-адрес вашего сервера, а PORT - номер вашего порта. В моём случае это порт 5580.
Обратите внимание, протокол http://, а не https://
2. Если вы всё сделали правильно, перед вами откроется окно ввода. Введите здесь Логин и пароль, который вы создали через командную строку.
3. Логинимся и видим вот такую красивую панель управления 3X-UI
4. Нажимаем на раздел Подключения, далее Добавить подключение.
5. И переходим к настройке VLESS с XTLS-Reality. Сделайте всё так, как я написал ниже и показал на скриншоте.
- Примечание — любое название
- Протокол — vless
- Порт IP — оставляем пустым
- Порт — вместо рандомного ставим 443
6. Далее переходим к настройкам Клиента.
- Email - Напишите название клиента. У меня это Revelix.
- Flow — надо выбрать xtls-rprx-vision. И, обратите внимание, поле Flow (см. скриншот) появится только после того, как чуть ниже вы поставите галочку на пункте Reality
- Протокол передачи: TCP
- AcceptProxyProtocol, HTTP Маскировка, Transparent Proxy, TLS — всё это должно быть выключено
- xVer — оставьте значение 0
- Reality — должно быть включено
- XTLS — наоборот, должно быть выключено. Возможно тут вам стало не понятно, так как Reality тоже относится к XTLS. Но, здесь под XTLS подразумеваются только устаревшие версии протокола. А переключатели XTLS и Reality в панели являются взаимоисключающими.
- uTLS — тут надо выбрать то, под какой браузер будет маскироваться наше VPN соединение. Но, можете выбрать chrome - так будет лучше всего.
- Домен — на самом деле это адрес для подключения к вашему серверу. Оставьте пустым, и тогда туда автоматически подставится IP-адрес сервера.
- Dest — это destination, то есть «назначение» — тут указываем домен и порт для переадресации google.com:443
- Server names — это домен, под который вы будете маскироваться. Меням на google.com,www.google.com
- ShortIds — это приватный ключ, сгенерируется автоматически.
- Public Key, Private Key — нажмите на кнопку Get new keys, и ключи сгенерируются автоматически.
- Sniffing, HTTP, TLS, QUIC, fakedns — оставьте включённым.
8. После того, как всё правильно сделали по инструкции, сравнили с моими скриншотами — нажимайтете кнопку Создать. Ивсё, настройка завершена!
По итогу имеем вот такую картину:
9. Если нажать на меню, то можно изменить, добавить одного или нескольких пользователей, сбросить трафик, экспортировать ключи и т. д.
10. Перед подключением устройств, которые будут использовать VPN соединение с сервером. Рекомендую вам зайти в настройки панели и поменять пароль, если он у вас не слишком сложный. А лучше всего включить ещё и секретный токен для максимальной безопасности(только не забудьте его сохранить в надёжном месте!)
Ну и плюс, сейчас, или после окончательной настройки можете покопаться в настройках, особенно в разделе Конфигурация Xray.
Пункт 5. Подключение клиентов
Чтобы долго не искать, выберите своё устройство, на котором вы хотите настроить VPN подключение:
Вариант 1. Подключение устройств на iOS (но не ниже 16 версии)
1. Скачайте приложение FoXray из AppStore по ссылке ниже:
2. В графической панели 3X-UI создайте нового клиента. Для этого: нажмите на кнопку Меню в ранее созданной конфигурации, далее Добавить пользователя. В поле Email напишите название клиента, например "Мой iPhone", а в пункте Flow выберите xtls-rprx-vision.
3. Раскройте (плюсиком) список клиентов и под «Меню» рядом с только что созданным клиентом «Мой iPhone» нажмите на иконку QR-кода.
4. Запустите приложение FoXray и в левом верхнем углу нажмите значок сканирования QR-кода и отсканируйте его с экрана компьютера.
5. Всё, профиль добавлен! Теперь нажмите на кнопку «Play», далее разрешите добавление конфигурации VPN, введите пароль и можете пользоваться VPN соединением.
Вариант 2. Подключение устройств на Android.
1. Скачайте приложение NekoBox c GitHub по этой ссылке (там будет самая актуальная версия, останется только выбрать архитектуру вашего процессора, но скорее всего это arm64-v8a — самая верхняя строчка)
2. В графической панели 3X-UI создайте нового клиента. Для этого: нажмите на кнопку Меню в ранее созданной конфигурации, далее Добавить пользователя. В поле Email напишите название клиента, например "Мой Android", а в пункте Flow выберите xtls-rprx-vision.
3. Раскройте (плюсиком) список клиентов и под «Меню» рядом с только что созданным клиентом «Мой Android» нажмите на иконку QR-кода.
4. Установите Apk файл (ранее скаченный с GitHub) и запустите приложение NekoBox и в правом верхнем углу нажмите на иконку добавления нового подключения.
5. Далее нажмите на Отсканировать QR-код и отсканируйте QR-код, который мы только что создали в графической панели. В списке профилей у вас должен появиться новый профиль.
6. Для активации VPN подключения нажмите на соответствующую кнопку на главном экране NekoBox и подтвердите подключение.
Вариант 3. Подключение устройств на MacOS
1. Скачайте приложение FoXray из AppStore по ссылке ниже:
2. В графической панели 3X-UI создайте нового клиента. Для этого: нажмите на кнопку Меню в ранее созданной конфигурации, далее Добавить пользователя. В поле Email напишите название клиента, например "Мой MacBook", а в пункте Flow выберите xtls-rprx-vision.
3. Раскройте (плюсиком) список клиентов и под «Меню« рядом с только что созданным клиентом »Мой MacBook» нажмите на иконку Информация.
4. Скопируйте ссылку для подключения под надписью URL, нажав на кнопку копирования.
5. Запустите приложение FoXray и нажмите на иконку вставки текста.
6. Готово, профиль добавлен! Теперь нажмите на кнопку "Play", далее разрешите добавление конфигурации VPN и можете пользоваться VPN соединением.
Вариант 4. Подключение устройств на Windows
1. Скачайте архив с программой Invisible Man XRay c GitHub по этой ссылке и распакуйте его (скачается сразу актуальная версия на момент написания этого поста, а вот по этой ссылкеможете уже сами выбрать нужную вам версию и скачать её)
2. В графической панели 3X-UI создайте нового клиента. Для этого: нажмите на кнопку Меню в ранее созданной конфигурации, далее Добавить пользователя. В поле Email напишите название клиента, например "Мой Windows", а в пункте Flow выберите xtls-rprx-vision.
3. Раскройте (плюсиком) список клиентов и под «Меню", рядом с только что созданным клиентом "Мой Windows» и нажмите на иконку Информация.
4. Скопируйте ссылку для подключение под надписью URL, нажав на кнопку копирования.
5. Отправьте любым удобным способом данную ссылку на ваш компьютер, и там также её скопируйте.
6. Запустите программу Invisible Man XRay и перейдите в Manage server configuration.
7. Нажмите на кнопку "плюс" в правом нижнем углу окна.
8. Выберите Import from link и вставьте вашу ссылку, которую вы ранее скопировали в поле.
9. Если вы всё правильно сделали, должна добавиться новая конфигурция. Закройте этот менеджер и нажмите кнопку Run.
10. Готово! VPN на компьютере под управлением операционной системы Windows мы тоже настроили без проблем.
Пункт 6. Тесты скорости
Скорость на скачивание 450 мбит/с, а на загрузку 280 мбит/с - думаю, это очень даже хороший результат, учитывая уровень шифрования и маскировки прокси-трафика.
Пункт 7. Заключение
Если вам понравился мой гайд — ставьте лайк под этим постом и пишите комментарии — буду очень рад услышать ваше мнение. Спасибо!
Теги: vpn, настройка vpn, vpn для пк, vpn tutorial, личный vpn, как сделать свой впн, собственный впн, 3x-ui, xtls reality, xray, vless, shadowsocks, как настроить vpn сервер, vpn сервер, vpn на сервере, личный vpn сервер, впн без блокировки, личный впн, впн на своём сервере, как настроить vpn, outline vpn, впн, впн сервер, свой vpn, vps