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 18:32] – 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 | ||
</ | </ | ||
- | ensuite | + | Ensuite |
- | < | + | < |
- | mkdir / | + | # mkdir -p / |
- | mkdir /etc/ | + | |
- | mkdir / | + | |
- | cp -r / | + | |
</ | </ | ||
+ | Il faut ensuite autoriser le noyaux linux à faire du ' | ||
+ | <code bash> | ||
+ | # 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=== | ||
- | ======ANCIENNE VERSION====== | + | L'objectif est simple, permettre à un usagé |
- | ====Mise en place d'une solution | + | |
- | ==1 - Préparation | + | ===Configuration |
- | L' | + | Il va falloir créer les certificats : |
- | Cette page peux se retrouver obsolète d'ici quelques mois, mais la procédure se retrouvera sensiblement identique. | + | |
- | ==2 - Installation | + | Modifier le fichiers de variables /// |
- | OpenVPN étant certifié par la communauté Debian, le paquet est donc disponible librement sur leur dépôts officiel. Il suffi de rentrer : | + | <code bash> |
+ | export KEY_COUNTRY=" | ||
+ | export KEY_PROVINCE=" | ||
+ | export KEY_CITY=" | ||
+ | export KEY_ORG=" | ||
+ | export KEY_EMAIL=" | ||
+ | export KEY_OU=" | ||
+ | </ | ||
- | apt-get update | + | On va ensuite générer les clés et les certificats pour le serveur en lançant le script suivant |
- | apt-get install openvpn | + | |
- | 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. | + | <code bash setup.sh> |
+ | #!/bin/bash | ||
- | mkdir / | + | source |
- | | + | / |
+ | openssl dhparam -out keys/dh4096.pem 4096 | ||
+ | / | ||
+ | / | ||
+ | openvpn --genkey --secret keys/ | ||
+ | </ | ||
- | Nous allons simplifier la création des clé chiffré avec l' | + | Le script va vous poser plein de question et va être un peu long sur certaines étape. |
- | pico /etc/openvpn/ | + | Téléchargé le ficher {{configurations: |
+ | Il est fait pour fonctionner, | ||
- | Il faut modifier les valeurs suivantes: | + | Attention au règles de NAT qui peuvent être nécessaire.((Voir [[https://wiki.virtit.fr/ |
- | export KEY_COUNTRY=" | + | |
- | export KEY_PROVINCE=" | + | |
- | export KEY_CITY=" | + | |
- | export KEY_ORG=" | + | |
- | export KEY_EMAIL=" | + | |
- | On va créer la clé privé et publique du serveur: | + | Il ne restera plus qu'a lancer le service |
- | cd /etc/openvpn/easy-rsa/ | + | <code bash> |
- | | + | # systemctl start openvpn@nomade |
- | ./ | + | </code> |
- | ./ | + | |
- | ./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 | + | ===Configuration |
- | mkdir /etc/openvpn/clés | + | Téléchargé le ficher {{configurations: |
- | cp keys/ca.crt keys/ta.key keys/server.crt keys/ | + | Et modifier le pour qu'il correspond à votre configuration notamment à la ligne ' |
- | VOIR FICHIER {{configurations:openvpn: | + | Si vous voulez que tout le trafic du client soit rediriger dans le tunnel il faut ajouter à la fin de ce fichier |
+ | < | ||
+ | redirect-gateway def1 | ||
+ | </ | ||
- | Pour activer le FORWARD temporairement (effacer au redémarrage) | + | sinon, il faut ajouter toutes les routes que vous voulez router à la fin de ce même fichier |
- | sh -c 'echo 1 > / | + | <code> |
- | + | route 10.0.0.0 255.255.255.0 | |
- | Pour activer définitivement le FORWARD (s' | + | </code> |
- | Dans /// | + | |
- | net.ipv4.ip_forward=1 | + | ===Ajouter un client=== |
- | Puis les règles de NAT pour iptables | + | Pour créer un client il faut lancer |
- | iptables | + | <code bash> |
+ | # / | ||
+ | </ | ||
- | Pour activer la règle au reboot : | + | La première ' |
- | sh -c " | + | Pour le reste, laissez vous guider. |
- | Il faut rajouter cette ligne dans / | + | 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. |
- | pre-up iptables-restore | + | |
- | Création clé utilisateur: | + | Il ne vous restera qu'a fournir au client son fichier de configuration, |
- | Modifier l'ip dans clés/{{configurations: | + | * /etc/openvpn/ |
- | le 1194 correspond au port | + | * / |
+ | * / | ||
+ | * / | ||
- | Il suffira de lancer le script {{configurations: | + | qu'il devra mettre dans un même dossier. |
- | (ca.crt et ta.key sont publique et commune a tous les utilisateurs) | + | |
- | le fichier "nom du clients" | + | ====Configuration Site-à-Site==== |
- | ATTENTION le client doit l' | + | |
- | Sources : | + | FIXME |
- | [[http:// | + | |
+ | ====Configuration d' | ||
+ | |||
+ | |||
+ | FIXME | ||
==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.txt · Dernière modification : 2018/07/25 20:44 de beu