Ceci est une ancienne révision du document !
Avec OpenSSH vous pouvez créer une autorité de certification et signer les certificats.
Pour en savoir plus : https://sysadmin.cyklodev.com/creer-une-autorite-de-certification-ca-avec-openssl/
La création d'un certificat auto-signé pour le CA
Dans ce document est présenté la création d'un certificat signé pour un utilisateur
Dans l'invite de commandes lancez la commande suivante :
$ openssl genrsa -aes256 -out ca-key.pem 2048
Indiquez une pass-phrase pour votre nouvelle clé, pass-phrase qui sera demandé lors de la création du certificat.
Pour générer la requête de demande de signature, il faut utiliser le fichier contenant la clé privée.
Lors de la création de la requête vous avez à saisir vos informations d'identification du CA. Il est important d'indiquer un Common Name unique.
$ openssl req -new -key ca-key.pem -out ca.csr
Lors de la génération d'un certificat autosigné, vous avez à préciser le format du certificat (x509) et la durée de validation. En général un certificat d'une autorité de certification a une durée plutôt longue (ici 365000 jours)
$ openssl x509 -req -days 365000 -in ca.csr -signkey ca-key.pem -out ca.crt
Le certificat généré est le fichier .crt et la clé privée associée, le fichier .pem.
Le fichier de configuration du CA permet notamment de définir :
Cela ne sera pas abordé dans ce document.
Deux cas de figure sont possibles :
La démarche de création d’un certificat signé est la suivante :
Dans l'invite de commandes lancez la commande suivante :
$ openssl genrsa -aes256 -out user-private.pem 2048
Indiquez une pass-phrase pour votre nouvelle clé, pass-phrase qui sera demandé lors de la création du certificat.
Pour générer la requête de demande de signature, il faut utiliser le fichier contenant la clé privée.
Lors de la création de la requête vous avez à saisir vos informations d'identification du CA. Il est important d'indiquer un Common Name unique.
$ openssl req -new -key user-private.pem -out user.csr
Lors de la génération du certificat signé par le CA, vous avez à préciser le format du certificat (x509) et la durée de validation (365 jours). Il est nécessaire de préciser el numéro de série du certificat (set_serial).
$ openssl x509 -req -days 365 -CA ca.crt -CAkey ca-key.pem -set_serial 01 -in user.csr -out user.crt
Le certificat généré est le fichier .crt et la clé privée associée, le fichier .pem.
Pour vérifier que le certificat de l'utilisateur est correct,; utiliser la commande suivante :
$ openssl verify -CAfile ca.crt user.crt serverMariaDB-cert.pem: OK
Le certificat est maintenant à transmettre à l'utilisateur :
Cette CA n’est pas reconnu. Il faudra également transmettre le certificat de la CA (ca.crt) pour que l’autorité soit reconnue en l'important dans la magasin de certificat de son ordinateur en tant que certificat approuvée par l’organisation.
Pour reconnaître un certificat comme de confiance, il faut l'importer dans le magasin des certificats approuvés. Cela concerne le certificat de la CA.
<code shell> $ sudo cp ca.crt /usr/local/share/ca-certificates/ca.crt $ sudo update-ca-certificates
Utilisez la console certmgr.msc pour importer le certificat dans le dossier Autorités de certification racines de confiance.