Projet

Général

Profil

Configuration VPN sans brique » Historique » Révision 26

Révision 25 (florian, 23/04/2018 14:36) → Révision 26/40 (pizzacoca, 01/06/2018 18:04)

h1. Configuration de VPN sans brique 

 ---- 

 +A . OpenVPN en ligne de commande+ 

 +B . OpenVPN en mode graphique avec Network Manager+ 

 +C . Remerciements+ 

 h2. +*A . OpenVPN en ligne de commande*+ 

 # Remarques 
 # Préparation 
 # Installation 
 # Lancement 
 # Configurations diverses (et optionnelles) 

 > h2. 1. Remarques 

 Tutoriel d'installation en ligne de commande. rédigé pour une distribution Debian 9 
 Les commandes sont toutes à faire en %{color:red}root% sur votre machine ou avec le paramétre %{color:red}sudo% avant. 
 Sans connexion au démarrage le Le client openvpn a besoin d'être root pour pouvoir fonctionner. 
 Actions minimum : un fichier à télécharger et deux lignes de commande à taper. 
 En cas de souci, faites un log (commande blabla > nom_du_log ) et contactez support@aquilenet.fr avec celui-ci en pièce jointe. 

 > h2. 2. Installation d'openvpn Préparation 

 <pre> 
 apt install openvpn 
 </pre>  

 h2. 3. Téléchargement et rangement du fichier aqn.ovpn 

 Téléchargez dans votre répertoire de travail le fichier _*aqn.ovpn*_ situé en bas de cette page dans votre répertoire de travail habituel. page. 
 En prévision de la connexion VPN , préparez vos identifiants et mot de passe VPN. 
 Ceux-ci sont disponibles dans votre    "espace "l'espace adhérents":https://adherents.aquilenet.fr/vpn.php , section VPN. 

 >Déplacement des fichiers > h2. 3. Installation 

 En root sur votre machine : 
 <pre> 
 apt install openvpn 
 </pre>  


 > h2. 4. Lancement 

 Toujours en root, 
 se placer dans le répertoire /etc/openvpn de travail contenant _aqn.ovpn_ , puis lancer 
 > <pre> 
 mv openvpn aqn.ovpn /etc/openvpn/ 
 </pre> 
 


 > Ne h2. 5. Configurations diverses (et optionnelles) 

 h3. +Routage si tout le trafic ne passe pas oublier de se placer dans ledit répertoire par le VPN+ 

 Si tout le trafic ne passe pas par le VPN, il faut router selon la source des paquets, pour que la suite des opérations réponse à un paquet venant du VPN ne passe pas par une autre interface où il risquerait d'être supprimé : 
 >    <pre> 
 cd /etc/openvpn/ ip route add default dev tun0 table 200 
 ip rule add from 185.233.101.0/24 table 200 
 ip -6 route add default dev tun0 table 200 
 ip -6 rule add from 2a0c:e300:4::/56 table 200 
 </pre> 

 h2. 4. Renseignement du mot de passe & identifiant 

 h3. +Connexion automatique+ 


 Pour éviter d'avoir à retaper le login et le mot de passe à chaque connexion on va peut modifier à la main le fichier _aqn.ovpn_. 

 *Modification de _aqn.ovpn_* 

 On va ajouter le nom du fichier qui va contenir notre login et mot de passe 
 Il faut trouver la ligne qui contient *auth-user-pass* (vers la ligne 100) et faire l'ajout. 
 Cela devrait donner le résultat suivant : 
 <pre> 
 auth-user-pass identification_vpn 
 </pre> 


 > *%{color:red}Avertissement%* *Avertissement* !warning_gestion_droits.gif!  
 >  
 > Afin de protéger vos identifiants et mots de passe il est conseillé de faire attention aux droits de lecture des fichiers.  
 > Pour ce faire nous allons créer   
 > A titre d'exemple cette manip de déplacement dans le répertoire /root 
 > <pre> 
 mv aqn.ovpn /root 
 </pre> 
 > Se déplacer dans ledit répertoire 
 >    <pre> 
 cd 
 </pre> 
 >    création du fichier identification_vpn avec des droits limités. _identification_vpn_ 
 >    <pre> 
 umask 077 ; touch identification_vpn ; umask 022 
 </pre> 
 >    >    *Nota :* 
 >    >    * La commande "+umask+":https://debian-facile.org/doc:programmation:bash:umask sert à gérer les droits donnés par défaut à un fichier créé par l'utilisateur. 
 >    >    * La commande "+touch+":https://debian-facile.org/doc:systeme:touch permet de créer un fichier vide. 
 >    >    * Le signe ";":https://debian-facile.org/doc:programmation:shell:shell#enchainer-plusieurs-commandes    permet d’enchaîner les commandes. 

 *Modification de _aqn.ovpn_* 

 Ajout du nom du fichier contenant login et mot de passe à côté de auth-user-pass ( qui se trouve vers la ligne 100) 


 On édite le fichier auth-user-pass identification_vpn 


 Edition du _identification_vpn_ (qui est doit donc lui aussi être dans le répertoire /etc/openvpn, le même répertoire qui contient que _aqn.ovpn_ ) 
 <pre> 
 nano identification_vpn 
 </pre> 
 Sur la première ligne de _identification_vpn_ il y aura le login, sur la seconde ligne le mot de passe VPN (une info par ligne). 
 Ce qui donnera ceci ligne) : 

 <pre> 
 identifiantdeconnexion identifiant.connexion 
 mot_de_passe 
 </pre> 


 h2. 5. Automatisation de VPN 

 Faire d'abord une sauvegarde du rc.local que l'on va modifier 
 <pre> 
 cp -a /etc/rc.local /etc/rc.local-old 
 </pre> 

 On édite le fichier rc.local 
 <pre> 
 gedit /etc/rc.local 
 </pre> 

 > *rc.local est un fichier (en fait un script) qui permet de lancer des applis ou des scripts au démarrage ou à l'extinction de l'ordi. Voir ici sur Comment Ça Marche. Ce n'est pas un fichier dangereux à manipuler (en principe) mais méfiez-vous quand même. Le minimum serait d'en faire une sauvegarde. Voir plus haut. Note: L'éditeur de texte Gedit est en général paramétré pour sauvegarder automatiquement tout fichier en modification. 

 Il se présente à peu près comme ça. 
 <pre> 
 #!/bin/sh -e 
 # 
 # rc.local 
 # 
 # This script is executed at the end of each multiuser runlevel. 
 # Make sure that the script will "exit 0" on success or any other 
 # value on error. 
 # 
 # In order to enable or disable this script just change the execution 
 # bits. 
 # 
 # By default this script does nothing. 

 exit 0 
 </pre> 

 Ajouter avant exit 0 cette ligne 
 <pre> 
 Relancer openvpn --config    /root/vpn/aqn.ovpn 
 </pre> 
 
 ... ce qui donne ça 

 <pre> 
 #!/bin/sh -e 
 # 
 # rc.local 
 # 
 # This script is executed at the end of each multiuser runlevel. 
 # Make sure that the script will "exit 0" on success or any other 
 # value on error. 
 # 
 # In order to enable or disable this script just change the execution 
 # bits. 
 # 
 # By default this script does nothing. 

 openvpn --config    /root/vpn/aqn.ovpn 

 exit 0 
 </pre> 
     Enregistrez et fermez le fichier 
     Redémarrez votre ordinateur. 
     Vérifiez sur http://geoip.hidemyass.com/ votre nouvelle location virtuelle (c'est le localisateur de HideMyAss, mais il fonctionne avec tous le VPN) 



 ---- 

 h2. Divers 

 > h3. Lancement direct d'openvpn 

 <pre> 
 openvpn aqn.ovpn 
 </pre> 

 N'hésitez pas à jeter un œil sur les #commentaires contenus dans le fichier *_aqn.ovpn_* ! 

 > 


 h3. Vérifier le fonctionnement en cours d'openvpn +Vérifier sa connexion VPN+ 

 Vérifier si OpenVPN a déjà été lancé : 
 <pre> 
 ps aux | grep vpn 
 </pre> 

 > h3. Vérification de la connexion VPN 

 


 Pour vérifier que vous passez effectivement par le VPN tapez dans la console : 
 <pre> 
 curl https://tools.aquilenet.fr/ip/ 
 </pre> 
 ou tapez 
 <pre> 
 curl ifconfig.io 
 </pre> 

 Ces commandes donnent votre ip de sortie sur internet.  
 Si elles commencent par 185.233.101.x ou 2a0c:e300:4: c'est que vous passez par le vpn aquilenet. 



 ---- 

 h3. +Todo autres+ 

 N'hésitez pas à jeter un œil sur les #commentaires contenus dans le fichier *_aqn.ovpn_* ! 

 >     * Paramétrer le vpn partiel par application (faisable ?) 
 >     * d'automatiser complètement la connexion vpn au boot 
 >     * -de ne pas avoir à se connecter en root pour lancer la connexion vpn-  
 >     * -de vérifier si je suis bien connecté en vpn- 
 >     * autre mais toujours en mode ligne de commande. 

 ---- 

 h2. Remerciements +*B .OpenVPN en mode graphique avec Network Manager*+ 

 Voir https://wiki-adh.fdn.fr/wiki/travaux:vpn_misc:doc  

 ---- 

 h2. +*C . Remerciements*+ 

 Merci  
 - aux gars au site de FDN donc la documentation nous a été précieuse : https://wiki-adh.fdn.fr/wiki/travaux:vpn_misc:doc  

 - à nettlebay du forum elementaryos : http://forum.elementaryos-fr.org/topic/1462-lancez-votre-vpn-openvpn-automatiquement-et-sans-mot-de-passe/