====== OpenVPN : Client ======
* Objet : Manipuler le client OpenVPN
* Niveau requis : {{tag>avisé}}
* Commentaires : //Configuration du client OpenVPN pour connexion aux VPN.//
* Suivi : {{tag>à-tester}}
* Création par [[user>smolski]] le 19/09/2012
* Testé par ... le ...
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=145061#p145061 | C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== Introduction =====
Pour protéger votre vie privée sur Internet vous avez souscrit un abonnement auprès d'un VPN comme :
* [[https://vpntunnel.com/fr/|VPNTunnel]]
ou :
* [[http://arethusa.su/vpn.html|Arethusa]]
et vous souhaitez le configurer sur votre Debian ? \\
Alors, ce tutoriel est fait pour vous. :-D
Ce tutoriel prend place dans le contexte d'un [[:doc:environnements:environnements|environnement de bureau]].
===== Installation de base =====
L'installation VPN de base vous le fera gérer uniquement par la ligne de commande.
- Installez les paquets nécessaires au fonctionnement d'un VPN : apt-get install openvpn resolvconf
- Récupérez sur le site de votre VPN les //fichiers de configuration// ''openvpn.conf'' ainsi que les //certificats// ''ca.crt'' et les copier(([[:doc:systeme:cp]]))dans les répertoires suivants : ''/etc/openvpn/'' ainsi : cp openvpn.conf /etc/openvpn/
- Créez le répertoire pour les clés VPN(([[:doc:systeme:mkdir]])) ''/etc/openvpn/keys'' mkdir /etc/openvpn/keys
- et y copier les certificats ainsi :cp ca.crt /etc/openvpn/keys/
==== Connexion automatique ====
À chaque démarrage, **openvpn** va se connecter automatiquement à __toutes les connexions VPN__ que vous aurez placées dans ''/etc/openvpn'' !
Imaginons que vous ayez placé **5 fichiers de configuration .conf** (correspondant à un pays particulier par exemple) : à chaque boot, vous devrez entrer le login et le mot de passe de votre compte VPN **5 fois de suite**. 8-O
Pour éviter cela, vous avez plusieurs possibilités :
* **Ne pas se connecter** à un VPN au démarrage en éditant(([[:doc:editeurs:nano]])) le fichier ''/etc/default/openvpn'' ainsi : nano /etc/default/openvpn
et en décommentant((enlever le dièse « # » qui est devant pour en permettre la lecture par le système)) la ligne ''AUTOSTART="none"''.
* **Se connecter** à un ou plusieurs VPN au démarrage en éditant le fichier nano /etc/default/openvpn
et en y ajoutant : AUTOSTART="openvpn-Swe"
**openvpn-Swe** = le nom de votre //fichier de configuration// sans le ''.conf''.
Pour plusieurs VPN, séparez les noms de fichier par un espace. Exemple : AUTOSTART="openvpn-Swe openvpn-NL openvpn-US"
==== Connexion manuelle ====
Si vous souhaitez vous connecter manuellement à un VPN, entrez en mode [[:doc:systeme:su|root]] : openvpn /etc/openvpn/openvpn.conf
==== Astuce1 - Connexion auto ====
Cette méthode n'est pas bonne en matière de sécurité. Elle vous est seulement donnée à titre informatif !
Pour se connecter sans devoir entrer le login et le mot de passe :
- Créez((directement en édition)) un fichier ''pass'' dans ''/etc/openvpn'' ainsi : nano /etc/openvpn/pass
Dans ce fichier, écrivez votre login sur une première ligne et sur une seconde ligne votre mot de passe.
- Éditez votre fichier de configuration auquel vous souhaitez vous connecter automatiquement nano /etc/openvpn/openvpn-Swe.conf
Plus bas vous voyez la commande **auth-user-pass** (sinon, ajoutez-la) et modifiez-la en : auth-user-pass pass
Désormais votre fichier de configuration ira chercher votre login et votre mot de passe dans le fichier ''pass'' créé en **1**.
===== Gestion graphique optionnelle =====
Pour gérer ses connexions VPN en mode graphique.
==== Installation et configuration ====
Pour configurer votre VPN en mode graphique, installer les paquets nécessaires comme ci-dessous :
Cette partie est adaptée aux environnements de bureau XFCE et Gnome. Néanmoins, modifier certains paquets en fonction de son environnement de bureau permet d'obtenir le même résultat.
- Si ce n'est fait, installez le [[:doc:reseau:network-manager]] de gnome (en version minimale pour éviter les paquets inutiles) : apt-get install network-manager-gnome --without-recommends
- Puis les paquets permettant la gestion du VPN : apt-get install network-manager-openvpn network-manager-openvpn-gnome
- **FACULTATIF** : installer le gestionnaire de sauvegarde des mots de passe : apt-get install seahorse gnome-keyring
Ce gestionnaire vous permet de stocker les mots de passe spécifiques à chaque connexion VPN dans un trousseau, protégé lui-même par un mot de passe global. Ainsi, il suffit de retenir uniquement ce mot de passe global, le trousseau se chargera de distribuer le bon mot de passe au bon VPN.
- Pour pouvoir importer vos fichiers de configuration, vous devez avoir les droits(([[:doc:systeme:droits-unix-bis | Les droits en détail]])) sur le dossier ''/etc/openvpn'' et son contenu. Pour ce faire, exécutez la commande suivante(([[:doc:systeme:chown]])) : chown -R login:login /etc/openvpn
où login est le nom d'utilisateur de votre session Debian.
- Redémarrez votre PC. Normalement, vous devez voir apparaître dans votre barre des tâches l'**icône de gestion du réseau**. Si ce n'est pas le cas, ajoutez à votre session de démarrage la commande suivante : ''nm-applet''
- Ensuite cliquez-droit sur l'icône réseau, "modification des connexions", onglet "VPN" et importez votre ou vos //fichiers de configuration// dans **/etc/openvpn**. N'oubliez pas de renseigner le login et le mot de passe de votre compte VPN ! **Enregistrez et lancez la connexion**.
Au premier lancement de votre VPN, on vous demandera d'entrer votre mot de passe pour confirmer la connexion (même si vous l'avez saisi auparavant dans le network-manager). \\
Normalement, le **trousseau de clé** (géré par gnome-keyring) apparaîtra pour vous avertir que le network-manager va stocker le mot de passe. \\
Un mot de passe général vous sera peut-être demandé. Il s'agit d'un mot de passe global que vous devrez saisir à chaque connexion d'un VPN (cela permet d'éviter d'entrer le mot de passe spécifique pour chaque VPN).
==== Astuce2 - Connexion auto root ====
Pour gérer et se connecter à un VPN sans avoir à entrer le mot de passe root
A chaque connexion / gestion d'un VPN dans le network-manager, le mot de passe de root vous est demandé. \\
Pour éviter cela, procédez comme suit :
- Créez un groupe "network" : addgroup network
- Ajoutez votre nom d'utilisateur au groupe network : adduser votre_login network
- Créez un fichier ''org.freedesktop.NetworkManager.pkla'' ainsi :nano /etc/polkit-1/localauthority/50-local.d/org.freedesktop.NetworkManager.pkla
contenant : [nm-applet]
Identity=unix-group:network
Action=org.freedesktop.NetworkManager.*
ResultAny=yes
ResultInactive=no
ResultActive=yes
L'effet est //normalement// immédiat, pas besoin de redémarrage.
==== Astuce3 : Connexion auto NM ====
Pour se connecter automatiquement **au démarrage du PC** à un VPN avec le network-manager :
- Téléchargez : [[http://sourceforge.net/projects/vpnautoconnect/|vpnautoconnect]] 2.0.4 (la version 2.0.5 ne marche pas car elle dépend d'un paquet non présent dans les dépôts Debian) version 64 bits : http://sourceforge.net/projects/vpnautoconnect/files/vpnautoconnect_2.0.4-1ubuntu1_no_unity_amd64.deb/download ou version 32 bits : http://sourceforge.net/projects/vpnautoconnect/files/vpnautoconnect_2.0.4-1ubuntu1_no_unity_i386.deb/download
- Installez le paquet libpcap0.8 : apt-get install libpcap0.8
- Installez(([[:doc:systeme:apt:dpkg]])) vpnautoconnect : dpkg -i vpnautoconnect_2.0.4-1ubuntu1_no_unity_[version].deb
- Ajoutez ''vpnautoconnect'' pour qu'il se lance à l'ouverture de session((Pour XFCE : Paramètres > Session et démarrage > onglet Démarrage automatique)).
- Cochez la case "connexion automatique" **uniquement** pour le VPN auquel vous souhaitez vous connectez au démarrage.
- Redémarrez. Le network-manager se connecte désormais à votre fichier de configuration VPN automatiquement :-D