Création de la partie Authorité de Certification


Attention à bien adapter la clé avec le temps, car peut être dans 6 mois il faudra créer des clés en 4096 sinon votre navigateur vous refusera la clé avec le message suivant :
"SSL_ERROR_BAD_CERT_ALERT" SSLCACertificateFile

Comme par défaut openssl chiffre en 2048, vous pouvez enlever 2048, ainsi le chiffrement sera celui par défaut, quand la norme changera, pas besoin d'adapter

Création de la clé

openssl genrsa -des3 -out CA.key 2048

Explication :

  • genrsa : sert à générer la clé privée
  • -des3 : c'est la méthode de chiffrement (cipher)

Il vous sera demande d'entrer un mot de passe, indiquer un mot de passe fort :

Enter pass phrase for CA.key:
Verifying - Enter pass phrase for CA.key:

Creation du certificat CA

Il sera valide 3650 j soit environ 10 ans

Vous pouvez indiquer tout et n'importe quoi pour la CA comme pour le CSR client, ce qui importe, c'est que le certificat client soit signé par l'autorité de certification
Je vous conseille tout de même de remplir correctement les champs afin de reconnaître vos certificats si vous en faites plusieurs
Lors de la question Common Name (e.g. server FQDN or YOUR name) []: je vous conseille d'indiquer le sous domaine ou domaine utilisé pour l'authentification (pour la partie CA) et le nom ou prénom (pour la partie client)

openssl req -x509 -new -key CA.key -sha256 -days 3650 -out CA.pem

Explication :

  • req : Sert pour la génération du certificat
  • X509 : Indique que l'on utilise la partie permettant de signer le certificat
  • -new : Indique une nouvelle demande de certificat
  • -key : Requière la clé créée ci-dessus, si vous n'indiquez pas la clé elle sera créée automatiquement en 2048
  • -sha256 : C'est l'algorithme de hashage qui permet de faire une empreinte du certificat qui pourrait servir pour la révocation
  • -days : Nombre de jours avant expiration
  • -out : Nom du fichier en sortie

Il vous sera demandé les choses suivantes :

Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:Yvelines
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Chezme
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:chezme.eu