LINUX:Extension de la CA privée (V3)

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

But

Dans cet article, nous allons étendre les fonctionnalités des certificats publiques de serveur en passant à la version 3. Cette fonctionnalité est nécessaire pour utiliser MS Edge et Google Chrome.

Cette procédure se réalise sous Linux.


Création du fichier de configuration V3

La première étape consiste à créer un fichier de paramètres pour les extensions de type V3.

On crée le fichier "reqv3.cnf" dont le contenu est le suivant (le nom peut être différent):


[ v3_req ]
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = DNS: serverdb.home.dom, IP: 192.168.1.100

Une autre présentation:


[ v3_req ]
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
# Liste SAN
[ alt_names ]
DNS = serverdb.home.dom
IP = 192.168.1.100

On remarque le nom DNS de notre site WEB.

La seconde entrée reprenant l'adresse IP est facultative; elle est ajoutée pour information.


Procédure

L'ensemble des opérations décrites dans l'article précédent Création d'une CA privée (V1), sont identiques à l'exception de la création du certificat publique de serveur.


Création du certificat publique pour le serveur

L'étape qui change est la création du certificat publique du serveur ou du site ("/etc/pki/home/certs/serverdb.home.crt". Ce qui change est l'ajout du fichier de configuration d'extension "reqv3.cnf" et d'y faire référence à son option "v3_req".

openssl x509 -req -days 3650 -extensions v3_req -extfile reqv3.cnf -in /etc/pki/home/req/serverdb.home.csr -out /etc/pki/home/certs/serverdb.home.crt -passinpass:MOTDEPASSESECRET -CA /etc/pki/home/certs/ca.home.crt -CAkey /etc/pki/CA/private/ca.key -CAcreateserial -CAserial /etc/pki/home/misc/ca.home.srl

On voit que sa validation est renforcée par la CA (clés privée et publique), d'où l'ajout du mot de passe qui sécurise notre CA lors de la création de son certificat publique.

Cette opération se fait sur base des informations contenues dans la requête ("/etc/pki/home/req/serverdb.home.csr").

Nous avons choisit 10 ans de validité ("-days 3650") mais vous pouvez définir un autre delais, 1 an par exemple.

Pour la première utilisation, il y a initialisation du n° de série. Par la suite, lors du renouvellement ou de la création d'un certificat pour le même domaine, ce fichier sera incrémenté. Chaque certificat publique aura un n° de série différent, ce qui peut être utile lors de la révocation d'un certificat qui n'a plus de raison d'être ou piraté ("/etc/pki/home/misc/ca.home.srl").

Si on crée un certificat publique pour un autre site, la commande est analogue mais il ne faut pas réinitialiser le n° de série; l'option "-CAcreateserial" est à éliminer.






->retour aux certificats