51

I am trying to import a .ovpn file from the network manager. Here are the steps I follow.

Network Manager → VPN Connections → configure VPN

This opens the Network Connections dialogue. Then,

Add → import saved vpn configuration → choose .ovpn file

This should load my .ovpn configuration, but instead I get a prompt saying

ERROR: plugin does not support import capability.

I can still use VPN using the command

sudo openvpn --config ~/openvpn/xxx.conf

is this a bug that needs to be filed?

David Foerster
  • 36,890
  • 56
  • 97
  • 151
Lucosias
  • 633

12 Answers12

53

I know this is an old question but since I still couldn't find an (easy) answer I want to help others (and future me).

Use this

sudo nmcli connection import type openvpn file FILE_NAME

offcourse replace FILE_NAME with the full path to your file name

This will tell you exactly what's wrong with the file and which lines you should edit/delete.

After you edited the file with the recommendations the command gave you. You can import the file.

Nin
  • 811
  • 1
  • 9
  • 12
33

On commenting out the following line with #, I was able to successfully import the VPN config:

#route remote_host 255.255.255.255 net_gateway default

Others have reported that commenting out, or removing, this line works for them as well per bug #606365 in launchpad in spite of this being a valid argument.

That said, while I'm able to successfully connect to the VPN, I'm not able to hit any host over the VPN. On trying to manually set these values using the network manager GUI, I see that only numerical IP addresses are accepted. String values like remote_host or net_gateway cannot be entered via the GUI.

I've also had success importing the same .OVPN file without any modification in Fedora 23, Windows 10 (using Viscosity), OS X El Capitan (using Viscosity) and earlier versions of Ubuntu. Something is definitely broken in 16.04.

19

worked for me:

sudo apt install network-manager-openvpn-gnome
12
  1. open your .ovpn file with any editor
  2. add # to the beginning of this line to comment it out

    route remote_host 255.255.255.255 net_gateway default

  3. Go to IPv4 settings > routes > Check the option “Use this connection only for resources on its network” > press OK > Save

Done!

This is just a wrap up of what worked for me on ubuntu 16.04 based on the other answers and comments here.

Nick
  • 113
2

Importing .ovpn profiles inside network manager has recently been improved, but there are still bugs and misleading error messages. Sometimes you can successfully import the .ovpn file by removing a single line that breaks the import procedure. In my case, I removed the line float 1 from my .ovpn file and the file has been imported successfully.

giox069
  • 291
2

Its working :) from https://zorrovpn.com/howto/openvpn/ubuntu?lang=en

Open .ovpn file with a text editor.

And change lines that looks like

remote 11.2.2.2 443 tcp-client

to

remote 11.2.2.2
port 443
proto tcp-client

Then save .ovpn file and try again to import VPN connection.

1

You might be suffering from the NetworkManager-openvpn bug #83.

Current suggested workaround is a downgrade to 1.8.10-1, however this version is not available in Ubuntu 21.10.

In my case the issue was caused by a PKCS#12 certificate from which I extracted a PKCS#8 CA certificate with

openssl pkcs12 -in [input.p12] -cacerts -nokeys -out ca.crt

and specified

ca ca.crt

in the config file before being able to import the connection with

sudo nmcli connection import type openvpn file your-file.ovpn

You might have to enter your certificate password for every connection. Consider this a workaround until the issue is fixed upstream and you can import your configuration through the UI without issues again.

1

I am experiencing the same issue. It looks like a bug, according to this link: https://bugs.launchpad.net/ubuntu/+source/network-manager-openvpn/+bug/606365

Kestrell
  • 66
  • 1
  • 8
0

Nothing here worked for me so I added it to the openvpn config manually.

$ sudo cp ~/me.ovpn /etc/openvpn/me.conf

Then I start OpenVPN with:

$ sudo systemctl start openvpn@me

Enable/disable on computer start

$ sudo systemctl enable openvpn@me

Nek
  • 221
0

I've found out that changing

remote REMOTE_SERVER 12345

with

remote REMOTE_SERVER
port 12345

Fixed the issue.

0

For me (Ubuntu 16.04.1 LTS), removing the section <extra-certs> worked.

Here is the ovpn file generated by a tunnel provider.

setenv USERNAME "user@provider.xx"
client
dev tun
remote host 1194 udp
remote host 1194 udp
remote host 443 tcp
remote host 1194 udp
remote host 1194 udp
remote host 1194 udp
remote host 1194 udp
remote host 1194 udp
remote-cert-tls server
comp-lzo no
auth SHA1
nobind
verb 3
sndbuf 0
rcvbuf 0
socket-flags TCP_NODELAY

<ca>
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
</ca>

<cert>
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
</cert>

<extra-certs>
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
</extra-certs>

<key>
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
</key>

key-direction 1
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
-----END OpenVPN Static key V1-----
</tls-auth>
## -----BEGIN RSA SIGNATURE-----
## DIGEST:SHA1WithRSA
## -----END RSA SIGNATURE-----
## -----BEGIN CERTIFICATE-----
## -----END CERTIFICATE-----
## -----BEGIN CERTIFICATE-----
## -----END CERTIFICATE-----
## -----BEGIN CERTIFICATE-----
## -----END CERTIFICATE-----
0

In my case the following item caused the problem:

float 1

After commenting it out, it worked:

#float 1