nmcli не удается подключиться к серверу openvpn с использованием пароля+totp.

Вопрос или проблема

У меня есть файл openvpn conf.ovpn, импортированный в nmcli с использованием
nmcli connection import type openvpn file ./conf.ovpn

Я открыл графический интерфейс Networkmanager и установил имя пользователя для этого соединения.

Я пытаюсь подключиться к VPN, используя
sudo nmcli c up conf --ask

Когда запрашивается пароль, я ввожу Пароль + TOTP

У меня две машины, настроенные с этой конфигурацией: одна работает на Linux Mint 22.1, другая на Arch.

На машине с Arch указанный процесс приводит к успешному подключению.

На машине с Mint я вижу AUTH: Received control message: AUTH_FAILED, а затем запрос на повторный ввод пароля. Версия nmcli на Mint: nmcli tool, version 1.46.0
Версия на Arch: nmcli tool, version 1.52.0-1

Примечание: этот процесс работал на Linux Mint 21.3

На машине с Mint я могу подключиться, используя openvpn --config conf.ovpn. Таким образом, проблема, кажется, либо в nmcli, либо во взаимодействии с openvpn.

Любая помощь или подсказка о том, как отладить и решить эту проблему, будет оценена.

Ответ или решение

Ваше описание проблемы предлагает важное различие в работе конфигурации VPN на двух различных системах. Внимательное изучение этого вопроса может помочь идентифицировать, где именно возникают проблемы, и как их исправить. Давайте разберем возможные причины и подходы к решению, используя методику TEA (Теория, Пример, Применение).

Теория

Начнем с теоретической части. NetworkManager является распространенным инструментом для управления сетевыми подключениями на Linux, включая VPN. OpenVPN использует различные протоколы аутентификации, и в вашем случае это комбинация стандартного пароля и одноразового пароля (TOTP). Такая система требует точной синхронизации времени и корректного представления похоже с Password + TOTP.

При использовании команды nmcli для соединения с VPN, NetworkManager может обрабатывать аутентификационные запросы иначе, чем непосредственное использование команды openvpn. Ошибка AUTH_FAILED обычно указывает на то, что соединение с сервером было установлено, но сервер отказал в аутентификации, возможно, из-за неверных учетных данных или неправильной структуры передаваемого пароля.

Ваша ситуация также затрагивает разницу в версиях nmcli, что может быть значительным фактором. Различия в версиях могут включать в себя изменения в обработке протоколов, настройки времени, или порядке запросов аутентификации. Обнуление и обновление конфигураций и регулярные изменения в версиях, такие как переходы от одной сборки к другой, также могут затруднить работу утилиты.

Пример

Давайте рассмотрим возможный сценарий на примере.

На системе Arch с nmcli версии 1.52.0-1 ваша схема с Password + TOTP работает исправно. При этом на Linux Mint с версией nmcli 1.46.0 данный процесс выдаёт ошибку. Это может свидетельствовать о том, что обновленная версия утилиты помогает или правильно обрабатывает определенные детали аутентификации, такие как разрывание строки или скрытые символы, что было проблемой в более старой версии.

Точно так же, поскольку команда openvpn --config conf.ovpn на Linux Mint работает успешно, это указывает на правильность базового конфигурационного файла и исходных учетных данных. Однако взаимодействие между nmcli и NetworkManager на данной версии системы может быть непоследовательным.

Применение

Теперь перейдем к практическим предложениям по решению этой проблемы.

  1. Обновление: Попробуйте обновить nmcli на вашей системе Linux Mint до последней версии, которая, вероятно, находится ближе к той, что установлена на Arch. Это обеспечит коррекцию возможных багов и синхронизацию функциональности.

  2. Тестирование конфигураций и времени: Убедитесь, что время на вашей системе Linux Mint синхронизировано с сервером. Ошибки в одноразовых паролях могут произойти из-за расхождения времени. Используйте инструменты, такие как ntpdate, чтобы проверить синхронность.

  3. Проверка конфигурационного файла: Убедитесь, что конфигурационный файл не содержит лишних строковых символов или специфик, которые могли бы отличаться от того, что ожидает более старая версия nmcli. Попробуйте экспортировать конфигурацию из Arch и импортировать заново на Mint.

  4. Логи: Просмотрите логи OpenVPN и NetworkManager для поиска более точной информации об ошибке аутентификации. Это может пролить свет на этапы, на которых она проваливается.

  5. Альтернативные методы аутентификации: Если обновление и проверка конфигураций не помогли, рассмотрите возможность использования других методов аутентификации, например, установки использования отдельного файла для пароля и TOTP, чтобы nmcli передавал данные верно.

Таким образом, базируясь на теоретических основах и примерах, вы можете применить предложенные методы, чтобы достичь успешного результата и устойчивого соединения через VPN на обеих системах.

Оцените материал
Добавить комментарий

Капча загружается...