Commandes:Génération de certificats SSL serveur : Différence entre versions

De WIKI.minetti.org
Aller à : navigation, rechercher
(Page créée avec « == But == Créer un certificat x509 pour une application serveur. == Étape préliminaire == Avant de pouvoir générer des certificats et dans le cas ou vous ne désirez... »)
 
 
Ligne 45 : Ligne 45 :
  
 
Reportez-vous au chapitre [[Commandes:Gestion des certificats par l'autorité de certification#Signature d'un certificat|Gestion des certificats par l'autorité de certification]] pour procéder à la signature du certificat.
 
Reportez-vous au chapitre [[Commandes:Gestion des certificats par l'autorité de certification#Signature d'un certificat|Gestion des certificats par l'autorité de certification]] pour procéder à la signature du certificat.
 +
 +
Pour ajouter un ou plusieurs '''subjectAltName''', on tape la commande suivante:
 +
openssl req -new -addext "subjectAltName=DNS:www.srv-minetti.org,DNS:ftp.srv-minetti.org" -key private/openldap.key -out openldap.req
  
 
== Réception du certificat signé ==
 
== Réception du certificat signé ==

Version actuelle en date du 22 avril 2025 à 10:14

But

Créer un certificat x509 pour une application serveur.

Étape préliminaire

Avant de pouvoir générer des certificats et dans le cas ou vous ne désirez pas faire signer vos certificats pas une autorité de certification reconnue (comme Verisign), il est impératif de disposer d'au moins un certificat pour notre autorité de certification (CA). Si cela, n'a pas déjà été fait, reportez-vous à la génération du certificat de l'autorité de certification.

Création d'une demande de certificat

  • Se placer dans le répertoire /etc/pki/CA sous CentOS/RedHat/Fedora et /etc/ssl sous ubuntu:
  • La première étape consiste à générer un couple clé privée/clé publique pour le certificat:
openssl genrsa -out private/openldap-pw.key -des3 1024
Generating RSA private key, 1024 bit long modulus
..........++++++
..........................................++++++
e is 65537 (0x10001)
  • Pour éviter que l'application serveur soit obligé de demander la passphrase au démarrage, enlever la du certificat:
openssl rsa -in private/openldap-pw.key -out private/openldap.key
rm private/openldap-pw.key
  • Restreindre l'accès à la biclé:
chown root.ldap private/openldap.key
chmod 640 private/openldap.key
  • La seconde étape consiste à créer la demande de certificat en y intégrant notre couple clé privée/clé publique:
openssl req -new -key private/openldap.key -out openldap.req
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 enter '.', the field will be left blank.
-----
Country Name (2 letter code) [FR]:
State or Province Name (full name) [Herault]:
Locality Name (eg, city) [Saint-Jean-de-Védas]:
Organization Name (eg, company) [Minetti]:
Organizational Unit Name (eg, section) []:Serveur LDAP
Common Name (eg, your name or your server's hostname) []:ldap.srv.minetti.org
Email Address []:root@minetti.org

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

On obtient le fichier openldap.req qu'on envoi à l'autorité de certification pour être signé.

Reportez-vous au chapitre Gestion des certificats par l'autorité de certification pour procéder à la signature du certificat.

Pour ajouter un ou plusieurs subjectAltName, on tape la commande suivante:

openssl req -new -addext "subjectAltName=DNS:www.srv-minetti.org,DNS:ftp.srv-minetti.org" -key private/openldap.key -out openldap.req

Réception du certificat signé

Placer le nouveau certificat x509 signé dans /etc/pki/tls et restreindre son accès:

chown root.ldap certs/openldap.pem
chmod 640 certs/openldap.pem

Renouvellement d'une demande de certificat

Le renouvellement s'obtient en créant une nouvelle demande de certificat à partir de l'actuel certificat:

openssl x509 -x509toreq -in certs/openldap.pem -signkey private/openldap.key -out openldap.req

On obtient le fichier openldap.req qu'on envoi à l'autorité de certification pour être signé.

Reportez-vous au chapitre Gestion des certificats par l'autorité de certification pour procéder à la signature du certificat.

Quelques commandes utiles

Pour visualiser le contenu d'un certificat:

openssl x509 -purpose -in certs/certificat.pem -text -noout

Pour supprimer le mot de passe d'un fichier clé:

openssl rsa -in certificat.key -out certificat-sans-mot-de-passe.key