У вас есть wg0.conf и клиент, который принимает только .ovpn, поэтому кто-то предлагает преобразовать файл. Переименование даёт профиль, который OpenVPN не может разобрать, а аккуратный перевод поле за полем даёт такой, который разбирается и затем срывается на рукопожатии. Причина не в формате файла. WireGuard и OpenVPN — разные протоколы с разными рукопожатиями, разными моделями аутентификации и разным представлением о том, что такое пир. Преобразование работает только в том смысле, что вы можете попросить профиль OpenVPN у того, кто обслуживает удалённую сторону.

Файл, который у вас есть, описывает пира, а не профиль подключения

Конфигурация WireGuard коротка, потому что таков протокол: интерфейс с закрытым ключом и адресами, затем один или несколько пиров с открытым ключом, конечной точкой и списком AllowedIPs. Здесь нет слоя согласования, который нужно настраивать, и нет набора шифров, который нужно выбирать.

Профиль OpenVPN — это клиент канала управления на основе TLS, поэтому в нём есть ссылки на сертификаты или учётные данные и директивы, описывающие способ аутентификации.

Почему переведённый файл всё равно срывается на рукопожатии

WireGuard начинает с рукопожатия на основе Noise, привязанного к статическим ключам пиров, и молчит, пока открытый ключ пира ещё не известен. OpenVPN открывает сеанс TLS, проверяет сертификат сервера или статический ключ, а затем аутентифицирует пользователя сертификатами, именем и паролем или тем и другим. Ничего в файле WireGuard этого не описывает. Переведённый файл нёс бы правильную конечную точку и всё остальное неправильно.

Повторное использование адреса и порта тоже не поможет, потому что удалённая сторона ждёт другой пакет.

Что спросить у провайдера

Если файл WireGuard выдал провайдер, спросите, есть ли у той же учётной записи доступ к OpenVPN, и попросите этот профиль. У многих есть, и он приходит со своими учётными данными, а не как изменённая копия первого.

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

Если роутер или клиент умеет только OpenVPN

Когда устройство, которому нужно подключиться, поддерживает только OpenVPN, проверьте документированную поддержку протоколов удалённой стороны, прежде чем искать другое расширение. Роутер, который завершает OpenVPN, не удастся уговорить принимать WireGuard импортом файла. Рабочие варианты — конечная точка OpenVPN на стороне сервера или другое устройство, говорящее на WireGuard.

Выбирайте по тому, кто администрирует удалённую сторону, а не по тому, какой файл у вас оказался.

Если сервер ведёте вы, добавьте протокол

Поддержка второго протокола означает запуск второй службы. На сервере Linux это экземпляр OpenVPN с собственным CA, серверным сертификатом, клиентскими сертификатами и директивами server и push, а также правилом межсетевого экрана для его порта. Существующая запись пира WireGuard не описывает ни одного из этих объектов. Планируйте пул адресов и проталкиваемые маршруты отдельно от AllowedIPs WireGuard, потому что это не один и тот же механизм под двумя именами.

Затем проверьте с клиента: профиль загружается, сеанс TLS завершается, проталкиваемый маршрут появляется, и трафик доходит до узла, доступного только через туннель.

Где идея конвертера безопасна

Переписывать значения вручную в заметки — нормально и часто полезно, потому что конечная точка, адреса и открытый ключ пира — просто факты о развёртывании. Загружать закрытый ключ на сайт, который обещает преобразование, — ненормально, потому что этот ключ и есть учётные данные, а у сервиса нет протокола, в который его преобразовывать. Если вам нужен тот же доступ из клиента OpenVPN, попросите учётные данные OpenVPN.

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

Похожие статьи