В прошлой статье мы говорили об установке и настройке 3xui панели для Xray, сегодня внесем еще некоторые настройки которые позволят использовать панель чуть более удобно, а так же разрулим трафик, что бы не гонять лишний через прокси.
Подписка нужна для того что бы клиенты автоматически скачивали обновления для подключений, без дополнительной перенастройки или пересоздания подключения. В каждой подписке будут сгенерированы все подключения для пользователя, т.к. их может быть несколько с разными настройками. А все распространенные клиентские приложения могут это использовать и скачивать себе обновления настроек для подключений и при каких-либо изминениях не придется заново рассылать везде конфиги.
Для активации подписки я настоятельно советую завести доменное имя для сервера, т.к. гонять вот так конфиги с самоподписным сертификатом это совсем не хорошо. И инструкция работает для серверов с действительным доменным именем.
Для собственных нужд подойдет бесплатный саб домен третьего уровня, как его получить я рассказывал в одной из прошлый статей на пикабу, если коротко то:
- авторизуемся/регистрируемся
- добавляем домен и закрепляем за ним IP вашего сервера.
По этому доменному имени сразу станет доступна и сама панель. Теперь нам нужно выпустить для него сертификат, для этого нужно зайти по доменному имени и порту,(https://ваш_домен:ваш_порт) и веб сервер получит его автоматически. При заходе будет небольшая задержка.
Веб сервер caddy хранит сертификаты по следующему пути, зайдите на сервер по ssh и проверьте что все на месте, т.к. они нам понадобятся:
/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/ваш_домен/
Проверили - продолжаем. Идем в панель, авторизуемся и заходим в Настройки -> Подписка
Включаем службу, выбираем шифровать конфиги, адрес для прослушивания оставляем пустым, порт нужно поменять на любой другой, главное не пересечься с уже используемыми портами. Посмотреть на сервере список используемых портов можно командой ss -ntlp.
Указываем путь до SSL сертификата, лежит в указанной выше директории, называется ваш_домен.crt и его ключа в той же директории ваш_домен.key.
Даллее нужно открыть порт на фаерволе сервера
ufw allow ПОРТ_КОТОРЫЙ_ВЫ_ВЫБРАЛИ_ДЛЯ_ПОДПИСКИ/tcp
Далее сохраняем конфиг панели и перезапускаем ее.
Теперь в настройках каждого клиента появится поле Subscription, где можно указать для каждого пользователя уникальное значение, по которому будет формироваться ссылка на подписку
При этом если для пользователя будет несколько клиентских подключений, нужно указывать всегда это уникальное значение, и они все будут доступны ему по сгенерированной ссылке.
Ссылку можно посмотреть и скопировать в разделе Информация у каждого пользовательского подключения
К сожалению т.к. подписка сделана напрямую без реверспроксирования, x-ui нужно будет переодически перезагружать, сделать это можно по крону или добавив пару строк в systemd юнит x-ui. Я уже плотно перешел на использование юнитов и таймеров systemd поэтому покажу пример для нее
Открываем файл /etc/systemd/system/x-ui.service
nano /etc/systemd/system/x-ui.service
и в секцию [Service] добавляем строчку
RuntimeMaxSec=86400s
а строчку Restart меняем на
Сохраняем, выходим и говорим systemd перечитать изменения и перезапускаем x-ui
systemctl daemon-reload
systemctl restart x-ui
Теперь ссылку на подписку можно скармливать клиентам, для некобокс это делается так же копипастом в интерфейс, возможно потребуется удалить уже настроенный профайл, в мобильных клиентах это отдельные разделы. Для nekoray - Копируем ссылку в панели для пользователя, запускаем приложение, и просто по Ctrl+V вставляем, нажимаем ОК
Наше подклчение получено по подписке, можно запускать и пользоваться
Для FoXray - Заходим в раздел Subscriptions и добавляем по плюсику, переслать и скопировать ссылку можно через какой-либо мессенджер.
Теперь про Android - я немного опростоволосился, и не смог добавить ни подписку ни правила маршрутизации(о которых ниже) в приложении NecoboxForAndroid, решил попробовать в приложении v2rayNG и там все получилось в пару нажатий. Это приложение можно поставить из магазина напрямую. Поэтому далее инструкция для него. В панели открываем QR-код пользователя, его можно скопировать и отправить на телефон, или сразу же отсканировать устройством, после активации подписки будет показываться два кода, один для подключения, один для подписки.
Далее открываем приложение v2rayNG на телефоне, в правом верхнем углу тыкаем на плюсик и выбираем Импорт профиля из QR-кода
Далее выбираем отсканировать или открыть код из файла
Сканируем QR-код подписки, но сразу подключение не добавится, нужно дать команду на обновление подписки. Жмем по трем точкам в правом верхнем углу и выбираем Обновить подписку
Наше подключение появится и можно его запускать. Далее если произошли какие-то изменения в настройках подключения для пользователя со стороны сервера эти обновления автоматически скачаются.
Теперь хорошо бы сделать что бы трафик до российских доменов напрямую, для этого открываем nekoray, идем в Preferences - Routing settings - Simple route - Custom route
И в появившемся окне Json Editor прописываем следующее:
{
"rules": [
{
"domain_suffix": [
".ru"
],
"outbound": "direct"
}
]
}
Сохраняем, проверяем, например сайт https://2ip.ru должен теперь показывать ваш домашний адрес, а https://whatismyipaddress.com/ адрес вашего сервера
Для FoXray все чуть проще, нужные правила там уже есть, осталось их только активировать. В самом верху главной страницы приложения заходим в Routing & DNS
Тут уже создан первый набор правил, называется он Simple проваливаемся в него и приводим к следующему виду и не забываем сохранить
Далее активируем набор правил и сохраняем
Можно активировать и подключение и проверить опять же на сайтах https://2ip.ru и https://whatismyipaddress.com/
Для v2rayNG все так же не сложно
Идем в настройки, и мотаем до блока с маршрутизацией, сразу меняем Доменную стратегую на AsIs и заходим в Пользовательские правила
В правилах переходим на вкладку Прямые и вводим domain:ru и не забываем сохранить нажатием на галочку
Далее возвращаемся на главный экран, перезапускаем подключение и проверяем.
На этом на сегодня все, спасибо за внимание
На случай если когда-нибудь статью удалят, в связи с изменениями в законодательстве, то вот вам ссылка на телеграм канал где так же будут появлятся гайды и обновления по этой теме
А если вы хотите сказать спасибо за статью, вы можете приобрести сервер по моей реферальной ссылке у компании veesp https://secure.veesp.com/?affid=860 со скидкой 15% по промокоду OCTOBER2023