24

I am using Arch Linux with Gnome and I want to use openconnect to connect to an VPN server. I can do this at the command-line without a problem, but I can't do this with Gnome; I get the following error:

NetworkManager[589]: <error> [1475998103.4381] vpn-connection[0x28a9530,dc5d3708-967d-4e50-90ac-d0c892fe8ab3,"nm-vpn-connection.c",0]: Failed to request VPN secrets #3: No agents were available for this request.

The ArchLinux Wiki suggests to do:

ln -s /usr/lib/networkmanager/nm-openconnect-auth-dialog /usr/lib/gnome-shell/

but this also does not solve the problem.

The problem occurs when I click on connect; I am unable to activate the VPN connection with Gnome and NetworkManager.

1
  • 1
    Thanks man, ln -s /usr/lib/networkmanager/nm-openconnect-auth-dialog /usr/lib/gnome-shell/ was the solution for me. Commented Oct 31, 2019 at 12:17

9 Answers 9

29

In my case (In Debian 9 by Gnome 3.2) selecting the password option "Store the password for all users" in the VPN settings got it working. All other options produce the mentioned error.

5
  • 2
    In my case only reboot had helped. Ubunu 18.04, using i3wm by default.
    – Lubo
    Commented Apr 2, 2020 at 11:23
  • 4
    I had to search a bit how to enable this: Start nm-connection-editor. Select the VPN connection. On the VPN tab, there is a little icon in the password field. Click the icon and select the option.
    – Hans Then
    Commented Sep 6, 2020 at 10:32
  • 1
    Does anyone know what component is missing/needs to be installed to enable pass storage only for current user (and not everyone?).
    – Yan Foto
    Commented Nov 5, 2020 at 16:19
  • 1
    I tried but didn't could not see the dialog of credentials, had to restart. OpenConnect, newly installed network-manager-opneconnect and -openconnect-gnome.
    – WesternGun
    Commented Jun 21, 2021 at 10:00
  • 1
    I don't see any option along the lines of "Store password for all users". I only see "Save password" (interestingly, only saves password, not username) and "Make available to other users". Both are checked, but neither fixes the issue. And per @HansThen comment, I don't have a password field in the "VPN" tab.
    – jayhendren
    Commented May 27, 2022 at 19:15
8

Not a solution, but a workaround. You can connect using the command line and also enter the username/password on the command line, therefore the secret agent is not needed.

nmcli connection
nmcli --ask connection up <vpn>

You first list the connections and then place the ID of the vpn listed into as to the second command. It will then try to connect and ask for your credentials.

1

When using i3 to automatically start nm-applet, ensure the --no-agent option is not used. See https://wiki.archlinux.org/title/NetworkManager#nm-applet.

0

This error can also happen if the VPN key file is not readable.

In my case, I have the VPN keys in a Truecrypt volume. That volume was wrongly remounted by root, and only readable by root.

After remounting it as my user, thus giving me access to the VPN keys again, the error went away.

Selecting "Store the password for all users" in the VPN settings as suggested by the other answer also worked, but that was not what I wanted.

So, one troubleshooting step is to check that the needed certificates and keys are accessible.

0

Install the package gnome-keyring.

It worked for me and might work for any type of VPN, while the most voted answer is only applicable to some types of VPNs. Mine is Fortinet and the option "Store the password for all users" is not available.

0
0

In my case, I had to have a look at the syslog to get useful information, and I found the following:

May  9 10:05:36 mypc nm-l2tp-service[79199]: Check port 1701
May  9 10:05:36 mypc nm-l2tp-service[79199]: Can't bind to port 1701
May  9 10:31:50 mypc NetworkManager[9666]: Stopping strongSwan IPsec failed: starter is not running

I surmise that I had xl2tp running as a service, and strongswan couldn't do its thing because trying again after the following resolved my problem:

Solution

systemctl stop xl2tpd.service
systemctl disable xl2tpd.service

Ubuntu 20.04

0

I ran into this issue on PopOS 20.04 and 22.04 when using i3 and openconnect. The solution was to add the following to my i3 config:

exec --no-startup-id nm-applet

After adding this (and restarting i3), I can connect to my VPN using either nmcli in a terminal or the gnome-control-center GUI. Also, nm-applet adds an icon into the i3status bar displaying WiFI signal strength and VPN connection status.

0

If don't know why it has to be in the /usr/lib/gnome-shell directory to find it.

locate nm-openconnect-auth-dialog /usr/lib/NetworkManager/nm-openconnect-auth-dialog

But notice the case of the path. Also after you run the ln command verify it worked

with

ll /usr/lib/gnome-shell/nm-openconnect-auth-dialog

I ran the the program and also got some strange error output

/usr/lib/NetworkManager/nm-openconnect-auth-dialog: symbol lookup error: /lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37: undefined symbol: gst_transcoder_get_sync_signal_adapter

So I'm back to upgrading libgstreamer and openconnect.

No closer to a solution for me :(

1
0

Installing gcr solved the problem for me (Archlinux with Xfce4).

I found out because at some point I restarted the applet with nohup nm-applet and found

nm-openconnect-auth-dialog: error while loading shared libraries: libgcr-ui-3.so.1

which led me to gcr.

I have keepassxc configured to serve as secret service provider. It wasn't being used by nm before I installed gcr.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .