Jak zapisać hasła VPN za pomocą NetworkManger dla nmcli?

14

Istnieje wiele postów na temat wprowadzania haseł VPN /etc/NetworkManager/system-connections/<connection>. Nie mogę zmusić żadnego z nich do pracy w systemie Ubuntu 12.04. Pola w pytaniach i odpowiedziach wydają się nieco inne niż moje. Najbliższe wydawało się: Jak zapisać hasła VPN za pomocą NetworkManger .

Wolałbym nmcliprosić o hasło w konsoli zamiast w widżecie GUI na pulpicie, ale wydaje się to niemożliwe.

Więc dwa pytania:

  1. Czy /etc/NetworkManager/system-connections/<connection>pliki i ich pola są oficjalnie udokumentowane w dowolnym miejscu? Wydaje się, że istnieje wiele 404 linków do dokumentacji NetworkManager.
  2. Co jest nie tak z moim plikiem połączenia?

Oto mój plik Conneciton. Próbowałem wielu odmian ustawień w tym pliku, ale jest to tak dobre, jak tylko mogłem wymyślić (oczywiście zanonimizowane):

[connection]
# Not sure if this helps or breaks anything. Fails regardless.
permissions=user:peter:;
id=My VPNC
uuid=a2cd97d5-7df1-4391-91d8-7e72931ec2de
type=vpn
autoconnect=false
timestamp=1396942441

[vpn]
service-type=org.freedesktop.NetworkManager.vpnc
NAT Traversal Mode=natt
ipSec-secret-type=save
IPSec secret-flags=0
xauth-password-type=save
Vendor=cisco
Xauth username=user
IPSec gateway=1.2.3.4
XAuth password-flags=0
IPSec ID=Ipsec
Perfect Forward Secrecy=server
IKE DH Group=dh2

[vpn-secrets]
XAuth password=password
IPSec secret=grouppassword

[ipv4]
method=auto

Pozwolenia:

> ls -l /etc/NetworkManager/system-connections/My\ VPNC 
-rw------- 1 root root 527 Apr  8 10:11 /etc/NetworkManager/system-connections/My VPNC

Uruchomienie go daje:

> sudo nmcli con up id  'My VPNC'
Active connection state: unknown
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/44
state: VPN connecting (need authentication) (2)
Error: Connection activation failed: no valid VPN secrets.

Edycja: Oto kolejny podobny post (o Openconnect VPN): Jak mogę NetworkManager automatycznie połączyć się z Openconnect VPN przez nmcli bez pytania o użytkownika i hasło

Peter V. Mørch
źródło

Odpowiedzi:

11

Podczas konfigurowania połączenia VPN za pomocą GUI hasło jest zapisywane w breloku. Jeśli zapiszesz hasło w pliku połączenia, wykonaj następujące czynności:

sudoedit /etc/NetworkManager/system-connections/MyConnectionExampleName

in this file:

    # 1 here means key-ring I  think, but with 0, the password below is  used
    [vpn]
    password-flags=0
    cert-pass-flags=0

    [vpn-secrets]
    password=my_secret_password
    cert-pass=my_secret_certificate_password
HackerBaloo
źródło
1
Nie działało dla mnie tutaj 15.04. Jeśli działałem nmcli con up id MyVPNjako własny użytkownik, okno dialogowe hasła nadal pojawia się na pulpicie zdalnego komputera. Bieganie sudo nmcli con up id MyVPNdał pierwszy, (process:3320): libnm-glib-WARNING **: async_got_type: could not read properties for /org/freedesktop/NetworkManager/ActiveConnection/7: Method "Get" with signature "ss" on interface "org.freedesktop.DBus.Properties" doesn't exista potemError: Connection activation failed: Creating object for path '/org/freedesktop/NetworkManager/ActiveConnection/7' failed in libnm-glib.
Peter V. Mørch
4

Miałem ten sam problem, rejestr / var / log / messages rejestrował komunikat, w którym NetworkManager narzekał na nieprawidłowe właściwości. Po usunięciu właściwości flagi i typu i pozostawieniu tylko rekordów [vpn-secrets] można nawiązać połączenie.

