Эндпоинты
Эндпоинт — интерфейс, который одновременно служит и входом, и выходом. 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 только в шаблоне, назначенном одному узлу. Каждая учётная запись на шаблонах, которые его выбирают, становится одним из его пиров; об этом же напоминает подсказка у Listen port в форме.
Параметры и клиентские приложения описаны в WireGuard.
OpenVPN и OpenConnect
Эндпоинт openvpn-server или openconnect-server проверяет каждого пользователя по имени и паролю его учётной записи. Оба отдают TLS, поэтому принимают сертификат, как TLS-инбаунд: в Сертификат TLS выберите сертификат узла, сертификат из хранилища Сертификаты или собственный сертификат эндпоинта.
Поля сертификата видны, только пока в Сертификат TLS выбран собственный сертификат эндпоинта; остальные настройки TLS находятся под ним.
На сервере OpenVPN Address (CIDR list) — пул адресов пользователей. Передача клиентам определяет, отправляют ли клиенты через него весь трафик и какие резолверы используют, а при включённом переключателе Защита канала управления проба без ключа не получает ответа; файл каждого пользователя содержит нужный ключ. В OpenConnect пул задаётся в Client IP pool (CIDR), вместе с Pushed DNS servers и Split-include routes.
Параметры из + Добавить параметр в основном начинают со значения, которое узел и так использует без них, поэтому добавление ничего не меняет, пока вы не измените значение; исключения названы в OpenVPN и OpenConnect.
Сервер OpenVPN в режиме tls или сервер OpenConnect без единого пользователя не запускается: панель не включает его в отправляемую конфигурацию, пока в его шаблоне не появится пользователь. Сервер OpenVPN со статическим ключом пользователей не имеет и запускается как есть.
Параметры и клиентские приложения описаны в OpenVPN и OpenConnect.
Подключение наружу
В разделе Серверы эндпоинта openvpn-client перечислены серверы, которые перебираются по порядку (или случайно), пока один не ответит; у каждого свой порт и сеть, а порядок меняется перетаскиванием сервера за ручку. В режиме tls он принимает имя пользователя и пароль, сертификат CA сервера и, в разделе Защита канала управления, ключ, выданный оператором сервера. В режиме static_key — статический ключ, шифр и адреса туннеля. Сжатие предлагается для старых серверов, которые без него не подключаются, с предупреждением: в зашифрованном туннеле оно раскрывает передаваемое.
Эндпоинт openconnect может отвечать на второй фактор через раздел Одноразовый пароль (TOTP или RSA SecurID), а на дополнительные поля входа — через раздел Ответы для формы входа, ведь на узле некому их вводить. Сертификаты вставляются текстом; форма не ссылается ни на какой файл на узле.
Tailscale
Эндпоинт tailscale подключает узел к сети Tailscale с помощью Auth key; для сервера Headscale заполните ещё Control server URL (Headscale). Он может включить Advertise routes (CIDR list), Advertise tags или Advertise as exit node и может использовать другое устройство как свой Exit node. Пользователей панели он не обслуживает; используйте его, чтобы добраться с узла до частной сети или отправить трафик наружу через неё.
Узел хранит вход этого эндпоинта в своём каталоге кэша, который сохраняется при переустановке. Если кэш очистить, эндпоинт войдёт заново со своим auth key как новое устройство, поэтому используйте многоразовый ключ (ephemeral или нет); уже использованный одноразовый ключ нужно заменить новым. Новый тег, auth key или сервер управления тоже означают новый вход, как новое устройство.
Файлы конфигурации приложений
Пользователи WireGuard, OpenVPN и OpenConnect импортируют файл, а не ссылку. Панель собирает по одному файлу на пользователя, эндпоинт и узел:
| Эндпоинт | Файл | Что в нём |
|---|---|---|
| WireGuard | .conf | Собственные закрытый ключ и адрес пользователя, открытый ключ и адрес сервера |
| OpenVPN | .ovpn | Сертификат сервера, имя и пароль пользователя и, с защитой канала управления, его ключ — один общий ключ сервера, а с tls_crypt_v2 собственный ключ пользователя, — встроенные в файл |
| OpenConnect | .txt | Адрес сервера и имя и пароль пользователя |
Пользователи находят эти файлы в двух местах:
- На своей странице подписки, у каждого файла есть QR-код, текст и кнопка скачивания.
- Вы можете выдать их из строки пользователя: QR / ссылки открывает Клиентские приложения, где у каждого файла есть Сохранить файл и QR-код. Файл, слишком большой для QR-кода, предлагается только текстом и для скачивания.
В файле конфигурации указан один адрес. Это первый, основной адрес для ссылок узла, поэтому изменение порядка адресов для ссылок узла меняет файлы, которые пользователи скачают после этого. В уже сохранённых файлах остаётся старый адрес; отправьте пользователям новый файл. См. Узлы.
Эндпоинт только для одного узла
Эндпоинт попадает на узлы, шаблон которых его выбирает. Для клиента WireGuard к вышестоящей сети, которым должен пользоваться только один сервер, дайте этому узлу собственный шаблон, который его выбирает. См. Шаблоны.
Изменение и удаление
Изменения доходят до всех узлов, которые содержат эндпоинт. Дублировать копирует эндпоинт под новым тегом и портом прослушивания. Панель отказывается удалять эндпоинт, на который ещё ссылается правило маршрутизации или аутбаунд по умолчанию шаблона, выбирающего этот эндпоинт, и перечисляет эти ссылки.
Связанные страницы
- WireGuard, OpenVPN и OpenConnect: подробности протоколов.
- Шаблоны: как эндпоинты доходят до узлов и пользователей.
- Сертификаты: сертификаты для OpenVPN и OpenConnect.
- Подписки и страница подписки: страница подписки, на которой предлагаются файлы.
