Вопрос или проблема
Я немного новичок в Linux. Извините, если этот вопрос выглядит слишком простым, но я не смог найти решение нигде…
У меня есть хост-машина с Windows 10, на которой установлен Virtualbox.
Есть две гостевые машины: одна с Windows 7, другая с Linux Ubuntu 18.04.3.
Существует VPN, к которому я хочу подключить гостевые машины, используя openvpn. Обе гостевые машины были настроены с использованием одного и того же конфигурационного файла .ovpn.
Когда я подключаюсь через машину с Windows 7, подключение проходит идеально. Когда я подключаюсь через Ubuntu, кажется, что соединение устанавливается, переключатель на экране настроек сети становится оранжевым (включено), но через минуту появляется сообщение в верхней части экрана “Сбой подключения VPN”, и переключатель возвращается в серый (выключено) цвет.
Причина не отображается на экране, поэтому я посмотрел логи через
grep VPN /var/log/syslog
Но я не смог найти помощь по причине. Это был вывод (если я могу прикрепить его как файл, думаю, это было бы более организованно):
Aug 14 11:24:35 WMS NetworkManager[587]: <info> [1565792675.5731] keyfile: add connection /etc/NetworkManager/system-connections/SCVPN_Oficial-a823c733-585b-4b36-96e2-a8c99a35c62c (a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial")
Aug 14 11:24:35 WMS NetworkManager[587]: <info> [1565792675.5761] audit: op="connection-add" uuid="a823c733-585b-4b36-96e2-a8c99a35c62c" name="SCVPN_Oficial" pid=4548 uid=1000 result="success"
Aug 14 11:24:39 WMS NetworkManager[587]: <info> [1565792679.5181] audit: op="connection-activate" uuid="a823c733-585b-4b36-96e2-a8c99a35c62c" name="SCVPN_Oficial" pid=4548 uid=1000 result="success"
Aug 14 11:24:39 WMS NetworkManager[587]: <info> [1565792679.5317] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: Started the VPN service, PID 6628
Aug 14 11:24:39 WMS NetworkManager[587]: <info> [1565792679.5483] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: Saw the service appear; activating connection
Aug 14 11:24:39 WMS NetworkManager[587]: <info> [1565792679.6750] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN plugin: state changed: starting (3)
Aug 14 11:24:39 WMS NetworkManager[587]: <info> [1565792679.6752] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN connection: (ConnectInteractive) reply received
Aug 14 11:24:39 WMS nm-openvpn[6634]: WARNING: file '/home/vinicius/Oficial_Starcamp_VPN/<certificate_file_name_here>.key' is group or others accessible
Aug 14 11:24:39 WMS nm-openvpn[6634]: OpenVPN 2.4.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on May 14 2019
Aug 14 11:24:43 WMS NetworkManager[587]: <info> [1565792683.4375] audit: op="connection-delete" uuid="78f77d40-f5ce-4491-8358-1e2b53fd5782" name="SCVPN_Oficial" pid=4548 uid=1000 result="success"
Aug 14 11:25:40 WMS NetworkManager[587]: <warn> [1565792740.1467] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN connection: connect timeout exceeded.
Aug 14 11:25:40 WMS NetworkManager[587]: <warn> [1565792740.1515] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN plugin: failed: connect-failed (1)
Aug 14 11:25:40 WMS NetworkManager[587]: <info> [1565792740.1517] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN plugin: state changed: stopping (5)
Aug 14 11:25:40 WMS NetworkManager[587]: <info> [1565792740.1518] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN plugin: state changed: stopped (6)
Aug 14 11:25:40 WMS NetworkManager[587]: <info> [1565792740.1553] vpn-connection[0x555efa462390,a823c733-585b-4b36-96e2-a8c99a35c62c,"SCVPN_Oficial",0]: VPN service disappeared
Есть информация о тайм-ауте, но я не могу определить причину.
Ища дополнительную информацию или решение, я попытался запустить VPN через командную строку:
sudo openvpn --config SCVPN_Oficial.ovpn --verb 10 > conn.log
Через некоторое время отсутствия ответа я отправил ^C. Созданный лог ниже (удаленный IP скрыт).
У кого-нибудь есть идеи, что мне попробовать?
Может быть дело в разрешениях при установке клиента OpenVPN для Linux? так как он не создавал TUN.
Поэтому я создал его сам (это была актуальная проблема):
ip tuntap add name tun0 mode tun
ip link show
Если ваша версия ip
не поддерживает tuntap
, используйте tunctl
как указано здесь:
https://serverfault.com/a/347900
Источник: https://www.naturalborncoder.com/virtualization/2014/10/17/understanding-tun-tap-interfaces
Альтернативное решение – попробовать официальный клиент openvpn3-linux и установщик, который должен настроить все за вас: https://github.com/OpenVPN/openvpn3-linux
имеет очень полезные команды отладки, например:
openvpn3-admin version --services
openvpn3 config-import --config profile.udp.ovpn --persistent
openvpn3 config-manage --config profile.udp.ovpn --enable-legacy-algorithms true --show
openvpn3 session-start --config profile.udp.ovpn
openvpn3 sessions-list
openvpn3 session-manage --config profile.udp.ovpn --disconnect
.
Ответ или решение
Когда OpenVPN-клиент не подключается на машине с Ubuntu 18.04.3, но успешно работает на машине с Windows 7, необходимо определить причину данной проблемы. Рассмотрим основную теорию, примеры и возможные решения этой проблемы.
Теория
Основной проблемой в вашем случае может быть отсутствие правильной настройки интерфейса TUN/TAP на Ubuntu. Интерфейсы TUN (виртуальные сетевые устройства) необходимы для работы OpenVPN, так как они создают туннель для передачи данных. Если эти интерфейсы не созданы или неправильно настроены, соединение будет завершаться с ошибкой.
Кроме того, могут возникнуть проблемы с разрешениями или конфигурацией, которые мешают полноценной работе OpenVPN на Ubuntu, так как на Windows он подключается корректно с теми же параметрами.
Пример
Ваши логи показывают сообщения о тайм-ауте соединения, что может указывать на отсутствие TUN-интерфейса. Также имеется предупреждение о доступности ключевого файла для группы или других пользователей, что может свидетельствовать о проблемах с разрешениями.
Применение
-
Проверка интерфейса TUN/TAP:
Убедитесь, что интерфейс TUN создан и активен. Вы уже попробовали создать его вручную, что является правильным шагом. Используйте команду:ip tuntap add dev tun0 mode tun ip link set tun0 up
Проверьте, активен ли интерфейс, командой
ip link show
. -
Права доступа:
Убедитесь, что ваш .key файл защищен строгими правами доступа:chmod 600 /path/to/your/keyfile.key
Это предотвращает доступ к нему других пользователей, кроме владельца.
-
Использование openvpn3:
Рассмотрите установку и использование более новой версии клиента OpenVPN —openvpn3-linux
. Это может помочь упростить процесс настройки:openvpn3 config-import --config SCVPN_Oficial.ovpn openvpn3 session-start --config SCVPN_Oficial.ovpn
Эта версия также предлагает улучшенные средства для отладки, которые помогут лучше понять и решить проблему.
-
Логи и отладка:
Продолжайте использовать повышенный уровень подробности логов для диагностики:sudo openvpn --config SCVPN_Oficial.ovpn --verb 5
Изучите полученные логи для обнаружения возможных ошибок в конфигурации или проблем с подключением.
Следуя этим шагам, вы сможете лучше диагностировать и устранить проблему с подключением OpenVPN на Ubuntu. Если, несмотря на это, проблема остаётся, возможно, потребуется пересмотреть политику безопасности на хосте или проверить наличие блокировок на пути следования трафика (например, фаерволом).