Deprecated: Grav\Common\Grav::setup(): Implicitly marking parameter $environment as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Grav.php on line 189

Deprecated: Grav\Common\Grav::header(): Implicitly marking parameter $response as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Grav.php on line 478

Deprecated: Grav\Common\Grav::fireEvent(): Implicitly marking parameter $event as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Grav.php on line 541

Deprecated: Return type of Pimple\Container::offsetExists($id) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/itametis/university/vendor/pimple/pimple/src/Pimple/Container.php on line 133

Deprecated: Return type of Pimple\Container::offsetGet($id) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/itametis/university/vendor/pimple/pimple/src/Pimple/Container.php on line 98

Deprecated: Return type of Pimple\Container::offsetSet($id, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/itametis/university/vendor/pimple/pimple/src/Pimple/Container.php on line 79

Deprecated: Return type of Pimple\Container::offsetUnset($id) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/itametis/university/vendor/pimple/pimple/src/Pimple/Container.php on line 143

Deprecated: Grav\Common\Debugger::profile(): Implicitly marking parameter $message as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Debugger.php on line 543

Deprecated: Grav\Common\Debugger::stopProfiling(): Implicitly marking parameter $message as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Debugger.php on line 584

Deprecated: Grav\Common\Debugger::addEvent(): Implicitly marking parameter $time as nullable is deprecated, the explicit nullable type must be used instead in /home/itametis/university/system/src/Grav/Common/Debugger.php on line 775
Comment vérifier la correspondance entre un certificat SSL, une clef et une CSR ? | Itametis Université
Publié le 10/13/2017, rédigé par Gaulthier LALLEMAND

OpenSSL

Comment vérifier la correspondance entre un certificat SSL, une clef et une CSR ?

Prérequis : disposer d'une clef SSL, d'une CSR et d'un certificat.

La gestion des clefs et certificats peut être assez difficile, étant donnée que la durée de validité peut atteindre plusieurs années. Il faut donc être capable d'associer correctement ces fichiers, sinon le service utilisateur risque de ne pas fonctionner, voire même de faire l'impasse sur le SSL de façon silencieuse.

La prise en main d'un système en production peut aussi nécessiter de s'assurer de la compatibilité des fichiers. En effet, les noms donnés aux certificats ou aux clefs (ou aux CSR) ne sont pas toujours très parlant.

Pour vérifier cette concordance, nous allons comparer les modules de ces fichiers. Si les modules sont identiques, il y a alors de très (très très) grandes chances que les fichiers soient liés.

Pour les trois types de fichiers (KEY, CSR et CRT), la sortie attendue des commandes proposées juste après est de la forme:

Modulus=B06EED2BB81C01D34F7ABAB1CC3A1C...

La taille du module dépend de la taille de la clef.

Pour une clef :

openssl rsa -noout -modulus -in ma_clef.key

Pour une CSR :

openssl req -noout -modulus -in ma_demande.csr

Pour un certificat :

openssl x509 -noout -modulus -in mon_certificat.crt

Il ne reste qu'à comparer les sorties pour savoir qui va avec qui.