For the complete documentation index, see llms.txt. This page is also available as Markdown.

Générer des certificats serveur et client auto-signés avec OpenSSL

Voici le guide de référence pour créer des certificats sécurisés, aussi bien pour les serveurs que pour les clients, à l'aide d'OpenSSL.

Procédure

Sous Windows, il est recommandé d'utiliser Chocolatey pour installer OpenSSL et ses dépendances. La ligne de commande est simplement choco install openssl.

Créer l'autorité de certification (CA) racine

  1. Générez la Clé privée de la CA racine à l'aide de la ligne de commande suivante : openssl ecparam -name prime256v1 -genkey -noout -out ca.key. Chaque certificat doit avoir une clé privée correspondante.

  2. Générez le Certificat de la CA racine (autorité de certification) à l'aide de la ligne de commande suivante : openssl req -new -x509 -sha256 -key ca.key -out ca.crt.

  3. Saisissez les informations relatives à la CA (le certificat sera généré dans le fichier ca.crt) :

    Country Name (2 letter code) [AU]:US
    State or Province Name (full name) [Some-State]:CA
    Locality Name (eg, city) []:Toontown
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:Acme inc.
    Organizational Unit Name (eg, section) []:Security
    Common Name (e.g. server FQDN or your name) []:acme.com
    Email Address []:security@acme.com
  4. Installez le certificat.

    Notez que le certificat doit être installé sur le serveur ainsi que sur tous les clients afin de valider la légitimité des certificats émis. Certains navigateurs présentent également des particularités qui sont décrites dans la rubrique.

Générer une demande de signature de certificat (CSR) – Serveur

  1. Générez la Clé privée du certificat serveur à l'aide de la ligne de commande suivante : openssl ecparam -name prime256v1 -genkey -noout -out server.key (clé privée 256 bits dans le fichier server.key). Chaque certificat doit avoir une clé privée correspondante.

  2. Générez la Demande de signature de certificat (CSR) du serveur à l'aide de la ligne de commande suivante : openssl req -new -sha256 -key server.key -out server.csr. Cette demande sera ensuite traitée sur le serveur de la CA racine.

  3. Saisissez les informations relatives au certificat serveur (le FQDN exact utilisé par le serveur doit être spécifié). Par exemple :

  4. Saisissez un mot de passe à l'invite ; l'utilisation d'un gestionnaire de mots de passe ainsi qu'un générateur de mots de passe robuste sont indispensables.

  5. Transférez le fichier server.csr vers la CA racine.

  6. Traitez la demande en suivant les instructions de la section Traiter une demande de signature de certificat (CSR) sur l'autorité de certification (CA) racine ci-dessous.

  7. Déployez le certificat.

Générer une demande de signature de certificat (CSR) – Client

Suivez la même procédure que pour le certificat serveur, mais vous devez adapter deux attributs des informations saisies à vos besoins, à savoir le Nom commun et l'Adresse e-mail.

Traiter une demande de signature de certificat (CSR) sur l'autorité de certification (CA) racine

Traitez le CSR en générant un certificat.

Générez-le à l'aide de la ligne de commande suivante, où server.csr a été généré sur le serveur : openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 1000 -sha256

Cette opération génère le certificat dans le fichier server.crt. Vous devez le déployer sur le serveur sur lequel vous avez généré le CSR.

Mis à jour

Ce contenu vous a-t-il été utile ?