Outils pour utilisateurs

Outils du site


documentation:technique:openvpn:1-pki-client

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
documentation:technique:openvpn:1-pki-client [2022/12/04 21:27] – [Comme service avec systemd] sragonsdocumentation:technique:openvpn:1-pki-client [2022/12/04 22:20] (Version actuelle) – supprimée sragons
Ligne 1: Ligne 1:
-====== Création de la clé PKI coté client ====== 
- 
-Cette page décrit comment configurer un nouveau client VPN, de sa machine à notre serveur. 
- 
-<WRAP info> 
-Avant de vous lancer, il faut définir ces variables et les remplacer dans cette page : 
-  * ''NOM_CLIENT'' : le nom d'adhérent·e, suivi optionnellement d'un nom au choix. Par exemple, pour l'adhérent⋅e //camille// : ''camille'', ''camille-maison'', ''camille-autre''. 
-  * ''IP4_CLIENT'' : l'adresse IPv4 qu'on va assigner à ce client VPN, dans notre plage IP (80.67.162.x), où ''x'' est incrémenté à chaque nouvelle souscription VPN. 
-</WRAP> 
- 
-===== Générer un certificat et une clé privée ===== 
- 
-Cette étape est à réaliser sur le poste du client. 
- 
-==== Sous GNU/Linux ==== 
-=== Pré-requis === 
- 
-Assurez-vous d'avoir les paquets suivants d'installés : 
- 
-  * ''openvpn'' 
-  * ''easy-rsa'' 
- 
-Si vous n'êtes pas sous Debian, pour faciliter la mise en place de l'environnement //easy-rsa//, il vous faudra télécharger en plus le script {{ :documentation:technique:openvpn:make-cadir |make-cadir}} (modifié depuis le script du paquet [[https://salsa.debian.org/debian/easy-rsa/-/raw/master/debian/make-cadir|Debian]]). 
- 
-=== Création du certificat et de la clé === 
- 
-  - Lancer un terminal. Avec votre compte utilisateur, placez-vous dans un répertoire de votre choix (par exemple dans ''~/Documents/Mycélium/VPN'') 
-  - Créer le dossier qui contiendra les certificats avec //easy-rsa//, s'y rendre et initialiser l'environnement : <code bash> 
-make-cadir ./client-ca 
-cd ./client-ca 
-./easyrsa init-pki 
-</code> 
-  - Créer le certificat et la clé du client : 
-    * soit avec une phrase de passe, qui vous sera demandée et qui sera à saisir à chaque connexion au serveur VPN :<code bash> 
-./easyrsa gen-req NOM_CLIENT 
-</code> 
-    * soit sans chiffrer la clé privée avec un mot de passe :<code bash> 
-./easyrsa gen-req NOM_CLIENT nopass 
-</code> 
-  - Puis validez la suite des informations demandées. 
- 
-À la fin, on se retrouve avec un dossier ''pki/'', qui contient au moins : 
-  * la clé privée du client : ''pki/private/NOM_CLIENT.key'' 
-  * la requête de signature de certificat du client : ''pki/reqs/NOM_CLIENT.req'' 
- 
-<WRAP info> 
-Lors de l’exécution de la commande **./easyrsa gen-req** vous devez indiquer un **Common Name (CN)**. 
-Attention de saisir un CN indentique à NOM_CLIENT. En particulier, éviter les caractères spéciaux.  
-</WRAP> 
- 
-===== Signer le certificat du client et le créer sur le serveur ===== 
- 
-Cette étape est à réaliser sur le conteneur //openvpn//, où se trouve notre CA intermédiaire pour le VPN. 
- 
-  - Copier la requête de signature de certificat du client :<code bash> 
-scp pki/reqs/NOM_CLIENT.req openvpn:/tmp/ 
-</code> 
-  - Se connecter sur le conteneur et créer le client dans OpenVPN :<code bash> 
-ssh openvpn 
-manage-vpn create NOM_CLIENT -r /tmp/NOM_CLIENT.req -4 IP4_CLIENT 
-</code> 
-  - Récupérer le profil OpenVPN généré pour le client sur votre machine :<code bash> 
-scp openvpn:/tmp/NOM_CLIENT.ovpn . 
-</code> 
- 
-Vous aurez besoin du mot de passe de notre Certificat d'Autorité, il est situé dans le password store mycelium-pass[[documentation:technique:git:usage-des-depots-mycelium|[1]]][[:documentation:gestion:gestion-des-secrets|[2]]], sous le libellé ''mycelium/openvpn/ca''. 
- 
-<WRAP info> 
-Vous pouvez également communiquer à l'adhérent⋅e sa clé signée, qui se trouve dans ''/etc/openvpn/easy-rsa/pki/issued/NOM_CLIENT.crt'' sur le conteneur //openvpn//. Ce fichier serait alors à placer dans son dossier ''pki/signed'', créé préalablement. 
-</WRAP> 
- 
-TODO Discuter et définir d'une façon d'assigner les adresses IPs 
- 
-TODO Définir également l'adresse IPv6 
- 
-===== Configurer OpenVPN sur le client ===== 
- 
-Le profil OpenVPN récupéré précédemment est à transmettre à l'adhérent⋅e. Pour que ce fichier soit complet, il reste à ajouter sa clé privée à la fin, dans une balise ''<key></key>''. Sous bash, cela peut se faire avec la commande suivante dans le dossier où se trouve l'environnement //easy-rsa// :<code bash> 
-{ echo '<key>'; cat pki/private/NOM_CLIENT.key; echo '</key>'; } >> NOM_CLIENT.ovpn 
-</code> 
- 
-==== Sous Gnome avec NetworkManager ==== 
- 
-**Pré-requis sous Debian :** 
-  * [[https://packages.debian.org/stable/network-manager-openvpn-gnome|network-manager-openvpn-gnome]] 
- 
-On peut ensuite ajouter une nouvelle connexion de type **OpenVPN** et importer le profil généré précédemment. 
- 
  
documentation/technique/openvpn/1-pki-client.1670185672.txt.gz · Dernière modification : 2022/12/04 21:27 de sragons

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki