|
Publié le par Gaulthier LALLEMAND

OpenSSL

Voir les informations contenues dans un certificat SSL ou une CSR ?

Prérequis : disposer d'une CSR et/ou d'un certificat.

Afficher le certificat en clair

Pour cela, rien de plus simple. Munissez-vous d'un fichier certificat (portant généralement l'extension .crt) et tapez la commande suivante :

openssl x509 -in mon_certificat.crt -text

On obtient alors une sortie constituée de deux parties :

  • Première partie, les informations détaillées (le domaine concerné, la CA signatrice, les dates de début et de fin de validité, etc).
  • Deuxième partie, le certificat chiffré en base 64.

Pour ne garder que les informations (la première partie), il suffit de rajouter l'option -noout :

openssl x509 -in mon_certificat.crt -noout -text

Si une erreur de ce type apparaît:

unable to load certificate
140061551899904:error:0906D06C:PEM routines:PEM_read_bio:no start line:../crypto/pem/pem_lib.c:691:Expecting: TRUSTED CERTIFICATE

Cela peut signifier que le certificat est au format DER. Vous pouvez le convertir au format PEM, ou le lire en l'état (voir à la fin de cet article).

Afficher une information particulière

Tapez la commande suivante :

openssl x509 -in mon_certificat.crt -noout [CHAMPS]

Et remplacez [CHAMPS] par une de ces options:

  • -subject : affiche le DN (Distinguished Name) du certificat, i.e. une liste d'attributs (le minimum étant le CN seul, les autres attributs sont facultatifs) ;
  • -issuer : affiche le DN de l'autorité de certification ayant signé ce certificat ;
  • -startdate : affiche la date de début de validité du certificat ;
  • -enddate : affiche la date de fin de validité du certificat ;
  • -dates : équivalent de -startdate -enddate ;
  • -email : affiche l'email du certificat.

Il est possible de cumuler ces options. Les champs seront alors écrits dans l'ordre demandé.

Afficher les informations d'une CSR

Pour afficher les informations "en clair" d'une CSR (Certificate Signing Request), il suffit de taper la commande suivante :

openssl req -in ma_requete_de_signature.csr -noout -text

Et pour le format DER ?

Lorsque rien n'est précisé à openssl, un certificat est considéré au format PEM par défaut (c'est le cas des commandes ci-dessus). Pour lire les informations d'un certificat au format DER, il suffit d'ajouter l'option -inform der, ce qui donne :

openssl x509 -in mon_certificat.der.crt -noout -text -inform der