Comment puis-je générer des certificats de serveur et de client, ainsi que leurs clés respectives sur un serveur Windows et les charger dans ACM ?

Date de la dernière mise à jour : 10/04/2020

Comment puis-je générer des certificats de serveur et de client, ainsi que leurs clés respectives sur un serveur Windows et les charger dans AWS Certificate Manager (ACM) ?

Solution

Générer les certificats de serveur et de client, ainsi que leurs clés respectives

1.    Accédez à la page Téléchargements de la communauté OpenVPN.

2.    Sélectionnez le fichier Windows Installer (.exe) pour la version du système d'exploitation Windows que vous exécutez. Ensuite, sélectionnez Exécuter.

3.    Exécutez l'assistant de configuration OpenVPN :
       Sélectionnez Suivant.
       Vérifiez le contrat de licence, puis sélectionnez J'accepte.
       Pour Choisir des composants, sélectionnez Scripts de gestion des certificats EasyRSA 2.
       Sélectionnez Suivant, puis Installer.

4.    Une fois le logiciel OpenVPN installé, ouvrez une invite de commande et accédez au dossier easy-rsa :

cd \Program Files\OpenVPN\easy-rsa

5.    Démarrez la configuration OpenVPN :

init-config

6.    Ouvrez le fichier vars.bat dans un éditeur de texte :

notepad vars.bat 

Définissez le paramètre KEY_Size=2048. Ensuite, définissez les valeurs pour KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG et KEY_EMAIL. Ne laissez aucun de ces paramètres vide.

Enregistrez et fermez votre éditeur de texte.

7.    Exécutez les commandes suivantes pour définir les variables ci-dessus pour le certificat d'autorité de certification (CA), initialiser l'infrastructure à clé publique (PKI) et générer le certificat d'autorité de certification :

vars
clean-all
build-ca

Lorsque l'invite s'affiche, conservez les valeurs par défaut dans tous les champs. Vous avez également la possibilité de remplacer le paramètre Common Name par le nom de domaine de votre serveur.

8.    Exécutez la commande suivante pour générer un certificat et une clé privée pour le serveur :

build-key-server server

Lorsque l'invite s'affiche, remplacez Common Name par le nom de domaine de votre serveur au format serveur.exemple.com. Conservez les valeurs par défaut dans tous les autres champs.

9.    Exécutez la commande suivante pour générer un certificat et une clé privée pour le client :

build-key client1

Lorsque l'invite s'affiche, remplacez Common Name par le nom de domaine de votre client au format client1.exemple.com. Conservez les valeurs par défaut dans tous les autres champs.

10.    (Facultatif) Si besoin, créez des certificats client et des clés supplémentaires.

build-key client2

Lorsque l'invite s'affiche, remplacez Common Name par le nom de domaine de votre client au format client2.exemple.com. Conservez les valeurs par défaut dans tous les autres champs.

Important : si vous ne suivez pas le format spécifié ci-dessus pour définir les noms communs, les noms de domaine ne seront pas disponibles lorsque vous importerez le certificat dans ACM. Par conséquent, le certificat n'est pas une option disponible pour spécifier le certificat de serveur ou le certificat client lorsque vous créez le point de terminaison VPN du client AWS.

Importer les certificats et clés du serveur et du client dans ACM

Remarque : les certificats de serveur et de client, ainsi que leurs clés respectives, sont disponibles sous C:\Program Files\OpenVPN\easy-rsa\keys.

1.    Ouvrez les fichiers suivants : server.crtserver.keyclient1.crtclient1.key et ca.crt.

2.    Ouvrez la console ACM, puis sélectionnez Importer un certificat.

3.    Sur la page Importer un certificat, copiez-collez le contenu :
       Du fichier server.crt vers Corps du certificat.
       Du fichier server.key vers Clé privé du certificat.   
       Du fichier ca.crt vers Chaîne de certificats.     

4.    Sélectionnez Importer pour importer le certificat de serveur.

5.    Sélectionnez à nouveau Importer un certificat et copiez-collez le contenu :                 
       Du fichier client1.crt vers Corps du certificat.
       Du fichier client1.key vers Clé privée du certificat.     
       Du fichier ca.crt vers Chaîne de certificats.        

6.    Sélectionnez Importer pour importer le certificat client.

Vous pouvez également utiliser l'interface de ligne de commande AWS (AWS CLI) pour importer les certificats de serveur et de client, ainsi que leurs clés dans ACM :

cd C:\Program Files\OpenVPN\easy-rsa\keys
aws acm import-certificate --certificate file://"C:\Program Files\OpenVPN\easy-rsa\keys\server.crt" --private-key file://"C:\Program Files\OpenVPN\easy-rsa\keys\server.key" --certificate-chain file://"C:\Program Files\OpenVPN\easy-rsa\keys\ca.crt"
aws acm import-certificate --certificate file://"C:\Program Files\OpenVPN\easy-rsa\keys\client1.crt" --private-key file://"C:\Program Files\OpenVPN\easy-rsa\keys\client1.key" --certificate-chain file://"C:\Program Files\OpenVPN\easy-rsa\keys\ca.crt"

Confirmer que vous avez créé et importé avec succès vos certificats de serveur et client

1.    Ouvrez la console ACM.

2.    Dans la liste des certificats, vérifiez que Émis apparaît dans la colonne Statut pour vos certificats de serveur et client.


Authentification mutuelle (pour AWS Client VPN)

Cet article vous a-t-il été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d’aide ?