ipSec-secret-type=save
IPSec secret-flags=0
xauth-password-type=save
XAuth password-flags=0

Pakiet, który zainstalowałem:

NetworkManager-0.8.1-66.el6.x86_64

Wynik:

[connection]
id=My VPNC
uuid=a2cd97d5-7df1-4391-91d8-7e72931ec2de
type=vpn
autoconnect=false
timestamp=1396942441

[vpn]
service-type=org.freedesktop.NetworkManager.vpnc
NAT Traversal Mode=natt
Vendor=cisco
Xauth username=user
IPSec gateway=1.2.3.4
IPSec ID=Ipsec
Perfect Forward Secrecy=server
IKE DH Group=dh2

[vpn-secrets]
XAuth password=password
IPSec secret=grouppassword

[ipv4]
method=auto
Oscar
źródło
Nie działało dla mnie. Jako root mam: (process:2034): libnm-glib-WARNING **: async_got_type: could not read properties for /org/freedesktop/NetworkManager/ActiveConnection/4: Method "Get" with signature "ss" on interface "org.freedesktop.DBus.Properties" doesn't exist Error: Connection activation failed: Creating object for path '/org/freedesktop/NetworkManager/ActiveConnection/4' failed in libnm-glib.jako użytkownik „ja” otworzył okno logowania na pulpicie zdalnym.
Peter V. Mørch,
1
Mogę potwierdzić, że działa to w przypadku Ubuntu 14.04 na cisco VPN.
Dale Anderson,
Współpracuje z Fritzbox 5490 i Ubuntu 16.04. Gdzie IPSec secretjest klucz wstępny IPSec i Xauth passwordhasło, które wybrałeś na Fritzbox. Pamiętaj, aby nie zepsuć słowa kluczowego pisowni i wielkich / małych liter w IPSec secreti Xauth password.
MadMike,
3

Jeśli chodzi o rozwiązanie prostego tajnego błędu hasła w 16.04 , potrzebujesz tylko dwóch linii:

[vpn-secrets]
password=my_secret_password

Dotykam / dodam inne linie tylko w razie potrzeby

Wilk
źródło
1
Musiałem też ustawićpassword-flags=0
Pierre François,
2

Nie zmieniłbym plików konfiguracyjnych generowanych przez GUI. Następnym razem, gdy klikniesz w GUI, twoje ręczne wpisy znikną. Również aktualizacja systemu może go zahamować.

Możesz spróbować:

  • Pozwól działać sudo nmclibez hasła:

    Utwórz plik /etc/sudores.d/mynmcli(nazwa pliku nie ma znaczenia)

    Host_Alias HOST = YOURHOSTNAME
    Cmnd_Alias NMCLI    = /usr/bin/nmcli
    YOURHOSTNAME HOST=(root) NOPASSWD:NMCLI
    
  • Utwórz plik hasła za pomocą:

    vpn.secrets.Xauth password:PASSWORD
    vpn.secrets.IPSec secret:SHAREDSECRET
    

    Teraz możesz uruchomić następujący wiersz w skrypcie obsługiwanym przez kukurydzę:

    sudo nmcli con up id YOURVPN passwd-file /path/to/your/file
    

    (Aby znaleźć typ YOURVPN „ nmcli con”)

Działa dla mnie na Ubuntu 16.10.

wolfi
źródło
1

Rób to, co powiedział Wolf . Zapisz plik.

Następnie wpisz

sudo service network-manager restart

i uderzył Enter.

Teraz twoje zmiany obowiązują.

Hipokryt
źródło
0

Edytuj połączenie VPNC za pomocą okna dialogowego Połączenia sieciowe.

Na karcie VPN hasła wejściowe mają ikonę wewnątrz wejścia po prawej stronie. Kliknij tę ikonę i wybierz „Zapisz hasło tylko dla tego użytkownika”.

Galaci
źródło