openssl : Générer des clés
De nos jours, il est conseillé de générer des clés d'une longueur de 2048 bits pour une meilleure sécurité.
Pour un serveur Apache (configuration SSL), il est conseillé de générer des clés sans phrase de passe. Dans le cas contraire, à chaque démarrage du service Apache, la phrase de passe sera demandée.
Avec OpenSSL, la clé privée contient également les informations de la clé publique. Il n'est donc pas nécessaire de générer la clé publique séparément.
Génération d'une clé RSA
Générer une clé simple :
$ openssl genrsa
Générer une clé de 2048 bits et la sauvegarder dans un fichier :
$ openssl genrsa -out mykey.pem 2048
Idem mais avec un cryptage DES3 et une phrase de passe :
$ openssl genrsa -des3 -out mykey.pem 2048
Génération d'une clé publique RSA
$ openssl rsa -in mykey.pem -pubout
Génération d'une clé DSA
Les clés DSA sont utilisées pour la signature d'objets divers.
Le processus de génération se déroule en deux étapes.
Premièrement, générer les paramètres permettant la génération de la clé :
$ openssl dsaparam -out dsaparam.pem 2048
Puis, générer la clé en fonction des paramètres générés ci-dessus :
$ openssl gendsa -des3 -out privkey.pem dsaparam.pem
Une phrase de passe est demandée lors de la génération de la clé DSA.
Pour ne pas avoir de phrase de passe, il suffit de supprimer le paramètre "-des3".
Supprimer la phrase de passe d'une clé privée RSA
Cette commande permet de générer une nouvelle clé privée (newkey.pem) à partir de celle protégée par une phrase de passe (mykey.pem).
$ openssl rsa -in mykey.pem -out newkey.pem
Supprimer la phrase de passe d'un certificat
Pour l'exemple, nous allons créer un certificat crypté (mycert.pem).
Ce fichier (mycert.pem) contiendra la clé privée et le certificat public et sera protégé par une phrase de passe.
$ openssl req -x509 -days 365 -subj '/C=FR/ST=Loire Atlantique/L=Ancenis/CN=www.monsite.fr/emailAddress=toto@gmail.com' -newkey rsa:2048-keyout mycert.pem -out mycert.pem
Le décryptage du certificat se déroule en deux étapes :
Génération de la clé privée à partir du certificat crypté (mycert.pem) vers le nouveau certificat (newcert.pem) :
$ openssl rsa -in mycert.pem -out newcert.pem
Ajout du certificat public dans le nouveau certificat (newcert.pem) :
$ openssl x509 -in mycert.pem >>newcert.pem
Commentaires
Momo (non vérifié)
dim, 10/02/2019 - 03:47
Permalien
Bonjour.
Bonjour.
J'ai un fichier.pem qui est une clé publique RSA . Je n'arrive pas à l'ouvrir avec la commande
openssl rsa -in fichier.pem -noot -text -pubin .
Merci pour votre aide
ronan
dim, 10/02/2019 - 22:48
Permalien
Bonjour,
Envoyez moi le fichier en question via https://send.firefox.com/
Je vais essayer de voir ce qui ne va pas
Melinda (non vérifié)
mer, 12/06/2019 - 11:10
Permalien
Problème lors de la création de mycert.pem
Bonjour, merci beaucoup pour votre tuto, j'ai essayé de le faire mais je bloque quand j'arrive à l'étape de la création de "newcert.pem" il me dit que "mycert.pem" n'existe pas, comme si elle n'a pas été générer dans l'étape précédente, si vous pouviez m'aider. merci beaucoup.
ronan
mer, 12/06/2019 - 19:17
Permalien
Bonjour Melinda
Quelle est la commande qui provoque cette erreur ?
N'hésitez pas à utiliser le formulaire de contact
Ajouter un commentaire