Aide-mémoire3 min de lecture · Mis à jour le 29 sept. 2026

TLS et OpenSSL — aide-mémoire

Générer des clés et CSR, inspecter un certificat, diagnostiquer une chaîne TLS et appliquer une configuration serveur moderne.

  • #tls
  • #pki
  • #hardening

Clés et demandes de certificat

openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -out server.key
openssl req -new -key server.key -out server.csr \
  -subj "/CN=app.exemple.fr" -addext "subjectAltName=DNS:app.exemple.fr,DNS:www.exemple.fr"

Les navigateurs ignorent le CN : le nom doit figurer dans le SAN.

Inspecter

openssl x509 -in server.crt -noout -subject -issuer -dates -ext subjectAltName
openssl req -in server.csr -noout -text
openssl x509 -noout -modulus -in server.crt | sha256sum   # correspondance clé/cert (RSA)

Diagnostiquer un serveur

openssl s_client -connect app.exemple.fr:443 -servername app.exemple.fr -showcerts </dev/null
openssl s_client -connect app.exemple.fr:443 -tls1_1   # doit échouer
curl -vI https://app.exemple.fr

Erreurs fréquentes :

MessageCause
unable to get local issuer certificatechaîne intermédiaire absente côté serveur
certificate has expiredrenouvellement non automatisé
hostname mismatchSAN incomplet ou SNI non envoyé

Configuration NGINX moderne

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_stapling on;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains" always;
ssl_certificate     /etc/ssl/app/fullchain.pem;   # certificat + intermédiaires
ssl_certificate_key /etc/ssl/app/server.key;

Surveiller l'expiration

echo | openssl s_client -connect app.exemple.fr:443 -servername app.exemple.fr 2>/dev/null \
  | openssl x509 -noout -enddate

Exportez cette date en métrique (probe_ssl_earliest_cert_expiry avec blackbox_exporter) et alertez à J-21.

Autres labs de cette technologie