Вопрос или проблема
После обновления до Ubuntu 22.10 openvpn не может подключиться к серверу в качестве клиента, используя тот же старый рабочий профиль ovpn из Ubuntu 22.04 LTS.
Я постоянно получаю ошибку:
2022-10-20 20:10:04 TCPv4_CLIENT link remote: [AF_INET]xx.xxx.xxx.xxx:1194
2022-10-20 20:10:04 Connection reset, restarting [0]
2022-10-20 20:10:04 SIGUSR1[soft,connection-reset] received, process restarting
Я попытался переустановить openvpn, но это не помогло.
Моя конфигурация:
client
dev tun
proto tcp
remote xx.xxx.xxx.x 1194
user nobody
group nogroup
persist-key
persist-tun
pkcs12 /home/dyedfox/openvpn/opvn-client1.p12
auth-user-pass /home/dyedfox/openvpn/auth.cfg
askpass /home/dyedfox/openvpn/keypass.cfg
remote-cert-tls server
route 10.0.0.0 255.255.0.0 10.8.8.1
route 10.176.64.16 255.255.255.248 10.8.8.1
route 10.210.4.200 255.255.255.248 10.8.8.1
cipher AES-256-CBC
Не могли бы вы помочь мне с этой проблемой?
П.С. Полный вывод:
2022-10-20 21:36:40 DEPRECATED OPTION: --cipher set to 'AES-256-CBC' but missing in --data-ciphers (AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305). OpenVPN игнорирует --cipher для переговоров по шифрам.
2022-10-20 21:36:40 WARNING: file '/home/dyedfox/openvpn/opvn-client1.p12' is group or others accessible
2022-10-20 21:36:40 WARNING: file '/home/dyedfox/openvpn/keypass.cfg' is group or others accessible
2022-10-20 21:36:40 WARNING: file '/home/dyedfox/openvpn/auth.cfg' is group or others accessible
2022-10-20 21:36:40 OpenVPN 2.6_git x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] [DCO]
2022-10-20 21:36:40 library versions: OpenSSL 3.0.5 5 Jul 2022, LZO 2.10
2022-10-20 21:36:40 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
2022-10-20 21:36:40 TCP/UDP: Preserving recently used remote address: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:40 Attempting to establish TCP connection with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:40 TCP connection established with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:40 TCPv4_CLIENT link local: (not bound)
2022-10-20 21:36:40 TCPv4_CLIENT link remote: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:40 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
2022-10-20 21:36:41 Connection reset, restarting [0]
2022-10-20 21:36:41 SIGUSR1[soft,connection-reset] received, process restarting
2022-10-20 21:36:46 TCP/UDP: Preserving recently used remote address: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:46 Attempting to establish TCP connection with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:46 TCP connection established with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:46 TCPv4_CLIENT link local: (not bound)
2022-10-20 21:36:46 TCPv4_CLIENT link remote: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:47 Connection reset, restarting [0]
2022-10-20 21:36:47 SIGUSR1[soft,connection-reset] received, process restarting
2022-10-20 21:36:52 TCP/UDP: Preserving recently used remote address: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:52 Attempting to establish TCP connection with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:52 TCP connection established with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:52 TCPv4_CLIENT link local: (not bound)
2022-10-20 21:36:52 TCPv4_CLIENT link remote: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:53 Connection reset, restarting [0]
2022-10-20 21:36:53 SIGUSR1[soft,connection-reset] received, process restarting
2022-10-20 21:36:58 TCP/UDP: Preserving recently used remote address: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:58 Attempting to establish TCP connection with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:58 TCP connection established with [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:58 TCPv4_CLIENT link local: (not bound)
2022-10-20 21:36:58 TCPv4_CLIENT link remote: [AF_INET]xxx.xxx.xxx.x:1194
2022-10-20 21:36:58 Connection reset, restarting [0]
2022-10-20 21:36:58 SIGUSR1[soft,connection-reset] received, process restarting
Это вызвано ошибкой в network-manager-openvpn
.
Ubuntu 22.10 обновился до более новой версии OpenVPN (2.6), которая не поддерживает опцию cipher
, игнорирует её и ожидает новую опцию data-ciphers
, как видно из вашего вывода:
2022-10-20 21:36:40 DEPRECATED OPTION: --cipher set to 'AES-256-CBC' but missing in --data-ciphers (AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305). OpenVPN игнорирует --cipher для переговоров по шифрам.
Проблема в том, что старая опция жестко закодирована в network-manager-openvpn
, поэтому переписывание на новую не сработает, если только вы не передадите её с помощью командной строки.
На данный момент вам следует понизить версию OpenVPN до 2.5.5. Вот шаги, основанные на этом ответе, который также мне очень помог: https://askubuntu.com/a/1406472/1589545
-
Удалите текущую версию OpenVPN, если она установлена:
sudo apt remove openvpn
-
Установите OpenVPN 2.5.5
- Перейдите на https://launchpad.net/ubuntu/jammy/amd64/openvpn/2.5.5-1ubuntu3
- Скачайте файл
openvpn_2.5.5-1ubuntu3_amd64.deb
в разделе “Загружаемые файлы” - Дважды щелкните на файле и откройте его с помощью Установщика программ (GUI)
-
Необязательно: пометьте OpenVPN, чтобы он не обновлялся:
sudo apt-mark hold openvpn
-
Переустановите NetworkManager OpenVPN GUI:
sudo apt install network-manager-openvpn-gnome
Я только что добавил
data-ciphers=AES-128-CBC
под оригинальной записью шифра в
/etc/NetworkManager/system-connections/MYVPN.nmconnection
и это сработало.
cipher=AES-128-CBC
data-ciphers=AES-128-CBC
Я нашёл способ заставить это работать без понижения версии OpenVPN, используя OpenVPN 2.6.
Похоже, NetworkManager не читает все опции (такие как опция data-ciphers
) из файла ovpn. Идея состоит в том, чтобы вручную указать необходимые опции непосредственно в конфигурационном файле NetworkManager.
Вот инструкции:
-
Ваше подключение OpenVPN должно уже быть представлено в списке VPN-подключений в NetworkManager.
Если ваше подключение OpenVPN не представлено в NetworkManager, вы можете создать его, используя пункт меню “Импорт из файла…” (Настройки
->Сеть
->VPN
-> VPN+
->Импорт из файла...
) -
Запустите gnome-terminal: нажмите
Alt-F2
на клавиатуре, введитеgnome-terminal
и нажмитеEnter
-
В приложении Терминал выполните следующую команду для редактирования файла соединения NetworkManager:
sudo nano /etc/NetworkManager/system-connections/*your_connection_name*.nmconnection
Введите пароль для вашего пользователя Ubuntu, когда система попросит его, и нажмите Enter (пароль или звездочки не будут отображаться в Терминале).
-
Добавьте следующую строку в секцию
[vpn]
:data-ciphers=AES-256-CBC
Вместо
AES-256-CBC
укажите значение data-ciphers, поддерживаемое вашим сервером OpenVPN или поставщиком услуги OpenVPN. Вы должны смочь найти это значение в файле ovpn, предоставленном поставщиком услуги VPN. -
Нажмите
F2
на клавиатуре, затем нажмитеy
иEnter
, чтобы сохранить файл. -
Перезапустите службу NetworkManager, выполнив следующую команду:
sudo systemctl restart NetworkManager
-
Попробуйте подключиться к OpenVPN из Network Manager.
Как указывает @wolfmanFP, это связано с новой версией OpenVPN 2.6 и устаревшим конфигурационным файлом.
Я исправил проблему, понизив версию до OpenVPN 2.5, как предложил wolfmanFP. Это работает вполне исправно.
Тем не менее, я почувствовал, что мы могли бы пойти немного дальше и адаптировать конфигурационный файл к новым требованиям OpenVPN 2.6.
По сути, мне пришлось удалить строку, в которой сказано:
cipher AES-256-CBC
И заменить её на:
data-ciphers AES-256-CBC
data-ciphers-fallback AES-256-CBC
Когда вы попытаетесь подключиться снова, теперь вы не получите никаких предупреждений, и подключение пройдет успешно. Или, по крайней мере, у меня так было. И таким образом вы можете находиться на OpenVPN 2.6 или более поздней версии.
В моем случае у меня есть cipher=AES-256-CBC в новом vpn профиле
в /etc/NetworkManager/system-connections/xxxx.nmconnection
Просто ниже cipher=AES-256-CBC добавьте data-ciphers=AES-256-CBC вот так
cipher=AES-256-CBC
data-ciphers=AES-256-CBC
Перезапустите с помощью sudo service NetworkManager restart
и соединение VPN работает как ожидается.
Проверено на Ubuntu 22.10 openvpn 2.6
Кто-то добавил исправление в репозиторий, вы можете скачать и скомпилировать пакет network-manager-openvpn самостоятельно.
В моем случае это работает в следующей среде:
Ubuntu 22.10
Ядро: 6.0.9-060009-generic
OpenVPN 2.6_git x86_64-pc-linux-gnu
OpenSSL 3.0.5 5 Jul 2022, VOC 2.10
sudo apt install autopoint autoconf libtool
cd /tmp
git clone https://gitlab.gnome.org/GNOME/NetworkManager-openvpn.git
cd NetworkManager-openvpn
git checkout 020ab0c4b872fa5415ed1a5e682acb3343c7b9f3
./autogen.sh
make -j
make -j check
sudo make -j install
Как я подключаюсь в Ubuntu 22.10 Gnome и IPVanish VPN.
Тестовая машина:
Свежая установка, еще никаких обновлений…
sudo apt-get install -y openvpn network-manager-openvpn network-manager-openvpn-gnome
Указанные выше пакеты были установлены “из коробки”, но могут помочь другим решить проблему.
Говоря о устранении неполадок…
tail -f /var/log/syslog
Это отображает ошибки от NetworkManager и других процессов и стало подсказкой, которая привела меня к хаку/исправлению, которое я нашел на форуме Kubuntu.
https://www.kubuntuforums.net/forum/currently-supported-releases/kubuntu-22-10/network-support-bc/666945-network-manager-fails-to-connect-to-open-vpn-expressvpn-terminal-works-fine
Ошибка, которую я получал (одна из) была “NetworkManager[25475]: Options error: Unrecognized option or missing or extra parameter(s) in [CMD-LINE]:1: keysize (2.6_git)”
Простое исправление заключалось в том, чтобы закомментировать строку “keysize 256” в /etc/NetworkManager/system-connections/ipvanish-US-Seattle-sea-a01.nmconnection, и это исправило проблему.
Шаги для исправления…
sudo nano /etc/NetworkManager/system-connections/ipvanish-US-Seattle-sea-a01.nmconnection
Очевидно, что это конфигурационный файл, специфичный для IPVanish, но тот же принцип может применяться и к другим VPN. После того, как вы попытаетесь импортировать файл .ovpn и подключиться, в указанной директории будет сгенерирован файл конфигурации для сетевого менеджера (/etc/NetworkManager/system-connections/).
Измените строку “keysize 256” на “#keysize 256” и сохраните.
Теперь перезапустите NetworkManager…
sudo systemctl restart NetworkManager
Подключитесь к VPN.
Это самое простое исправление.
Другие вещи, которые я пробовал…
Понижение версии и удержание openvpn согласно инструкциям wolfmanFP (это работало в прошлом и было единственным методом, с которым я имел успех, однако это перестало работать для меня вчера после свежей установки Ubuntu, так же и Kali).
Возможно, библиотеки были обновлены, возможно, я пропустил/изменил шаги, но метод wolfmanFP раньше работал с 22.10, а теперь не работает (по крайней мере, для меня и этого конкретного компьютера).
Я также пробовал метод Яна Кунцмана, который тоже не дал результата.
Ошибка “nm-openvpn[26036]: DEPRECATED OPTION: –cipher set to ‘AES-256-CBC’ but missing in –data-ciphers (AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305). OpenVPN игнорирует –cipher для переговоров по шифрам.” по-прежнему присутствует, но подключение все равно проходит.
Тем не менее, этот новый метод является последовательным и требует изменения только одной строки в файле конфигурации.
Надеюсь, это поможет вам избежать часов поиска и устранения неполадок.
Включение устаревшего провайдера в /etc/ssl/openssl.cnf помогло мне на Debian 12:
Ubuntu 23.04.
openvpn --version
OpenVPN 2.5.5 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] собран 14 июля 2022
library versions: OpenSSL 3.0.2 15 Mar 2022, LZO 2.10
Для меня помогли эти шаги.
Терминал
sudo --config ./openvpn
Вывод команды подсказывает, какие именно шифры вам нужны (что-то о добавлении –data-ciphers XX-XXX ). И изменение команды
sudo openvpn --data-ciphers-fallback XX-XXX --data-ciphers XX-XXX --config ./client.ovpn
устанавливает подключение.
Для GUI после неудачных попыток добавьте строку
cipher=XX-XXX
в секцию [vpn] в файле
/etc/NetworkManager/system-connections/your_vpn_connection.nmconnection
На ubuntu 24.10, (версия OpenVPN 2.6.12)
найдите ваш файл конфигурации vpn в /etc/netplan/
добавьте строку в связанный файл
vpn.data-ciphers: "AES-128-CBC"
например
vpn.cipher: "AES-128-CBC"
vpn.data-ciphers: "AES-128-CBC"
Перезагрузите NetworkManager
sudo systemctl restart NetworkManager
вы можете проверить ваши журналы
journalctl -u NetworkManager -f
Ответ или решение
Проблема с подключением OpenVPN на Ubuntu 22.10: Решение ошибок и настройки
После обновления до версии Ubuntu 22.10 пользователи, использующие OpenVPN, сталкиваются с проблемой подключения к VPN-серверам, в то время как настроенные профили в предыдущей версии 22.04 LTS больше не работают. Многие из них сталкиваются с ошибкой подключения, которая выглядит следующим образом:
2022-10-20 20:10:04 TCPv4_CLIENT link remote: [AF_INET]xx.xxx.xxx.xxx:1194
2022-10-20 20:10:04 Connection reset, restarting [0]
2022-10-20 20:10:04 SIGUSR1[soft,connection-reset] received, process restarting
Причины проблемы
Согласно отчетам пользователей и документации, причина данной проблемы кроется в обновлении до OpenVPN версии 2.6, которое больше не поддерживает устаревшую опцию --cipher
. Вместо нее используется опция --data-ciphers
, что и приводит к конфликту при использовании старых профилей OpenVPN.
Потенциальные решения
1. Обновление конфигурационного файла:
Необходимо обновить ваш конфигурационный файл OpenVPN, чтобы учесть новые изменения:
- Откройте ваш конфигурационный файл, который обычно располагается в
/etc/NetworkManager/system-connections/
. - Найдите строку
cipher=AES-256-CBC
и замените ее следующими строками:data-ciphers=AES-256-CBC data-ciphers-fallback=AES-256-CBC
Это обновление позволит устранить предупреждение о deprecated опции и адаптирует конфигурацию под требования версии OpenVPN 2.6.
2. Редактирование конфигурации в NetworkManager:
Если вы предпочитаете использовать графический интерфейс, вы можете внести изменения через NetworkManager:
- Запустите
gnome-terminal
. - Используйте команду для редактирования конфигурационного файла:
sudo nano /etc/NetworkManager/system-connections/*ваша_конфигурация*.nmconnection
- В секции
[vpn]
добавьте строкуdata-ciphers=AES-256-CBC
.
После внесения изменений не забудьте перезапустить NetworkManager:
sudo systemctl restart NetworkManager
3. Понижение версии OpenVPN (временно):
Если обновление конфигурации не привело к успеху и вы хотите быстрее устранить проблему, вы можете временно понизить версию OpenVPN до 2.5.5:
- Удалите текущую версию OpenVPN:
sudo apt remove openvpn
- Установите нужную версию, скачав пакет с Launchpad и установив его:
sudo dpkg -i /путь/к/openvpn_2.5.5-1ubuntu3_amd64.deb
- Зафиксируйте версию, чтобы избежать автоматического обновления:
sudo apt-mark hold openvpn
4. Проверка прав доступа к конфигурационным файлам:
Убедитесь, что файлы конфигурации OpenVPN имеют правильные права доступа. Если в логах появляется предупреждение о том, что файл /home/dyedfox/openvpn/opvn-client1.p12
доступен для группы или других пользователей, измените права, выполнив:
chmod 600 /home/dyedfox/openvpn/opvn-client1.p12
chmod 600 /home/dyedfox/openvpn/keypass.cfg
chmod 600 /home/dyedfox/openvpn/auth.cfg
Итог
Если указанные действия не решили вашу проблему, рекомендуется тщательно проверить логи NetworkManager, используя команду:
journalctl -u NetworkManager -f
Эта команда поможет выявить дополнительные сообщения об ошибках, которые могут дать больше информации о характере проблемы.
Таким образом, с помощью вышеперечисленных шагов вы сможете преодолеть проблемы с подключением OpenVPN на Ubuntu 22.10 и безопасно использовать VPN в ваших задачах.