kb:linux:generalites:openvpn
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
kb:linux:generalites:openvpn [2017/08/27 21:26] – beu | kb: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) | ||
- | < | + | < |
# apt install openvpn easy-rsa | # apt install openvpn easy-rsa | ||
</ | </ | ||
Ligne 19: | Ligne 19: | ||
Ensuite on va créer tous les dossiers nécessaire | Ensuite on va créer tous les dossiers nécessaire | ||
- | < | + | < |
- | # mkdir -p / | + | # mkdir -p / |
- | # mkdir / | + | |
- | # cp -r / | + | |
</ | </ | ||
- | ensuite | + | Il faut ensuite |
- | < | + | < |
+ | # sed -i ' | ||
+ | </ | ||
+ | |||
+ | 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' | ||
+ | |||
+ | ===Configuration du serveur=== | ||
+ | |||
+ | Il va falloir créer les certificats : | ||
+ | |||
+ | Modifier le fichiers de variables /// | ||
+ | |||
+ | <code bash> | ||
export KEY_COUNTRY=" | export KEY_COUNTRY=" | ||
export KEY_PROVINCE=" | export KEY_PROVINCE=" | ||
Ligne 36: | Ligne 52: | ||
</ | </ | ||
- | 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 |
- | < | + | < |
- | # cd /etc/openvpn/ | + | #!/bin/bash |
- | # source vars | + | |
- | # ./ | + | |
- | # openssl dhparam -out keys/ | + | |
- | # ./pkitool --initca | + | |
- | # ./pkitool --server server | + | |
- | # openvpn --genkey --secret keys/ | + | |
- | </ | + | |
- | la commande ' | + | source / |
- | + | / | |
- | Il faut ensuite autoriser le noyaux linux à faire du ' | + | openssl dhparam |
- | + | /etc/openvpn/easy-rsa//pkitool --initca | |
- | < | + | /etc/openvpn/easy-rsa//pkitool --server server |
- | # sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' | + | openvpn --genkey --secret keys/ta.key |
- | # echo 1 > /proc/sys/net/ipv4/ip_forward | + | |
</ | </ | ||
- | 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. | + | Le script |
- | + | ||
- | ====VPN Nomade==== | + | |
Téléchargé le ficher {{configurations: | Téléchargé le ficher {{configurations: | ||
- | Il est fait pour fonctionner | + | Il est fait pour fonctionner, cependant vous pouvez modifier certains paramètres mais il faudra les reporter dans la configuration du client. |
- | ======ANCIENNE VERSION====== | + | Attention au règles de NAT qui peuvent être nécessaire.((Voir [[https:// |
- | ====Mise en place d'une solution d' | + | |
- | ==1 - Préparation du serveur== | + | Il ne restera plus qu'a lancer le service : |
- | L' | + | <code bash> |
- | Cette page peux se retrouver obsolète d'ici quelques mois, mais la procédure se retrouvera sensiblement identique. | + | # systemctl start openvpn@nomade |
+ | </ | ||
- | ==2 - Installation de l' | + | ===Configuration du client=== |
- | OpenVPN étant certifié par la communauté Debian, | + | Téléchargé |
+ | Et modifier le pour qu'il correspond à votre configuration notamment à la ligne ' | ||
- | apt-get update | + | Si vous voulez que tout le trafic du client soit rediriger dans le tunnel il faut ajouter à la fin de ce fichier : |
- | apt-get install openvpn | + | < |
+ | redirect-gateway def1 | ||
+ | </ | ||
- | Le paquet emporte avec lui de base des fichiers pour configurer le chiffrement par clé. la configuration | + | sinon, il faut ajouter toutes les routes que vous voulez router à la fin de ce même fichier |
- | mkdir / | + | < |
- | cp -r / | + | route 10.0.0.0 255.255.255.0 |
+ | </code> | ||
- | Nous allons simplifier la création des clé chiffré avec l' | + | ===Ajouter un client=== |
- | pico / | + | Pour créer un client il faut lancer les commandes suivantes : |
- | Il faut modifier les valeurs suivantes: | + | <code bash> |
- | | + | # / |
- | | + | </ |
- | export KEY_CITY=" | + | |
- | export KEY_ORG=" | + | |
- | export KEY_EMAIL=" | + | |
- | On va créer la clé privé et publique du serveur: | + | La première ' |
+ | Pour le reste, laissez vous guider. | ||
- | cd / | + | Il faudra modifier le fichier de configuration du client afin de remplir le champs **< |
- | source vars | + | |
- | | + | |
- | ./ | + | |
- | ./pkitool --initca | + | |
- | ./pkitool --server server | + | |
- | openvpn --genkey --secret keys/ta.key | + | |
- | On va déplacer la clé du serveurs | + | Il ne vous restera qu'a fournir au client son fichier de configuration, |
+ | * / | ||
+ | * / | ||
+ | * / | ||
+ | * / | ||
- | mkdir / | + | qu'il devra mettre dans un même dossier. |
- | cp keys/ca.crt keys/ta.key keys/ | + | |
- | VOIR FICHIER {{configurations: | + | ====Configuration Site-à-Site==== |
- | Pour activer le FORWARD temporairement (effacer au redémarrage) | + | FIXME |
- | sh -c 'echo 1 > / | + | ====Configuration d'Accès Public==== |
- | + | ||
- | Pour activer définitivement le FORWARD (s' | + | |
- | Dans /// | + | |
- | net.ipv4.ip_forward=1 | ||
- | Puis les règles de NAT pour iptables | + | FIXME |
- | + | ||
- | iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE | + | |
- | + | ||
- | Pour activer la règle au reboot : | + | |
- | sh -c " | + | |
- | + | ||
- | Il faut rajouter cette ligne dans / | + | |
- | pre-up iptables-restore < / | + | |
- | + | ||
- | Création clé utilisateur: | + | |
- | Modifier l'ip dans clés/ | + | |
- | le 1194 correspond au port | + | |
- | + | ||
- | Il suffira de lancer le script {{configurations: | + | |
- | (ca.crt et ta.key sont publique et commune a tous les utilisateurs) | + | |
- | + | ||
- | le fichier "nom du clients" | + | |
- | ATTENTION le client doit l' | + | |
- | + | ||
- | Sources : | + | |
- | [[http:// | + | |
==Note : == | ==Note : == | ||
Règle iptables pour rediriger les requêtes vers une autre une ip (NAT 1.1) sans modification de l' | Règle iptables pour rediriger les requêtes vers une autre une ip (NAT 1.1) sans modification de l' | ||
- | | + | |
+ | <code bash> | ||
+ | iptables -t nat -A PREROUTING -p tcp -d 188.165.42.128 -j DNAT --to-destination 10.8.0.6 | ||
+ | </ | ||
==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 : | ||
+ | < | ||
script-security 2 | script-security 2 | ||
up / | up / | ||
down / | down / | ||
- | | + | </ |
kb/linux/generalites/openvpn.1503869187.txt.gz · Dernière modification : (modification externe)