Skip to content

Эндпоинты ​

Эндпоинт — интерфейс, который одновременно служит и входом, и выходом. WireGuard, OpenVPN и OpenConnect — эндпоинты: пользователи подключаются к ним отдельным приложением для этого протокола, а панель выдаёт каждому пользователю файл конфигурации для импорта. Эндпоинты находятся в разделе Конфигурации ядра → Эндпоинты и, как инбаунды, доходят до узлов через Шаблоны.

Страница эндпоинтов: список тегов и типов эндпоинтов с адресом прослушивания и пулом клиентских адресов у каждогоСтраница эндпоинтов: список тегов и типов эндпоинтов с адресом прослушивания и пулом клиентских адресов у каждого

Обслуживание пользователей или исходящее подключение ​

Эндпоинт выполняет одну из двух задач, и какую — решает порт прослушивания:

  • С портом прослушивания он обслуживает ваших пользователей. Каждый пользователь его шаблона получает в нём учётную запись.
  • Без порта он клиент: узел подключается к другой сети, и маршрутизация может отправлять через него трафик, как через аутбаунд. Список помечает такой эндпоинт только клиент.
ТипОбслуживает пользователейПодключается наружу
wireguardда, с портом прослушиванияда, без него
openvpn-serverда
openconnect-serverда
openvpn-clientда
openconnectда
tailscaleвходит в сеть Tailscale

Столбец Адреса клиентов показывает пул, из которого пользователи получают адрес в туннеле.

WireGuard ​

Эндпоинту WireGuard, который обслуживает пользователей, нужны Address (CIDR list) — пул, из которого берутся адреса пользователей, — и Listen port (set to serve panel users). Private key сервера создаётся автоматически. Названия полей этой формы панель показывает по-английски на любом языке.

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

  • создаёт собственную пару ключей пользователя;
  • выдаёт ему постоянный адрес из пула, вычисленный из идентификатора учётной записи, поэтому он никогда не меняется и не совпадает с адресом другого пользователя;
  • добавляет пользователя как пира на каждом узле шаблона.

Поскольку адрес зависит от идентификатора учётной записи, пул должен доходить до вашего наибольшего идентификатора, а не только до числа пользователей. Учётная запись, чей идентификатор лежит за концом пула, не получает пира на этом эндпоинте. С 10.8.0.1/24 помещаются идентификаторы примерно до 250; для большой или давно работающей панели используйте пул побольше, например 10.8.0.1/16.

Добавление или удаление пользователя пересобирает эндпоинт WireGuard на его узлах, и подключённые клиенты WireGuard возвращаются примерно через двадцать секунд.

Параметры и клиентские приложения описаны в WireGuard.

OpenVPN и OpenConnect ​

Эндпоинт openvpn-server или openconnect-server проверяет каждого пользователя по имени и паролю его учётной записи. Оба отдают TLS, поэтому принимают сертификат, как TLS-инбаунд: в Сертификат TLS выберите сертификат узла, сертификат из хранилища Сертификаты или собственный сертификат эндпоинта.

На сервере OpenVPN Address (CIDR list) — пул адресов пользователей; Push: redirect gateway и Push: DNS servers определяют, отправляют ли клиенты через него весь трафик и какие резолверы используют. В OpenConnect пул задаётся в Client IP pool (CIDR), вместе с Pushed DNS servers и Split-include routes.

Сервер OpenVPN или OpenConnect без единого пользователя не запускается: панель не включает его в отправляемую конфигурацию, пока в его шаблоне не появится пользователь.

Параметры и клиентские приложения описаны в OpenVPN и OpenConnect.

Tailscale ​

Эндпоинт tailscale подключает узел к сети Tailscale с помощью Auth key. Он может включить Advertise routes (CIDR list) или Advertise as exit node и может использовать другое устройство как свой Exit node. Пользователей панели он не обслуживает; используйте его, чтобы добраться с узла до частной сети или отправить трафик наружу через неё.

Файлы конфигурации приложений ​

Пользователи WireGuard, OpenVPN и OpenConnect импортируют файл, а не ссылку. Панель собирает по одному файлу на пользователя, эндпоинт и узел:

ЭндпоинтФайлЧто в нём
WireGuard.confСобственные закрытый ключ и адрес пользователя, открытый ключ и адрес сервера
OpenVPN.ovpnСертификат сервера и имя и пароль пользователя, встроенные в файл
OpenConnect.txtАдрес сервера и имя и пароль пользователя

Пользователи находят эти файлы в двух местах:

  • На своей странице подписки, у каждого файла есть QR-код, текст и кнопка скачивания.
  • Вы можете выдать их из строки пользователя: QR / ссылки открывает Клиентские приложения, где у каждого файла есть Сохранить файл и QR-код. Файл, слишком большой для QR-кода, предлагается только текстом и для скачивания.

В файле конфигурации указан один адрес. Это первый, основной адрес для ссылок узла, поэтому изменение порядка адресов для ссылок узла меняет файлы, которые пользователи скачают после этого. В уже сохранённых файлах остаётся старый адрес; отправьте пользователям новый файл. См. Узлы.

Эндпоинты отдельного узла ​

Поверх шаблона узел может нести собственные эндпоинты — в разделе Эндпоинты узла его панели Конфигурация. Типичный случай — клиент WireGuard к вышестоящей сети, которым должен пользоваться только один сервер.

Изменение и удаление ​

Изменения доходят до всех узлов, которые содержат эндпоинт. Дублировать копирует эндпоинт под новым тегом и портом прослушивания. Панель отказывается удалять эндпоинт, на который ещё ссылается правило маршрутизации или аутбаунд по умолчанию шаблона, и перечисляет эти ссылки.

Текст и изображения — CC BY 4.0.