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

111

J'ai deux VPN configurés sur ma machine Ubuntu, l’un 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, je dois parfois 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?

    
posée Tim Fountain 16.08.2011 - 17:15
la source

2 réponses

161

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

démarrer la connexion (wifi, vpn, etc.): nmcli con up id ConnectionName

connexion descendante: nmcli con down id ConnectionName

(Plus de commandes nmcli dans la 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. L'utilisation des commandes ci-dessus avec sudo devrait fonctionner pour la plupart des connexions, mais le VPN pourrait échouer spécifiquement avec "Erreur: Échec de l'activation de la connexion: aucun 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 résoudre ce problème, modifiez / etc / NetworkManager / system-connections / ConnectionName et sous [vpn] , modifiez le ligne de mots de passe à:

password-flags=0

S'il y a une ligne commençant par Xauth password-flags , changez-la à la place.

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

[vpn-secrets]
password=YourPassword

(Si à l'étape précédente, vous avez modifié la ligne Xauth password-flags , ajoutez plutôt Xauth password=... .)

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

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.

    
réponse donnée ihashacks 17.08.2011 - 05:44
la source
4
La réponse de ihashacks aux commentaires de Matt a fonctionné pour moi ... presque. J'ai dû modifier une ligne.

ma ligne d’indicateur de mot de passe indique en fait: "Xauth password-flag". La réponse acceptée ne fonctionnerait pas pour moi tant que je ne suis pas passé à la suivante

[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é, c'est une nouvelle réponse, ne peut pas encore faire de commentaires.)

    
réponse donnée John 23.03.2015 - 06:03
la source

Lire d'autres questions sur les étiquettes