Les erreurs de certificat SSL empêchent les visiteurs d’accéder à votre site de manière sécurisée. Ce guide couvre chaque code d’erreur courant, sa signification et comment le corriger — que vous soyez visiteur ou propriétaire du site.
Pour l’erreur la plus courante spécifiquement, consultez notre guide dédié : Corriger “Votre connexion n’est pas privée” →
Tableau de référence des erreurs
| Code d’erreur (Chrome) | Équivalent Firefox | Signification | Correction |
|---|---|---|---|
NET::ERR_CERT_DATE_INVALID | SEC_ERROR_EXPIRED_CERTIFICATE | Certificat expiré | Renouveler le certificat |
NET::ERR_CERT_COMMON_NAME_INVALID | SSL_ERROR_BAD_CERT_DOMAIN | Le domaine ne correspond pas au certificat | Obtenir un certificat pour le bon domaine |
NET::ERR_CERT_AUTHORITY_INVALID | SEC_ERROR_UNKNOWN_ISSUER | Auto-signé ou CA non approuvée | Utiliser Let’s Encrypt |
NET::ERR_CERT_REVOKED | SEC_ERROR_REVOKED_CERTIFICATE | Le certificat a été révoqué | Obtenir un nouveau certificat |
NET::ERR_SSL_PROTOCOL_ERROR | SSL_ERROR_RX_RECORD_TOO_LONG | Échec de la poignée de main TLS | Vérifier la configuration du serveur |
NET::ERR_SSL_VERSION_OR_CIPHER_MISMATCH | SSL_ERROR_NO_CYPHER_OVERLAP | Pas de version/cipher TLS commun | Activer TLS 1.2+ |
ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN | — | Le pin HPKP ne correspond pas | Mettre à jour ou supprimer les pins HPKP |
ERR_CERTIFICATE_TRANSPARENCY_REQUIRED | — | Entrée CT log manquante | Réémettre depuis une CA conforme CT |
Solutions détaillées des erreurs
ERR_CERT_DATE_INVALID — Certificat expiré
Cause : La date Not After du certificat est dépassée. Avec les certificats Let’s Encrypt de 90 jours, cela arrive si vous oubliez de renouveler.
Solution visiteur : Vérifiez la date et l’heure de votre appareil — si votre horloge est incorrecte, les certificats valides apparaissent comme expirés.
Solution propriétaire :
# Vérifier la date d'expiration réelle
echo | openssl s_client -connect votredomaine.com:443 -servername votredomaine.com 2>/dev/null | openssl x509 -noout -enddate
Renouvelez immédiatement, remplacez les fichiers, rechargez le serveur. Configurez le monitoring pour éviter cela à l’avenir.
ERR_CERT_COMMON_NAME_INVALID — Incohérence de domaine
Cause : Le certificat a été émis pour example.com mais vous visitez www.example.com (ou vice versa), ou le certificat couvre un domaine entièrement différent.
Solution propriétaire :
# Vérifier quels domaines le certificat couvre
echo | openssl s_client -connect votredomaine.com:443 -servername votredomaine.com 2>/dev/null | openssl x509 -noout -ext subjectAltName
Obtenez un nouveau certificat qui inclut tous les domaines nécessaires. Dans GetHTTPS, ajoutez à la fois example.com et www.example.com.
ERR_CERT_AUTHORITY_INVALID — CA non approuvée
Cause : Le certificat est auto-signé, émis par une CA inconnue, ou la chaîne de confiance intermédiaire est incomplète.
Solution propriétaire :
- Si auto-signé → remplacer par un certificat Let’s Encrypt
- Si chaîne incomplète → utiliser
fullchain.pem(Nginx) ou ajouterSSLCertificateChainFile(Apache) - Si CA inconnue → passer à une CA approuvée
ERR_SSL_PROTOCOL_ERROR — Échec de poignée de main
Cause : La configuration TLS du serveur est défaillante — mauvais chemin de certificat, fichiers corrompus ou paramètres mal configurés.
Solution propriétaire :
# Tester la connexion TLS
openssl s_client -connect votredomaine.com:443 -servername votredomaine.com
# Vérifier si le certificat et la clé correspondent
openssl x509 -noout -modulus -in cert.pem | openssl md5
openssl rsa -noout -modulus -in privkey.pem | openssl md5
# Les hashes doivent correspondre
Causes courantes : mauvais chemin de fichier dans la configuration du serveur, certificat et clé de sessions différentes, permissions de fichiers trop restrictives.
ERR_SSL_VERSION_OR_CIPHER_MISMATCH — Pas de TLS compatible
Cause : Le serveur ne supporte que d’anciennes versions TLS (1.0/1.1) que le navigateur a abandonnées, ou utilise des suites de chiffrement non supportées par le navigateur.
Solution propriétaire :
# Nginx — activer le TLS moderne
ssl_protocols TLSv1.2 TLSv1.3;
# Apache
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
Avertissements de contenu mixte
Cause : Votre page HTTPS charge des images, scripts ou CSS via HTTP.
Ce n’est pas une erreur de certificat — le certificat est correct, mais la page référence des ressources non sécurisées. Guide complet de correction du contenu mixte →
Flux de diagnostic
Lorsque vous voyez une erreur SSL, suivez cette séquence :
1. Vérifier le code d'erreur → identifie la catégorie
↓
2. Vérifier les détails du certificat
openssl s_client -connect domain:443 -servername domain
↓
3. Expiré ? → Renouveler
Incohérence de domaine ? → Réémettre pour le bon domaine
Chaîne incomplète ? → Utiliser fullchain.pem
Auto-signé ? → Passer à Let's Encrypt
Erreur de configuration ? → Vérifier les chemins et permissions
↓
4. Après correction → recharger le serveur, vider le cache du navigateur, vérifier
Outils de diagnostic en ligne
| Outil | URL | Ce qu’il vérifie |
|---|---|---|
| SSL Labs | ssllabs.com/ssltest | Audit SSL complet (note A-F) |
| SSL Checker | sslshopper.com/ssl-checker | Chaîne, expiration, correspondance de domaine |
| Certificate Search | crt.sh | Logs de Certificate Transparency |
| Why No Padlock | whynopadlock.com | Détection de contenu mixte |
Questions fréquemment posées
J’ai corrigé l’erreur mais le navigateur l’affiche toujours
Videz le cache de votre navigateur (Ctrl+Maj+Suppr) ou testez dans une fenêtre de navigation privée. Les navigateurs mettent en cache les états SSL, et HSTS peut forcer une décision mise en cache. Sous Windows, videz également l’état SSL : Propriétés Internet → Contenu → Effacer l’état SSL.
L’erreur apparaît sur certains navigateurs mais pas d’autres
Différents navigateurs ont des magasins de confiance et des comportements de cache différents. Le plus souvent : une chaîne de certificat incomplète que certains navigateurs peuvent compléter depuis le cache tandis que d’autres ne le peuvent pas. Corrigez en servant la chaîne complète sur votre serveur.
Comment prévenir les erreurs SSL ?
- Surveiller l’expiration des certificats — configurer des alertes pour le jour 60 sur 90
- Utiliser
fullchain.pemau lieu decert.pem— prévient les erreurs de chaîne - Inclure toutes les variantes de domaine (www + non-www) dans votre certificat
- Configurer le renouvellement automatique avec Certbot pour les serveurs de production
- Tester après chaque changement avec SSL Labs