Question Connecter / déconnecter du VPN de la ligne de commande


J'ai deux configurations de VPN sur ma machine Ubuntu, l'une utilisant vpnc et l'autre utilisant PPTP. Celles-ci étaient toutes deux configurées à l'aide de l'interface du gestionnaire de réseau GNOME et fonctionnaient parfaitement. Cependant, à l'occasion, je dois accéder à cette machine à distance - existe-t-il un moyen de se connecter ou de se déconnecter de ces VPN à partir de la ligne de commande?


111
2017-08-16 15:15


origine


Est-ce que la commande vpnc détaillée ici ne travaille pas pour toi? Il existe également des instructions pour la configuration et la connexion à PPTP. ici. Ne travaillent-ils pas? - Kris Harper


Réponses:


Si vous souhaitez interagir avec NetworkManager à partir de la ligne de commande, vous pouvez utiliser la commande "nmcli".

liste toutes les connexions NM: nmcli con

commencer la connexion (wifi, vpn, etc.): nmcli con up id ConnectionName

connexion descendante: nmcli con down id ConnectionName

(plus de commandes nmcli dans le page de manuel de nmcli).


Notez également que les utilisateurs réguliers ne sont généralement pas autorisés à contrôler le réseau. En utilisant les commandes ci-dessus avec sudo devrait fonctionner pour la plupart des connexions, mais spécifiquement VPN pourrait échouer avec "Erreur: échec de l'activation de la connexion: pas de secret VPN valide."

Si cela vous arrive, il est probable que le mot de passe VPN soit stocké dans le gnome-keyring de votre utilisateur, ce qui le rend inaccessible à l'utilisateur root. Ce commentaire explique pourquoi.

Pour corriger cela, éditez / etc / NetworkManager / connexions système / ConnectionName et sous [vpn], changer la drapeaux de mot de passe ligne à:

password-flags=0

S'il y a une ligne commençant par Xauth password-flags, changez-le plutôt.

Ensuite, ajoutez ce qui suit sous le [vpn] bloc:

[vpn-secrets]
password=YourPassword

(Si à l'étape précédente vous avez changé de ligne Xauth password-flags, ajouter Xauth password=... au lieu.)

Maintenant, redémarrez le gestionnaire de réseau en:

sudo service network-manager restart

Ensuite, le démarrage de la connexion VPN avec sudo nmcli con up id ConnectionName devrait fonctionner sans problèmes.


163
2017-08-17 03:44



Je souhaite qu'il y ait une commande de déconnexion générale qui déconnecterait tout VPN sans avoir à spécifier son identifiant. Cela ferait probablement cette fonctionnalité (Je veux) plus facile à mettre en œuvre. - Lonnie Best
Si vous utilisez ipsec (par exemple, vpnc), vous devrez peut-être ajouter "IPSec secret-flags = 0" et "IPSec secret = <grouppw>" à leurs emplacements respectifs. - Matt
Cela ne m'a toujours pas réparé :( J'ai un message "Erreur: Échec de l'activation de la connexion: raison inconnue". - Evildonald
Je reprends ça… après la troisième fois que j'ai exécuté la commande, ça a fonctionné. La 1ère fois est échouée rapidement. La deuxième fois a échoué lentement. La troisième fois travaillée! - Evildonald
Texte clair PWs ?? Vraiment?? Est-ce que quelqu'un a une solution SECURE? - user447607


La réponse de ihashacks avec les commentaires de Matt a fonctionné pour moi ... presque. J'ai dû modifier une ligne.

Ma ligne d’indicateur de mot de passe indique: "Xauth password-flag". La réponse acceptée ne fonctionnerait pas pour moi jusqu'à ce que je change

[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>

Je ne sais pas pourquoi mes connexions VPN ont "Xauth" avant chaque mention de mot de passe.

(Désolé, il s'agit d'une nouvelle réponse, ne peut pas encore faire de commentaires.)


4
2018-03-23 05:03



Ceci est pour certains types de VPN, par exemple celui de Cisco; très utile pour ces cas! Il y a une erreur, cependant: le cas correct d'une clé est IPSec secret- sinon, ce n'est pas reconnu par NM. - Marcus
Merci Marcus, j'ai corrigé ma réponse pour que personne n'essaye de copier / coller une faute de frappe. - John