Boîte à Outils Informatique

Centre SSL / Certificats / PKI

SSL / TLS / X.509 / PKI

Centre SSL / Certificats / PKI

Analysez un certificat public, décodez un PEM ou un CSR et suivez les diagnostics adaptés aux erreurs de chaîne, d’expiration, de SAN et d’auto-enrollment.

Analyser un certificat HTTPS public

Le serveur BAOI se connecte uniquement au port 443 d’un nom de domaine résolvant vers une adresse IP publique.

Décoder un certificat PEM

Décoder une demande CSR

Le CSR peut contenir des informations publiques de demande de certificat. Ne collez jamais une clé privée.

OpenSSL Lire un certificat distant
openssl s_client -connect exemple.fr:443 -servername exemple.fr -showcerts
OpenSSL Afficher les détails X.509
openssl x509 -in certificat.pem -text -noout
OpenSSL Dates de validité
openssl x509 -in certificat.pem -noout -dates
OpenSSL SAN du certificat
openssl x509 -in certificat.pem -noout -ext subjectAltName
OpenSSL Empreinte SHA-256
openssl x509 -in certificat.pem -noout -fingerprint -sha256
OpenSSL Vérifier une chaîne
openssl verify -CAfile root.pem -untrusted intermediate.pem certificat.pem
OpenSSL Décoder un CSR
openssl req -in demande.csr -text -noout
OpenSSL Créer une CSR RSA
openssl req -new -newkey rsa:3072 -nodes -keyout serveur.key -out serveur.csr
Windows Lister certificats machine
Get-ChildItem Cert:\LocalMachine\My | Select Subject,Issuer,NotAfter,Thumbprint
Windows Forcer auto-enrollment
certutil -pulse
Windows Tester une autorité de certification
certutil -config - -ping
Windows Magasin certificats machine
certutil -store My
Windows Événements auto-enrollment
Get-WinEvent -LogName 'Microsoft-Windows-CertificateServicesClient-AutoEnrollment/Operational' -MaxEvents 50
IIS Lister les bindings IIS
Get-WebBinding -Protocol https
IIS Certificats IIS expirant sous 30 jours
Get-ChildItem Cert:\LocalMachine\My | Where-Object {$_.NotAfter -lt (Get-Date).AddDays(30)}
Java Lister un truststore
keytool -list -v -keystore truststore.jks
Java Importer un certificat
keytool -importcert -alias mon-ca -file ca.pem -keystore truststore.jks
Sécurité : l’analyse distante est volontairement limitée à HTTPS/443 et refuse les adresses privées ou réservées. Ne collez jamais de clé privée, mot de passe PFX ou secret dans cet outil.
Dépannage terrain

Mission du centre

8 playbooks

Diagnostiquer un certificat en séparant validité, nom, chaîne, clé privée, protocole TLS, révocation et automatisation de renouvellement, sans régénérer inutilement des secrets.

Triage rapide

  • Relever hostname exact, port, message navigateur/client et heure.
  • Inspecter certificat présenté, SAN, issuer et dates.
  • Vérifier chaîne intermédiaire et trust store du client.
  • Comparer certificat configuré et certificat réellement servi par le frontend/proxy.
  • Avant renouvellement, vérifier mécanisme ACME

Arbre de décision

Certificat expiré→

Renouveler depuis la source prévue et vérifier déploiement sur tous les frontends.

Nom invalide→

Comparer SAN/CN au FQDN réellement utilisé.

Chaîne non approuvée→

Vérifier intermédiaires et trust store, pas seulement le certificat serveur.

Handshake TLS échoue→

Séparer protocole/cipher/SNI/client auth de la validité du certificat.

Playbooks d’intervention

Commencer en lecture seule, collecter les preuves, puis ne modifier qu’une variable à la fois.

01Certificat expiréModification contrôlée
Symptôme

Navigateur ou service signale expiration et la date NotAfter est dépassée.

Vérifications

  • Confirmer certificat réellement présenté sur le port public.
  • Identifier source de renouvellement et dernier job ACME/PKI.
  • Vérifier tous les nœuds derrière load balancer.

Commandes / preuves

openssl s_client -connect <host>:443 -servername <host> </dev/null 2>/dev/null | openssl x509 -noout -dates -subject -issueropenssl x509 -in <cert.pem> -noout -dates -fingerprint -sha256

Résultat attendu

Le certificat servi est dans sa période de validité et identique sur tous les frontends attendus.

Actions correctives

  • Renouveler via processus officiel puis recharger le service sans remplacer la clé si inutile.
  • Vérifier le certificat externe après déploiement, pas seulement le fichier local.

Escalader si

Clé privée perdue, CA indisponible ou service critique ne permet pas reload contrôlé.

02Nom du certificat incorrectModification contrôlée
Symptôme

ERR_CERT_COMMON_NAME_INVALID ou hostname absent des SAN.

Vérifications

  • Lire Subject Alternative Name du certificat servi.
  • Comparer URL utilisée, alias DNS et redirections.
  • Vérifier SNI si plusieurs sites partagent la même IP.

Commandes / preuves

openssl s_client -connect <host>:443 -servername <host> </dev/null 2>/dev/null | openssl x509 -noout -text | grep -A1 "Subject Alternative Name"nslookup <host>

Résultat attendu

Le FQDN exact utilisé par le client figure dans les SAN du certificat présenté.

Actions correctives

  • Déployer un certificat couvrant les noms réellement nécessaires.
  • Corriger binding/SNI si le bon certificat existe mais n’est pas présenté.

Escalader si

Nombreux aliases legacy, wildcard non adapté ou architecture multi-tenant.

03Chaîne de certification incomplèteModification contrôlée
Symptôme

