Générer une CSR sur Amazon Web Services (AWS)
Les certificats SSL peuvent être utilisés avec plusieurs produits AWS, comme AWS Elastic Beanstalk, Elastic Load Balancing, CloudFront et AWS OpsWorks.
Dans cet article, nous expliquons comment générer un code CSR valable pour ces services.
La CSR (Certificate Signing Request, demande de signature de certificat) est un court texte chiffré qui contient des informations sur le demandeur du certificat et sur le nom de domaine qu’il sécurisera.
Après avoir acheté un SSL, vous devez associer le certificat à votre nom de domaine. Pour cela, vous activez le SSL et soumettez le code CSR à l’AC (autorité de certification) pendant l’activation. L’AC utilisera ensuite les données de la CSR pour valider votre certificat.
Une clé privée RSA est générée en même temps que la CSR. La clé privée joue un rôle important dans le chiffrement des informations. Elle doit être conservée en lieu sûr sur le serveur et ne doit pas être compromise.
Les outils en ligne de commande suivants sont nécessaires pour créer le certificat et le téléverser sur AWS :
OpenSSL : cet outil sert à générer une clé privée et une CSR.
PowerShell ou cmd : outils en ligne de commande standard des serveurs Windows.
AWS Command Line Interface (CLI) : sert à téléverser les certificats sur AWS.
Vous trouverez ci-dessous deux méthodes pour générer votre CSR :
Générer une CSR avec PowerShell
Générer une CSR avec OpenSSL
Cette option est généralement utilisée sur les instances Amazon sous Linux, car l’outil nécessaire y est en général déjà installé, ou il est facile à installer. Toutes les commandes doivent être exécutées soit via la CLI, soit via un outil en ligne de commande tiers connecté à votre instance (par exemple PuTTY, ou l’application Terminal sous macOS et Linux).
La clé privée est créée en premier, puis la CSR est générée à partir de celle-ci.
Exécutez la commande suivante pour générer la clé :
sudo openssl genrsa -out private.key 2048
Ici, 2048 est la taille de la clé. Si vous ne précisez pas de taille, une clé de 2048 bits est générée.
Vous pouvez donner n’importe quel nom au fichier de clé (private.key) pour le reconnaître facilement si plusieurs SSL sont stockés sur le serveur.
Si vous voulez générer le SSL avec un algorithme ECDSA, vous pouvez utiliser plutôt cette commande (il s’agit seulement d’une option recommandée, d’autres configurations sont possibles) :
sudo openssl ecparam -genkey -name secp384r1 -out private.key -genkey
La CSR est générée à partir de la clé privée. La commande suivante sert à créer la CSR :
sudo openssl req -new -key private.key -out csr.pem
2.1. Vous pouvez aussi utiliser une seule commande pour générer la clé privée RSA et la CSR :
sudo openssl req -new -newkey rsa:2048 -nodes -keyout private.key -out csr.pem
Le résultat ressemblera à l’exemple suivant :
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields, but you can leave some blank.
For some fields there will be a default value.
If you just press Enter, the field will be left blank.
Les informations suivantes doivent être renseignées. Nous vous recommandons vivement de remplir tous les champs. Une CSR comportant des champs vides peut être rejetée par notre système ou par l’autorité de certification.
Remarque : pour les SSL de type Organisation Validation (OV) ou Extended Validation (EV), veillez à utiliser la raison sociale exacte de l’entreprise. S’il s’agit d’une CSR de réémission, vérifiez que les informations de l’entreprise sont identiques à celles utilisées précédemment.
Remarque : utilisez uniquement des caractères alphanumériques. Une CSR contenant des caractères spéciaux, comme Ä ou È, ne sera pas reconnue. Ces caractères spéciaux doivent être remplacés par leurs équivalents alphanumériques, comme A et E.
Country name : utilisez un code pays valide à 2 lettres.
State of Province : indiquez le nom de votre État ou de votre province, ou le nom de votre localité si vous n’en avez pas.
Locality name : indiquez votre ville, commune ou autre localité.
Organization Name : indiquez le nom de votre entreprise/organisation, ou NA (Not Applicable, non applicable).
Organizational Unit : indiquez le nom de votre unité ou service, ou NA (Not Applicable, non applicable).
Common Name : le nom de domaine complet (FQDN) à sécuriser, par exemple www.example.com
Remarque : dans le champ Common Name, indiquez exactement le nom de domaine à sécuriser. Il doit ressembler à www.example.com, example.com, ou à mail.example.com si vous devez sécuriser le sous-domaine.
Pour un certificat wildcard, le Common Name doit être indiqué sous la forme *.example.com ou *.sub.example.com.
Email address : l’adresse e-mail de l’administrateur du serveur, par exemple admin@example.com. Le système récupérera cette adresse e-mail comme contact administratif, à laquelle les fichiers du certificat SSL seront envoyés une fois le certificat émis. Vous pourrez aussi la modifier pendant l’activation du SSL.
Les champs Challenge password et Optional company name sont des champs hérités et peuvent être ignorés.
La plupart des certificats que nous proposons sécurisent automatiquement www.example.com et example.com. Toutefois, en cas de doute, nous vous recommandons de vérifier avec notre équipe d’assistance la bonne façon d’indiquer votre nom de domaine pour un certificat donné.
Exécutez la commande suivante pour ouvrir le fichier CSR que vous venez de générer :
cat csr.pem
Le résultat affiche la CSR en texte brut. Copiez tout le texte à partir de la ligne « —–BEGIN CERTIFICATE REQUEST—– » et utilisez-le pour l’activation du certificat. Une fois le certificat émis par l’autorité de certification, vous pouvez procéder à son installation.
La procédure est la même pour toutes les distributions Linux, y compris Amazon AMI Linux.
Remarque : sous Windows, une procédure similaire peut être suivie de cette façon.
AVERTISSEMENT : gardez à l’esprit les points suivants avant de commencer :
Notez le répertoire dans lequel la CSR a été générée, car la clé privée du SSL y sera enregistrée. Vous devrez savoir où se trouve la clé pour installer le SSL.
Si vous ne savez pas de quel dossier il s’agit, vous pouvez le vérifier avec la commande pwd :
find / -type f -name “*.csr”
ou
find / -type f -name “*.pem”
(selon l’extension utilisée)
Générer une CSR avec PowerShell
Cette méthode est utilisée sur les machines Windows, car elles disposent déjà des outils en ligne de commande nécessaires. Un magasin de demandes de certificat est créé à la place d’une clé privée.
Créez le fichier de configuration example.inf (vous pouvez choisir n’importe quel nom de fichier) sur votre serveur Windows avec les informations de la CSR, en suivant cet exemple :
[NewRequest]
Subject = “/CN=Common Name/C=Country/ST=State or Province/L=Locality or City/O=Company/OU=Organizational unit”
Exportable = TRUE
KeyLength = key size in bits
KeySpec = 1
KeyUsage = 0xf0
MachineKeySet = TRUE
[RequestAttributes]
CertificateTemplate=“WebServer”
[Extensions]
OID = 1.3.6.1.5.5.7.3.1
OID = 1.3.6.1.5.5.7.3.2
Remplacez toutes les valeurs encadrées par « ** » par vos propres informations.
Enregistrez le fichier et exécutez la commande suivante dans cmd ou PowerShell :
certreq -new example.inf csr.txt
Ouvrez le fichier avec n’importe quel éditeur de texte (nous utilisons le Bloc-notes dans cet exemple, car il est toujours présent sous Windows) ou utilisez la commande suivante :
notepad csr.txt
Remarque : si vous prévoyez d’importer le SSL avec AWS certificate manager (ACM), sachez qu’il ne prend en charge que les clés de 2048 bits et les clés obsolètes de 1024 bits.
Cette page vous a-t-elle aidé ?
Merci pour votre retour.