Outils pour utilisateurs

Outils du site


kb:linux:generalites:openvpn

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
kb:linux:generalites:openvpn [2017/08/27 20:29] beukb:linux:generalites:openvpn [2018/07/25 20:44] (Version actuelle) beu
Ligne 13: Ligne 13:
 Toute la manipulation coté serveur est réalisé sur le packet OpenVPN 2.4 (sous debian 9) Toute la manipulation coté serveur est réalisé sur le packet OpenVPN 2.4 (sous debian 9)
  
-<code>+<code bash>
 # apt install openvpn easy-rsa # apt install openvpn easy-rsa
 </code> </code>
  
-ensuite on va créer tous les dossiers nécessaire +Ensuite on va créer tous les dossiers nécessaire 
  
-<code> +<code bash 
-# mkdir /etc/openvpn/jail +# mkdir -p /etc/openvpn/jail/tmp && cp -r /usr/share/easy-rsa /etc/openvpn/
-# mkdir /etc/openvpn/clients-conf +
-cp -r /usr/share/easy-rsa /etc/openvpn/+
 </code> </code>
  
-ensuite modifier le fichiers de variables ///etc/openvpn/easy-rsa/vars// afin de faire correspondre à la réalité les valeurs suivantes +Il faut ensuite autoriser le noyaux linux à faire du 'FORWARD', il faut juste lancer les deux commandes suivante :
  
-<code>+<code bash> 
 +# sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf && echo 1 > /proc/sys/net/ipv4/ip_forward 
 +</code> 
 + 
 +On va passer aux différentes configurations possibles. Il faudra obligatoirement faire des modifications dans certains fichiers, certaines seront expliqué, à vous de faire vos recherches pour vous adapter à vos besoins. 
 + 
 +====Configuration Nomade==== 
 + 
 +===Objectif=== 
 + 
 +L'objectif est simple, permettre à un usagé d'accéder a des services interne où alors que chiffrer leurs communications 
 + 
 +===Configuration du serveur=== 
 + 
 +Il va falloir créer les certificats : 
 + 
 +Modifier le fichiers de variables ///etc/openvpn/easy-rsa/vars// afin de faire correspondre à la réalité les valeurs suivantes :  
 + 
 +<code bash>
 export KEY_COUNTRY="FR" export KEY_COUNTRY="FR"
 export KEY_PROVINCE="75" export KEY_PROVINCE="75"
Ligne 36: Ligne 52:
 </code> </code>
  
-On va ensuite générer les clés et les certificats pour le serveur+On va ensuite générer les clés et les certificats pour le serveur en lançant le script suivant
  
-<code> +<code bash setup.sh
-cd /etc/openvpn/easy-rsa/ +#!/bin/bash 
-# source vars + 
-# ./clean-all +source /etc/openvpn/easy-rsa/vars  
-openssl dhparam -out keys/dh4096.pem 4096  +/etc/openvpn/easy-rsa/clean-all 
-# ./pkitool --initca +openssl dhparam -out keys/dh4096.pem 4096  
-# ./pkitool --server server +/etc/openvpn/easy-rsa//pkitool --initca 
-openvpn --genkey --secret keys/ta.key+/etc/openvpn/easy-rsa//pkitool --server server 
 +openvpn --genkey --secret keys/ta.key
 </code> </code>
  