Certificat semble valide mais certains clients indiquent issuer inconnu ou unable to get local issuer.

Vérifications

  • Inspecter chaîne envoyée par le serveur.
  • Comparer avec chaîne recommandée par la CA.
  • Tester plusieurs clients/trust stores.

Commandes / preuves

openssl s_client -showcerts -connect <host>:443 -servername <host> </dev/nullopenssl verify -CAfile <bundle.pem> <cert.pem>

Résultat attendu

Le serveur présente leaf + intermédiaires nécessaires et la chaîne mène à une racine approuvée.

Actions correctives

  • Configurer full chain correcte sans envoyer inutilement la racine.
  • Retester depuis un client qui échouait auparavant.

Escalader si

Cross-signing complexe, vieux clients ou PKI privée non distribuée.

04Handshake TLS impossibleLecture / sans risque
Symptôme

Connexion TCP ouverte mais TLS échoue avant HTTP.

Vérifications

  • Tester SNI, versions TLS et suites compatibles.
  • Vérifier exigence de certificat client/mTLS.
  • Lire logs serveur/proxy au même timestamp.

Commandes / preuves

openssl s_client -connect <host>:443 -servername <host> -tls1_2openssl s_client -connect <host>:443 -servername <host> -tls1_3curl -vk https://<host>/

Résultat attendu

Une version TLS commune négocie et le serveur présente sa chaîne avant application HTTP.

Actions correctives

  • Corriger protocole/cipher/binding minimal nécessaire.
  • Ne réactiver pas TLS obsolète sans validation sécurité.

Escalader si

Compatibilité client legacy contre politique sécurité ou problème HSM/load balancer.

05CSR et clé privée ne correspondent pasIntrusif / escalade
Symptôme

Certificat délivré ne peut être importé ou service indique key mismatch.

Vérifications

  • Comparer empreinte de clé publique CSR/certificat/clé.
  • Retrouver où la CSR a été générée.
  • Ne jamais déplacer ou afficher la clé privée inutilement.

Commandes / preuves

openssl pkey -in <key.pem> -pubout | openssl sha256openssl req -in <request.csr> -pubkey -noout | openssl sha256openssl x509 -in <cert.pem> -pubkey -noout | openssl sha256

Résultat attendu

Les trois empreintes de clé publique correspondent.

Actions correctives

  • Si mismatch, retrouver la bonne clé ou refaire CSR/certificat selon procédure.
  • Protéger les permissions et sauvegarde de la clé.

Escalader si

Clé privée perdue, HSM, certificat réglementé ou révocation nécessaire.

06Renouvellement automatique ACME en échecModification contrôlée
Symptôme

Certificat approche expiration malgré cron/task de renouvellement.

Vérifications

  • Lire logs ACME et date du dernier succès.
  • Vérifier challenge HTTP-01/DNS-01 et accès à la zone.
  • Confirmer reload/deploy hook après émission.

Commandes / preuves

certbot renew --dry-runsystemctl list-timers | grep -i certjournalctl -u certbot -n 100 --no-pager

Résultat attendu

Dry-run passe et le certificat renouvelé est déployé/rechargé automatiquement.

Actions correctives

  • Corriger challenge, credentials DNS ou hook de déploiement.
  • Tester dry-run après correction.

Escalader si

Rate limit CA, API DNS critique ou renouvellement partagé entre plusieurs nœuds.

07Révocation / OCSPIntrusif / escalade
Symptôme

Client signale certificat révoqué, OCSP inaccessible ou statut inconnu.

Vérifications

  • Identifier serial et URI OCSP/CRL.
  • Vérifier si certificat a réellement été révoqué.
  • Contrôler accès réseau du client vers OCSP/CRL.

Commandes / preuves

openssl x509 -in <cert.pem> -noout -serial -ocsp_uriopenssl ocsp -issuer <issuer.pem> -cert <cert.pem> -url <ocsp-url>

Résultat attendu

Statut good pour un certificat actif et accès fiable aux services de révocation.

Actions correctives

  • Si revoked, remplacer certificat et clé selon cause.
  • Corriger accès OCSP/CRL sans désactiver globalement le contrôle.

Escalader si

Compromission de clé, CA privée ou révocation touchant de nombreux services.

08TLS/ciphers obsolètesModification contrôlée
Symptôme

Audit détecte TLS 1.0/1.1 ou suites faibles encore activées.

Vérifications

  • Inventorier protocoles réellement utilisés par les clients.
  • Tester TLS 1.2/1.3 avant désactivation legacy.
  • Identifier équipements anciens dépendants.

Commandes / preuves

openssl s_client -connect <host>:443 -servername <host> -tls1_2openssl s_client -connect <host>:443 -servername <host> -tls1_3nmap --script ssl-enum-ciphers -p 443 <host>

Résultat attendu

Les clients supportés fonctionnent en TLS moderne et les protocoles faibles sont absents.

Actions correctives

  • Durcir par étapes avec fenêtre et plan de retour.
  • Traiter séparément les clients legacy.

Escalader si

Équipement métier incompatible ou changement global de load balancer/PKI.

Checklist de fin d’intervention

  • Retester depuis l’extérieur avec le FQDN réel.
  • Vérifier date, SAN, chaîne et protocole négocié.
  • Contrôler tous les nœuds derrière le load balancer.
  • Documenter renouvellement et prochaine échéance.
  • Vérifier monitoring d’expiration.

Aller plus loin dans BAOI

Fiche mémo associéeHTTP / TLS — repères associés Outils informatiquesCalculer, inspecter ou générer sans quitter le flux de diagnostic. ProcéduresSuivre une procédure de mise en œuvre contrôlée. Pannes connuesCroiser le symptôme avec les pannes et causes déjà documentées.
♡ 0