Public bug reported: On a fresh installation of Ubuntu 24.04 LTS, NetworkManager fails to connect to an OpenVPN server that requires both TLS certificates and username/password authentication. The same connection profile and user credentials work perfectly from the command line (openvpn --config ...) on the same system.
Furthermore, this functionality worked correctly in the NetworkManager GUI on Ubuntu 22.04 LTS, indicating a software regression in the Ubuntu 24.04 release. The core issue appears to be that NetworkManager's nm-openvpn plugin incorrectly handles the auth-user-pass directive. It forces an interactive password prompt even when the configuration is explicitly set to read credentials from a file, and it fails to authenticate correctly when using the interactive prompt. Affected Versions: OS: Ubuntu 24.04 LTS (Noble Numbat) Packages: network-manager, network-manager-openvpn, openvpn (You can find the exact versions by running this command in your terminal and adding the output to the report: apt-cache policy network-manager-openvpn openvpn) Steps to Reproduce: Create a standard OpenVPN client configuration file (client.ovpn) that requires TLS certificates and username/password authentication. The configuration includes <ca>, <cert>, <key> blocks and the directive auth-user-pass. On a clean Ubuntu 24.04 system, import this .ovpn file into NetworkManager. Attempt to connect to the VPN using the NetworkManager GUI. Diagnostic Step: Modify the .ovpn file. Change the auth-user-pass line to auth-user-pass /path/to/auth.txt, where auth.txt is a file containing the username on the first line and the password on the second. Delete the previous connection profile from NetworkManager and re-import this modified .ovpn file. Attempt to connect again using the NetworkManager GUI. Expected Results: In step 3, NetworkManager should prompt for a username and password, and upon entering the correct credentials, the VPN should connect successfully. In step 6, NetworkManager should read the credentials directly from auth.txt and connect to the VPN without showing a password prompt. Actual Results: In step 3, NetworkManager prompts for credentials, but the connection consistently fails. Logs show an AUTH_FAILED message from the server, followed by an ERROR: could not read Auth username/password/ok/string from management interface from the nm-openvpn process. In step 6, NetworkManager completely ignores the auth-user-pass /path/to/auth.txt directive. It incorrectly shows a password prompt instead of reading the file. The connection fails. Additional Information and Workaround: This is a regression: This exact process and configuration works flawlessly in the NetworkManager GUI on Ubuntu 22.04 LTS. Command-line works: The connection is 100% successful on Ubuntu 24.04 when initiated directly from the terminal using sudo openvpn --config client.ovpn (for both the interactive and the auth.txt methods). This proves the user credentials, certificates, server configuration, and the base openvpn client are all correct. The only functional workaround on Ubuntu 24.04 is to bypass the NetworkManager GUI entirely and use the command-line client. This strongly isolates the bug to the network-manager-openvpn plugin or its integration with NetworkManager. ** Affects: network-manager-openvpn (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Desktop Bugs, which is subscribed to network-manager-openvpn in Ubuntu. https://bugs.launchpad.net/bugs/2112561 Title: NetworkManager on Ubuntu 24.04 fails OpenVPN authentication, ignoring 'auth-user-pass' To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/network-manager-openvpn/+bug/2112561/+subscriptions -- desktop-bugs mailing list desktop-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/desktop-bugs