-la commande 'openssl' peut prendre beaucoup de temps (environ 30 min sur un VPS d'OVH).+Le script va vous poser plein de question et va être un peu long sur certaines étape.
  
-======ANCIENNE VERSION====== +Téléchargé le ficher {{configurations:openvpn:nomade.conf|suivant}}.\\ 
-====Mise en place d'une solution d'OpenVPN====+Il est fait pour fonctionner, cependant vous pouvez modifier certains paramètres mais il faudra les reporter dans la configuration du client.
  
-==1 - Préparation du serveur==+Attention au règles de NAT qui peuvent être nécessaire.((Voir [[https://wiki.virtit.fr/doku.php/kb:cheatsheet:iptables|ceci]]))
  
-L'installation du serveur ce fait sur Debian 8.5\\ +Il ne restera plus qu'a lancer le service :
-Cette page peux se retrouver obsolète d'ici quelques mois, mais la procédure se retrouvera sensiblement identique.+
  
-==2 - Installation de l'OpenVPN==+<code bash> 
 +# systemctl start openvpn@nomade 
 +</code>
  
-OpenVPN étant certifié par la communauté Debian, le paquet est donc disponible librement sur leur dépôts officiel. Il suffi de rentrer :+===Configuration du client===
  
-  apt-get update +Téléchargé le ficher {{configurations:openvpn:client_nomade.conf|suivant}}.\\ 
-  apt-get install openvpn+Et modifier le pour qu'il correspond à votre configuration notamment à la ligne 'remote' où il faudra y mettre l' IP/FQDN du serveur.
  
-Le paquet emporte avec lui de base des fichiers pour configurer le chiffrement par clé. la configuration de base y etant aussi importé, nous allons la copier au sein du répertoire OpenVPN.+Si vous voulez que tout le trafic du client soit rediriger dans le tunnel il faut ajouter à la fin de ce fichier : 
 +<code> 
 +redirect-gateway def1 
 +</code>
  
-  mkdir /etc/openvpn/easy-rsa/ +sinon, il faut ajouter toutes les routes que vous voulez router à la fin de ce même fichier 
-  cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/+
  
-Nous allons simplifier la création des clé chiffré avec l'ajout de paramètres de base, cela sera les information de l'entreprise par exemple:+<code> 
 +route 10.0.0.0 255.255.255.0 
 +</code>
  
-  pico /etc/openvpn/easy-rsa/vars+===Ajouter un client===
  
-Il faut modifier les valeurs suivantes: +Pour créer un client il faut lancer les commandes suivantes :
-  export KEY_COUNTRY="FR" +
-  export KEY_PROVINCE="06" +
-  export KEY_CITY="Nissa" +
-  export KEY_ORG="nicolargo.com" +
-  export KEY_EMAIL="dtc@hadopi.fr"+
  
-On va créer la clé privé et publique du serveur:+<code bash> 
 +# /etc/openvpn/easy-rsa/vars && /etc/openvpn/easy-rsa/build-key-pass $NOMDUCLIENT 
 +</code>
  
-  cd /etc/openvpn/easy-rsa/ +La première 'passphrase' demandé est celle qui sera demander a chaque fois que le client veux se connecter.\\ 
-  source vars +Pour le reste, laissez vous guider.
-  ./clean-all +
-  ./build-dh +
-  ./pkitool --initca +
-  ./pkitool --server server +
-  openvpn --genkey --secret keys/ta.key+
  
-On va déplacer la clé du serveurs ainsi que celle de chaques clients dans un dossier spécifiques+Il faudra modifier le fichier de configuration du client afin de remplir le champs **<nom>** afin qu'il soit identique à celui fournit plus tôt.
  
-  mkdir /etc/openvpn/clés +Il ne vous restera qu'a fournir au client son fichier de configuration, ainsi que les fichiers :  
-  cp keys/ca.crt keys/ta.key keys/server.crt keys/server.key keys/dh2048.pem /etc/openvpn/clés+  * /etc/openvpn/easy-rsa/keys/ta.key 
 +  * /etc/openvpn/easy-rsa/keys/ca.crt 
 +  * /etc/openvpn/easy-rsa/keys/$NOMDUCLIENT.crt 
 +  * /etc/openvpn/easy-rsa/keys/$NOMDUCLIENT.key
  
-VOIR FICHIER {{configurations:openvpn:server.conf}}+qu'il devra mettre dans un même dossier.
  
-Pour activer le FORWARD temporairement (effacer au redémarrage)+====Configuration Site-à-Site====
  
-  sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward' +FIXME
-   +
-Pour activer définitivement le FORWARD (s'applique au redémarrage)\\ +
-Dans ///etc/sysctl.conf// dé-commenter la ligne :+
  
-  net.ipv4.ip_forward=1+====Configuration d'Accès Public====
  
-Puis les règles de NAT pour iptables 
  
-  iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE +FIXME
- +
-Pour activer la règle au reboot : +
-  sh -c "iptables-save > /etc/iptables.rules" +
- +
-Il faut rajouter cette ligne dans /etc/network/interfaces sous "iface eth0 inet ..." +
-  pre-up iptables-restore < /etc/iptables.rules +
- +
-Création clé utilisateur: +
-Modifier l'ip dans clés/{{configurations:openvpn:exemple.ovpn}} (ligne remote) +
-le 1194 correspond au port +
- +
-Il suffira de lancer le script {{configurations:openvpn:NewClient.sh}} pour obtenir une clé client +
-(ca.crt et ta.key sont publique et commune a tous les utilisateurs) +
- +
-le fichier "nom du clients".ovpn peut etre lancer par le clients.\\ +
-ATTENTION le client doit l'ouvrir avec C:\ProgramFiles\OpenVPN\bin\openvpn.exe (En administrateur) +
- +
-Sources :  +
-[[http://blog.nicolargo.com/2010/10/installation-dun-serveur-openvpn-sous-debianubuntu.html | Blog de Nicolargo]] (Obselete)+
  
 ==Note : == ==Note : ==
 Règle iptables pour rediriger les requêtes vers une autre une ip (NAT 1.1) sans modification de l'adresse qui émet  Règle iptables pour rediriger les requêtes vers une autre une ip (NAT 1.1) sans modification de l'adresse qui émet 
-  iptables -t nat -A PREROUTING -p tcp -d 188.165.42.128 -j DNAT --to-destination 10.8.0.6+ 
 +<code bash> 
 +iptables -t nat -A PREROUTING -p tcp -d 188.165.42.128 -j DNAT --to-destination 10.8.0.6 
 +</code>
  
 ==Note 2 : == ==Note 2 : ==
 Le packet Resolvconf installer nativement sur Debian bloque les modifications DNS invoqué par Openvpn. Pour outrepasser cela, il suffit de rajouter les lignes suivante dans le fichier de configuration du client :  Le packet Resolvconf installer nativement sur Debian bloque les modifications DNS invoqué par Openvpn. Pour outrepasser cela, il suffit de rajouter les lignes suivante dans le fichier de configuration du client : 
  
 +<code>
   script-security 2   script-security 2
   up /etc/openvpn/update-resolv-conf   up /etc/openvpn/update-resolv-conf
   down /etc/openvpn/update-resolv-conf   down /etc/openvpn/update-resolv-conf
-  +</code>
  
kb/linux/generalites/openvpn.1503865780.txt.gz · Dernière modification : 2017/12/09 00:19 (modification externe)