Vraag Verbinding maken / verbreken van VPN vanaf de opdrachtregel


Ik heb twee VPN's ingesteld op mijn Ubuntu-machine, een met vpnc en een met PPTP. Deze zijn beide ingesteld met behulp van de GNOME netwerkmanager-interface en werken fantastisch. Soms moet ik echter op afstand toegang krijgen tot deze machine. Is er een manier om verbinding te maken met deze VPN's via de opdrachtregel?


111
2017-08-16 15:15


oorsprong


Geeft de opdracht vpnc een gedetailleerd overzicht hier niet voor u werken? Er zijn ook instructies voor het configureren en verbinden met PPTP hier. Werken ze niet? - Kris Harper


antwoorden:


Als u wilt communiceren met NetworkManager via de opdrachtregel, kunt u de opdracht "nmcli" gebruiken.

lijst alle NM-verbindingen: nmcli con

start verbinding (wifi, vpn, etc.): nmcli con up id ConnectionName

verbinding naar beneden: nmcli con down id ConnectionName

(meer nmcli-opdrachten in de nmcli manpage).


Houd er ook rekening mee dat gewone gebruikers meestal geen toestemming hebben om het netwerk te besturen. Gebruik de bovenstaande commando's met sudo zou voor de meeste verbindingen moeten werken, maar VPN zou specifiek kunnen falen "Fout: activering verbinding mislukt: geen geldige VPN-geheimen."

Als dat u overkomt, is het waarschijnlijk dat het VPN-wachtwoord is opgeslagen in de GNOME-sleutelring van uw gebruiker, waardoor het ontoegankelijk is voor de rootgebruiker. Deze opmerking verklaart waarom.

Om dit op te lossen, bewerk / Etc / NetworkManager / systeem-verbindingen / ConnectionName en onder [vpn], verander de wachtwoordvlaggen regel naar:

password-flags=0

Als er een regel is die begint met Xauth password-flags, verander het in plaats daarvan.

Voeg vervolgens het onderstaande toe onder [vpn] blok:

[vpn-secrets]
password=YourPassword

(Als u in de vorige stap de lijn hebt gewijzigd Xauth password-flags, voeg toe Xauth password=... in plaats daarvan.)

Start nu netwerkmanager opnieuw op door:

sudo service network-manager restart

Vervolgens start de VPN-verbinding met sudo nmcli con up id ConnectionName zou zonder problemen moeten werken.


163
2017-08-17 03:44



Ik zou willen dat er een algemene verbreekopdracht was die een VPN zou ontkoppelen zonder zijn id te moeten specificeren. Dat zou waarschijnlijk maken deze functie (Ik wil) gemakkelijker te implementeren. - Lonnie Best
Als u ipsec (bijvoorbeeld vpnc) gebruikt, moet u mogelijk ook "IPSec secret-flags = 0" en "IPSec secret = <grouppw>" toevoegen op hun respectievelijke plaatsen - Matt
Dit loste mij nog steeds niet op :( Ik krijg een foutmelding "Fout: activering verbinding mislukt: onbekende reden." - Evildonald
Ik neem dat terug ... na de 3e keer dat ik het commando uitvoerde, werkte het. 1e keer is snel mislukt. 2e keer mislukt langzaam. Derde keer gewerkt! - Evildonald
Tekst wissen PW's ?? Werkelijk?? Heeft iemand een beveiligde oplossing? - user447607


Het antwoord van ihashacks met de opmerkingen van Matt werkte voor mij ... bijna. Moest een regel aanpassen.

mijn wachtwoord-vlag regel daadwerkelijk gelezen: "Xauth wachtwoord-vlag". Het geaccepteerde antwoord zou niet werken voor ik veranderde naar het volgende

[vpn]
...
Xauth password-flag=0
IPSec secret-flags=0

[vpn-secrets]
Xauth password=<my pw> ## This is the one I changed.
IPSec secret=<group pw>

Weet niet zeker waarom mijn VPN-verbindingen "Xauth" hebben vóór elke vermelding van het wachtwoord.

(Sorry dit is een nieuw antwoord, kan nog geen opmerkingen maken.)


4
2018-03-23 05:03



Dit is voor sommige typen VPN, bijvoorbeeld de Cisco-versie; erg handig voor deze gevallen! Er is echter een fout: het juiste geval van één sleutel is IPSec secret- anders wordt het niet herkend door NM. - Marcus
Bedankt Marcus, ik heb de correctie op mijn antwoord aangebracht, dus niemand probeert een typefout te kopiëren / plakken. - John