Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
openvpn [2018/10/08 19:26] wilfried.pepin |
openvpn [2018/10/09 10:56] (Version actuelle) wilfried.pepin |
||
---|---|---|---|
Ligne 33: | Ligne 33: | ||
Créons ensuite une clé de sécurité dh: | Créons ensuite une clé de sécurité dh: | ||
./build-dh | ./build-dh | ||
- | Ensuite créons la **clé partagé** entre le serveur et les clients | + | Dans le dossier ///etc/openvpn//, créons la **clé partagé** entre le serveur et les clients |
openvpn --genkey --secret ta.key | openvpn --genkey --secret ta.key | ||
(il faudra ensuite copiezcette clé dans les OpenVPN clients) | (il faudra ensuite copiezcette clé dans les OpenVPN clients) | ||
Ligne 39: | Ligne 39: | ||
Dans le dossier ///etc/openvpn// créez un dossier **keys** et mettez y toutes les clés du dossier ///usr/share/easy-rsa/keys// | Dans le dossier ///etc/openvpn// créez un dossier **keys** et mettez y toutes les clés du dossier ///usr/share/easy-rsa/keys// | ||
cp /usr/share/easy-rsa/keys/* /etc/openvpn/keys | cp /usr/share/easy-rsa/keys/* /etc/openvpn/keys | ||
+ | Ensuite copiez l'exemple l'exemple de configuration OpenVPN dans ///etc/openvpn// | ||
+ | cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/<nom_du_serveur>.conf.gz | ||
+ | Décompressez-le: | ||
+ | gzip -d <nom_du_serveur>.conf.gz | ||
+ | Ensuite modifiez le fichier nouvellement décompressé: ///etc/openvpn/<nom_du_serveur>.conf// | ||
+ | ... | ||
+ | ca keys/ca.crt | ||
+ | cert keys/<nom_du_serveur>.crt | ||
+ | key keys/<nom_du_serveur>.key | ||
+ | # This file should be kept secret | ||
+ | ... | ||
+ | # Diffie hellman parameters. | ||
+ | # Generate your own with: | ||
+ | # openssl dhparam -out dh2048.pem 2048 | ||
+ | dh keys/dh2048.pem | ||
+ | ... | ||
+ | Vérifiez aussi dans le fichier ///etc/openvpn/<nom_du_serveur>.conf//, cette ligne: | ||
+ | tls-auth ta.key 0 | ||
+ | La valeur doit être à **0** pour le **serveur**, et à **1** pour le **client** | ||
+ | Ensuite, dans le dossier ///etc/openvpn//, validez la configuration: | ||
+ | openvpn <nom_du_serveur>.conf | ||
+ | Si il n'y a pas d'erreur, relancez le serveur: | ||
+ | reboot | ||
+ | ===== Configurer un client OpenVPN sur Linux ===== | ||
+ | **Sur le serveur**, créons une certification pour le client | ||
+ | Dans le dossier ///usr/share/easy-rsa//: | ||
+ | ./build-key <nom_du_client> | ||
+ | **Sur le client**, installer aussi OpenVPN: | ||
+ | apt install openvpn | ||
+ | Ensuite mettez-vous dans le dossier ///etc/openvpn// et décompressez le fichier de conf client: | ||
+ | cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/<nom_du_client>.conf.gz | ||
+ | Décompressez ensuite le fichier: | ||
+ | gzip -d <nom_du_client>.conf.gz | ||
+ | Ensuite mettez les **clé suivantes du serveur** dans le dossier **///etc/openvpn/keys// du client** | ||
+ | <nom_du_client>.crt, <nom_du_client>.key, dh2048.pem, ca.crt | ||
+ | Ensuite mettez la clé suivante du serveur dans le dossier ///etc/openvpn// du client: | ||
+ | ta.key | ||
+ | Modifiez ensuite le fichier ///etc/openvpn/<nom_du_client>.conf//: | ||
+ | ... | ||
+ | ca keys/ca.crt | ||
+ | cert keys/<nom_du_client>.crt | ||
+ | key keys/<nom_du_client>.key # This file should be kept secret | ||
+ | ... | ||
+ | # Diffie hellman parameters. | ||
+ | # Generate your own with: | ||
+ | # openssl dhparam -out dh2048.pem 2048 | ||
+ | dh keys/dh2048.pem | ||
+ | ... | ||
+ | Modifiez ensuite dans ce fichier, la valeur remote par ceci: | ||
+ | remote <adresse_ip_du_serveur> 1194 | ||
+ | Puis vérifiez la ligne: | ||
+ | tls-auth ta.key 1 | ||
+ | La valeur doit être à 1 pour le client | ||
+ | Ensuite toujours dans le dossier, ///etc/openvpn//: | ||
+ | openvpn <nom_du_client>.conf | ||
+ | Il ne doit pas y avoir d'erreur. | ||
- | | + | Tentez un ping vers le tun0 du serveur |
+ | ping <adresse_ip_de_l'interface_tun0_du_serveur> | ||
+ | Si vous obtenez une réponse, félicitation ! | ||
+ | |||
+ | Activez ensuite openvpn de manière difinitive: | ||
+ | systemctl enable openvpn | ||
+ | Puis lancer le service: | ||
+ | systemctl start openvpn | ||
+ | |||
+ | ===== Configurer un Client OpenVPN sur Windows ===== | ||
+ | **Sur le serveur**, créons une certification pour le client | ||
+ | |||
+ | Dans le dossier ///usr/share/easy-rsa//: | ||
+ | ./build-key <nom_du_client> | ||
+ | |||
+ | **Sur le client Windows**,pour commencer télécharger un **client OpenVPN pour Windows:** | ||
+ | |||
+ | [[https://openvpn.net/index.php/open-source/downloads.html | Client OpenVPn pour Windows]] | ||
+ | |||
+ | Ensuite faîtes passez les **fichiers suivants du serveur** vers le **dossier //C:\Program Files\OpenVPN\config// du client**: | ||
+ | <nom_du_client>.crt, <nom_du_client>.key, ca.crt, ta.key | ||
+ | Dans ce même dossier //C:\Program Files\OpenVPN\config//, créer un fichier <nom_du_client>.ovpn | ||
+ | |||
+ | Insérez ensuite la configuration suivante: | ||
+ | client | ||
+ | dev tun | ||
+ | proto udp | ||
+ | remote <adresse_ip_de_l'interface_tun0_du_serveur> 1194 | ||
+ | resolv-retry infinite | ||
+ | nobind | ||
+ | ca ca.crt | ||
+ | cert <nom_du_client>.crt | ||
+ | key <nom_du_client>.key | ||
+ | tls-auth ta.key 1 | ||
+ | persist-key | ||
+ | persist-tun | ||
+ | cipher AES-256-CBC | ||
+ | verb 3 | ||
+ | |||
+ | Ensuite, cliquez sur la flêche vers le haut, dans la barre des tâche windows, et trouvez l'icone d'OpenVPN. | ||
+ | |||
+ | Cliquez ensuite sur **connecter**, félicitation ! |