Как исправить ошибку OpenVPN при использовании network-manager-openvpn-gnome?

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

Мне нужно подключиться к некоторой VPN через OpenVPN.

Я использую Bionic.

Это работает, когда я запускаю команду от имени sudo из терминала

~$ sudo openvpn --config somevpn.ovpn
...
Sun Jun 10 22:35:31 2018 TUN/TAP device tap0 opened
Sun Jun 10 22:35:31 2018 do_ifconfig, tt->did_ifconfig_ipv6_setup=0
Sun Jun 10 22:35:31 2018 /sbin/ip link set dev tap0 up mtu 1500
Sun Jun 10 22:35:31 2018 Initialization Sequence Completed

без sudo не удается

~$ openvpn --config somevpn.ovpn
...
Sun Jun 10 22:34:55 2018 ERROR: Cannot ioctl TUNSETIFF tap: Operation not permitted (errno=1)
Sun Jun 10 22:34:55 2018 Exiting due to fatal error

Ок, только sudo может создать устройство TUN/TAP. Я добавил пользователя в группу vpn и добавил эту группу в sudoer

%nm-openvpn ALL=NOPASSWD: /usr/sbin/openvpn

Но это помогает только в терминале, то есть пользователю не нужно вводить пароль при запуске команды. Это не помогает при попытке запустить VPN соединение через network-manager-openvpn-gnome.

network-manager-openvpn-gnome сообщает о тайм-ауте через несколько секунд после активации этого VPN соединения.

Как мне успешно запустить это VPN соединение через графический интерфейс?

Пожалуйста, проверьте ваш файл журнала на наличие сообщения об ошибке. У меня была похожая ошибка при попытке запустить ‘openvpn’ из командной строки. Однако при чтении файла журнала ошибка казалась связанной с невозможностью найти сертификаты.

В этом случае я переместил свои файлы в папку ‘Documents’, повторно импортировал файл через Network Manager, и тогда он заработал ожидаемо.

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

Чтобы решить проблему, связанную с ошибкой при использовании OpenVPN через network-manager-openvpn-gnome, следует учесть несколько ключевых моментов, основанных на предоставленном описании проблемы.

Теория (Theory)

Проблема, с которой вы столкнулись, заключается в том, что OpenVPN требует административных прав для создания устройства TUN/TAP. Обходной путь с использованием sudo в терминале работает, поскольку выполняется команда с повышением привилегий. Однако Network Manager, используемый через network-manager-openvpn-gnome, по умолчанию не выполняет команды с повышенными привилегиями, что приводит к тайм-ауту при попытке установления VPN-соединения.

Пример (Example)

На основе вашего описания, проблемы в терминале решены добавлением пользователя в группу и предоставлением необходимых привилегий без пароля через файл sudoers. Однако это решение не применяется автоматически к Network Manager, который работает в контексте обычного пользователя без привилегий суперпользователя.

Применение (Application)

  1. Проверьте права доступа к файлам конфигурации и сертификатам: Убедитесь, что файлы конфигурации (.ovpn) и любые связанные сертификаты и ключи имеют правильные права доступа и расположены в папке, к которой Network Manager имеет доступ. Переезд файлов в папку Documents, как упомянуто в вашем сообщении, может быть решением, если проблема связана с доступом к файловой системе.

  2. Очистите и повторно настройте соединение: Удалите существующую конфигурацию VPN из Network Manager и добавьте её заново. При этом важно убедиться, что все пути к сертификатам и ключам указаны правильно.

  3. Используйте PolicyKit: Для того чтобы Network Manager мог использовать администратора OpenVPN без ввода пароля, может потребоваться создать или отредактировать PolicyKit правило. Это можно сделать в файле /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy. Необходимо добавить правила, которые предоставляют необходимые привилегии.

  4. Проверьте логи: Если проблему не удалось решить, внимательно изучите лог файлы OpenVPN и Network Manager. Лог может содержать более подробную информацию о причине ошибки. Логи можно найти в /var/log/syslog или через journalctl.

  5. Обновите и перепроверьте версии: Иногда проблемы могут быть вызваны определёнными версиями программного обеспечения. Убедитесь, что system и Network Manager обновлены до последних стабильных версий.

Следуя этим рекомендациям, есть высокая вероятность, что вы сможете решить проблему, и ваш Network Manager успешно подключит VPN через графический интерфейс без необходимости использования терминала.

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

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