ERR_SSL_VERSION_OR_CIPHER_MISMATCH : Comment Corriger Cette Erreur (Tous les Navigateurs)

Qu'est-ce que ERR_SSL_VERSION_OR_CIPHER_MISMATCH ?
ERR_SSL_VERSION_OR_CIPHER_MISMATCH est une erreur de navigateur qui apparait lorsque votre navigateur et le serveur web ne parviennent pas a s'accorder sur une version commune du protocole TLS ou une suite de chiffrement lors de la poignee de main SSL/TLS. Le navigateur bloque completement la connexion car aucun canal securise ne peut etre etabli.
Chaque connexion HTTPS commence par une poignee de main TLS. Au cours de cette negociation, le navigateur envoie une liste de versions TLS et de suites de chiffrement qu'il prend en charge (le ClientHello). Le serveur choisit une combinaison compatible et repond (le ServerHello). Si aucune combinaison commune n'existe, la poignee de main echoue immediatement avec cette erreur.
Le code d'erreur Chromium sous-jacent est net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH. Dans Firefox, le meme echec se manifeste sous le nom SSL_ERROR_NO_CYPHER_OVERLAP. Les deux signifient la meme chose : le client et le serveur n'ont aucun terrain d'entente pour etablir une connexion securisee.
A Quoi Ressemble Cette Erreur dans Chaque Navigateur
Les differents navigateurs affichent des messages differents pour le meme echec sous-jacent de negociation TLS. Le message complet dans Chrome est : "Ce site ne peut pas fournir une connexion securisee."
| Navigateur | Message d'Erreur | Code d'Erreur |
|---|---|---|
| Chrome / Edge / Brave / Opera | Ce site ne peut pas fournir une connexion securisee -- utilise un protocole non pris en charge | ERR_SSL_VERSION_OR_CIPHER_MISMATCH |
| Firefox | Echec de la connexion securisee -- Impossible de communiquer de maniere securisee avec le pair : aucun algorithme de chiffrement commun | SSL_ERROR_NO_CYPHER_OVERLAP |
| Safari | Safari ne peut pas ouvrir la page car Safari ne peut pas etablir une connexion securisee au serveur | Aucun code specifique |
| cURL / OpenSSL | no protocols available / no ciphers available | SSL routines error |
Quelles Sont les Causes de ERR_SSL_VERSION_OR_CIPHER_MISMATCH ?
Cette erreur a des causes cote serveur et cote client. Si l'erreur apparait sur un seul site web, le probleme est presque certainement cote serveur. Si elle apparait sur plusieurs sites, quelque chose sur votre appareil ou votre reseau interfere.
Le serveur utilise TLS 1.0 ou TLS 1.1 deprecie -- Chrome, Edge, Firefox et Safari ont tous abandonne la prise en charge de TLS 1.0 et 1.1 en 2020. Si un serveur ne prend en charge que ces anciens protocoles, les navigateurs modernes refusent de se connecter. C'est la cause n1 cote serveur.
Suites de chiffrement faibles ou obsoletes -- Les suites de chiffrement comme RC4 (supprimee de Chrome 48 en 2016), 3DES et les chiffrements d'exportation sont bloquees par tous les navigateurs modernes. Si le serveur ne propose que ces chiffrements, la poignee de main echoue.
Certificat SSL signe avec SHA-1 -- Les navigateurs ont cesse de faire confiance aux certificats SHA-1 en 2017. Si votre certificat utilise SHA-1 au lieu de SHA-256, il sera rejete.
Certificat SSL expire -- Un certificat expire peut declencher cette erreur dans certains navigateurs, surtout combine a d'autres problemes de configuration.
Incompatibilite du nom sur le certificat -- Le certificat SSL a ete emis pour
example.commais le site est accede viawww.example.com(ou un sous-domaine non couvert par le certificat).Chaine de certificats incomplete -- Le serveur envoie son certificat mais pas les certificats intermediaires necessaires pour verifier la chaine de confiance. En savoir plus dans notre guide sur la chaine de certificats SSL.
Configuration Cloudflare/CDN -- Si vous utilisez Cloudflare, le certificat SSL universel peut ne pas encore etre actif, ou le DNS pointe vers un enregistrement non proxifie.
Ancien systeme d'exploitation -- Windows XP, Android 4.x et les anciens Mac ne prennent pas en charge TLS 1.2 nativement et ne peuvent pas se connecter aux serveurs modernes.
Analyse HTTPS de l'antivirus -- Les logiciels de securite (Avast, Kaspersky, Bitdefender) qui interceptent le trafic HTTPS peuvent provoquer des incompatibilites de chiffrement.
Le navigateur doit etre mis a jour -- Les tres anciennes versions de navigateur peuvent ne pas prendre en charge les suites de chiffrement requises par le serveur.
Comment Corriger ERR_SSL_VERSION_OR_CIPHER_MISMATCH (Pour les Utilisateurs)
Si vous voyez cette erreur en naviguant, le site web a probablement un probleme de configuration SSL cote serveur. Cependant, il existe plusieurs solutions cote utilisateur qui peuvent resoudre le probleme si la cause vient de votre appareil.
Correction 1 : Vider l'Etat SSL (Windows)
Windows conserve un cache de certificats SSL et de sessions TLS separe de celui du navigateur. Des entrees obsoletes ou corrompues dans ce cache systeme peuvent provoquer un ERR_SSL_VERSION_OR_CIPHER_MISMATCH persistant meme apres avoir vide le cache du navigateur.
Ouvrez le menu Demarrer et recherchez Options Internet (ou appuyez sur Win+R et tapez inetcpl.cpl). Allez dans l'onglet Contenu et cliquez sur Effacer l'etat SSL. Cliquez sur OK et redemarrez votre navigateur.
Correction 2 : Vider le Cache et les Cookies du Navigateur
Des politiques HSTS (HTTP Strict Transport Security) mises en cache ou d'anciens tickets de session SSL peuvent forcer votre navigateur a tenter des connexions avec des parametres obsoletes.
Chrome/Edge : Appuyez sur
Ctrl+Shift+Delete-> definissez la periode sur Toutes les periodes -> cochez Images et fichiers en cache et Cookies -> cliquez sur Effacer les donneesFirefox : Appuyez sur
Ctrl+Shift+Delete-> definissez la periode sur Tout -> cochez Cache et Cookies -> cliquez sur Effacer maintenantSafari : Menu Safari -> Preferences -> Confidentialite -> Gerer les donnees du site web -> Tout supprimer
Pour un seul domaine, vous pouvez aussi effacer son entree HSTS dans Chrome : allez dans chrome://net-internals/#hsts -> dans "Delete domain security policies" -> entrez le domaine -> cliquez sur Delete.
Correction 3 : Desactiver le Protocole QUIC
Le protocole QUIC de Chrome (HTTP/3 sur UDP) peut parfois interferer avec la negociation TLS sur les serveurs qui ne le prennent pas correctement en charge, ou lorsque des equipements reseau bloquent le port UDP 443.
Etape 1 : Tapez
chrome://flags/#enable-quicdans la barre d'adresseEtape 2 : Changez Experimental QUIC protocol en Disabled
Etape 3 : Cliquez sur Relaunch pour redemarrer Chrome
Si l'erreur disparait, le probleme venait d'un conflit QUIC/HTTP/3. Vous pouvez laisser QUIC desactive sans aucun effet negatif -- les pages se chargeront via HTTPS standard (HTTP/2 sur TCP).
Correction 4 : Mettre a Jour Votre Navigateur et Votre Systeme d'Exploitation
Les anciennes versions de navigateurs et de systemes d'exploitation peuvent ne pas prendre en charge les versions TLS ou les suites de chiffrement requises par les sites web modernes. C'est un probleme courant sur les systemes anciens.
Mettez a jour Chrome dans chrome://settings/help. Mettez a jour Edge dans edge://settings/help. Pour votre systeme d'exploitation, assurez-vous d'avoir au minimum Windows 10, macOS 10.15 ou une distribution Linux recente. Windows XP et Windows Vista ne prennent pas en charge TLS 1.2 nativement et provoqueront systematiquement cette erreur.
Correction 5 : Desactiver l'Analyse HTTPS de l'Antivirus
Les programmes antivirus qui analysent le trafic HTTPS (Avast, Kaspersky, Bitdefender, ESET, Norton) agissent comme un proxy intermediaire -- ils interceptent la poignee de main TLS et presentent leur propre certificat au navigateur. Cela peut provoquer des incompatibilites de chiffrement lorsque l'antivirus ne prend pas en charge les memes suites de chiffrement que le serveur.
Recherchez les parametres nommes Analyse HTTPS, Analyse SSL, Bouclier Web ou Analyse des connexions chiffrees dans votre antivirus et desactivez-les temporairement. Si l'erreur disparait, ajoutez le domaine concerne a la liste d'exclusion de votre antivirus.
Correction 6 : Essayer le Mode Navigation Privee
Le mode navigation privee utilise un etat de navigateur vierge -- pas de donnees en cache, pas de cookies, pas d'extensions (sauf celles explicitement autorisees). Si le site se charge en navigation privee mais pas en mode normal, une extension, des donnees en cache ou un profil de navigateur corrompu est en cause.
Ouvrez une fenetre de navigation privee avec Ctrl+Shift+N (Chrome/Edge) ou Ctrl+Shift+P (Firefox). Si le site fonctionne, videz le cache (Correction 2) ou desactivez vos extensions une par une pour trouver la coupable.
Correction 7 : Desactiver le VPN ou le Proxy
Les VPN et les proxys HTTP se placent entre votre navigateur et le serveur web. Certains VPN effectuent une inspection SSL ou acheminent les connexions via des serveurs avec une prise en charge limitee des suites de chiffrement. Les proxys d'entreprise utilisent souvent l'interception SSL qui peut provoquer des incompatibilites de chiffrement.
Deconnectez temporairement votre VPN et essayez de charger le site directement. Si cela fonctionne, essayez un autre serveur VPN ou contactez votre fournisseur VPN concernant la compatibilite TLS.
Comment Corriger ERR_SSL_VERSION_OR_CIPHER_MISMATCH (Pour les Proprietaires de Sites)
Si des utilisateurs signalent cette erreur sur votre site web, le probleme se situe dans la configuration SSL/TLS de votre serveur. Les corrections ci-dessous traitent les causes profondes -- des problemes de certificat aux configurations de protocole et de chiffrement.
Correction 1 : Verifier Votre Certificat SSL
Commencez par verifier que votre certificat SSL est valide, non expire et correctement installe. Utilisez le SSL Checker de DNS Robot pour verifier instantanement l'etat du certificat, sa date d'expiration, l'emetteur et la completude de la chaine.
Les problemes de certificat courants qui causent cette erreur :
Certificat expire -- Les certificats Let's Encrypt expirent tous les 90 jours. Si le renouvellement automatique a echoue, votre certificat expire silencieusement et les navigateurs refusent la connexion.
Mauvais domaine -- Le certificat couvre
example.commais le site est accede viawww.example.com(ou inversement). Le certificat doit correspondre au domaine exact ou inclure un caractere generique (*.example.com).Certificat signe avec SHA-1 -- Tous les principaux navigateurs ont rejete SHA-1 en 2017. Si votre certificat utilise SHA-1, re-emettez-le avec SHA-256.
Certificat auto-signe -- Seuls les certificats emis par une autorite de certification reconnue sont acceptes par les navigateurs en production.
# Check certificate details from command line
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -dates -subject -issuer -fingerprint -sha256
# Check which TLS versions the server supports
nmap --script ssl-enum-ciphers -p 443 yourdomain.com
# Renew Let's Encrypt certificate
sudo certbot renew --force-renewalCorrection 2 : Activer TLS 1.2 et TLS 1.3
Tous les navigateurs modernes exigent au minimum TLS 1.2. Si votre serveur ne prend en charge que TLS 1.0 ou 1.1, les navigateurs afficheront ERR_SSL_VERSION_OR_CIPHER_MISMATCH. Activez TLS 1.2 et TLS 1.3, et desactivez les anciennes versions.
# Nginx — in nginx.conf or site config
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
# Apache — in httpd.conf or ssl.conf
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLHonorCipherOrder on
# After changing, restart your web server:
sudo systemctl restart nginx # or apache2Apres la mise a jour, testez avec le SSL Checker de DNS Robot ou Qualys SSL Labs pour verifier que seuls TLS 1.2 et 1.3 sont actifs.
Correction 3 : Mettre a Jour les Suites de Chiffrement
Meme avec TLS 1.2 active, l'utilisation de suites de chiffrement obsoletes provoquera cette erreur. Les navigateurs bloquent RC4 (depuis 2016), 3DES, les chiffrements d'exportation et les chiffrements NULL. Votre serveur doit proposer des chiffrements AEAD modernes comme AES-GCM et ChaCha20-Poly1305.
# Nginx — modern cipher configuration
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305';
ssl_prefer_server_ciphers off; # Let client choose (TLS 1.3 best practice)
# Apache — modern cipher configuration
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder offCorrection 4 : Installer la Chaine de Certificats Complete
Une chaine de certificats incomplete -- lorsque le serveur envoie son propre certificat mais pas les certificats intermediaires -- peut declencher ERR_SSL_VERSION_OR_CIPHER_MISMATCH sur certains navigateurs et appareils. Le serveur doit envoyer la chaine complete du certificat feuille jusqu'a l'autorite de certification intermediaire.
Pour Let's Encrypt, utilisez toujours fullchain.pem (et non simplement cert.pem). Pour les autres autorites de certification, telechargez le certificat intermediaire depuis leur documentation et concatenez-le avec votre certificat.
# Nginx — use fullchain, not just cert
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
# Apache
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
# Verify chain is complete
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | grep -E "(depth|verify|Certificate chain)"Correction 5 : Corriger l'Incompatibilite du Nom de Certificat
Si votre certificat SSL ne couvre pas le domaine exact auquel les utilisateurs accedent, la poignee de main TLS peut echouer avec une erreur d'incompatibilite de chiffrement. Cela se produit frequemment dans les cas suivants :
www vs non-www -- Le certificat couvre
example.commais paswww.example.com. Solution : utilisez un certificat qui couvre les deux, ou un certificat generique (*.example.com).Sous-domaine non couvert -- Le certificat couvre
example.commais l'utilisateur accede aapp.example.com. Un certificat generique couvre les sous-domaines de premier niveau, mais pas les sous-domaines a plusieurs niveaux commestaging.app.example.com.Mauvais domaine entierement -- Le serveur presente un certificat emis pour un domaine completement different (frequent sur les hebergements mutualises ou apres une migration de serveur).
Verifiez quels domaines votre certificat couvre en utilisant le SSL Checker de DNS Robot -- il affiche les noms alternatifs du sujet (SAN) inclus dans le certificat.
Correction 6 : Configuration Cloudflare
Si votre site utilise Cloudflare et que les visiteurs voient ERR_SSL_VERSION_OR_CIPHER_MISMATCH, le probleme est generalement lie a la configuration SSL de Cloudflare.
Certificat pas encore actif -- Le certificat SSL universel de Cloudflare peut prendre jusqu'a 24 heures pour s'activer apres l'ajout d'un domaine. Verifiez dans le tableau de bord Cloudflare -> SSL/TLS -> Certificats de peripherie que le statut est "Active".
DNS non proxifie -- L'enregistrement DNS doit etre en mode Proxied (nuage orange) et non DNS only (nuage gris) pour que le certificat SSL de Cloudflare fonctionne.
Sous-domaine a plusieurs niveaux -- Le certificat universel de Cloudflare couvre
example.comet*.example.com, mais passub.sub.example.com. Vous avez besoin d'un certificat SSL avance ou d'un certificat SSL for SaaS pour les sous-domaines a plusieurs niveaux.Incompatibilite du mode SSL -- Dans Cloudflare -> SSL/TLS, utilisez Full (Strict) si votre serveur d'origine a un certificat valide, ou Full avec un certificat d'origine Cloudflare.
Correction 7 : Configuration SSL du CDN
Si votre site utilise un CDN (CloudFront, Fastly, Akamai ou tout autre reverse proxy), le CDN termine la connexion TLS avec le visiteur. SSL doit etre correctement configure au niveau du CDN.
Certificat CDN expire ou manquant -- Assurez-vous que le CDN possede un certificat SSL valide pour votre domaine. Sur AWS CloudFront, cela signifie un certificat ACM dans la region us-east-1.
Version TLS minimale trop ancienne -- Mettez a jour la version TLS minimale du CDN a TLS 1.2.
SNI non pris en charge -- Si le CDN sert plusieurs domaines depuis la meme adresse IP, il doit prendre en charge SNI (Server Name Indication) pour presenter le bon certificat a chaque domaine.
Comment Tester Votre Configuration SSL
Apres avoir applique vos corrections, verifiez que votre configuration SSL est correcte. Ces outils vous aident a detecter les problemes avant que vos visiteurs ne les rencontrent.
[DNS Robot SSL Checker](/ssl-checker) -- Verification rapide de l'etat du certificat, de la date d'expiration, de la chaine de certificats et de l'emetteur. Resultats en quelques secondes.
Qualys SSL Labs -- Analyse approfondie des versions TLS, des suites de chiffrement, des vulnerabilites connues et attribution d'une note (visez A ou A+).
OpenSSL en ligne de commande -- Testez depuis le terminal avec
openssl s_client -connect domain.com:443pour voir les details bruts de la poignee de main, le certificat et la suite de chiffrement negociee.Chrome DevTools -- Ouvrez DevTools (F12) -> onglet Securite -> consultez la version TLS, la suite de chiffrement et les details du certificat pour la connexion actuelle.
# Quick OpenSSL check — shows protocol, cipher, and certificate
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | grep -E "(Protocol|Cipher|subject|issuer|Not After)"
# Test specific TLS version support
openssl s_client -connect yourdomain.com:443 -tls1_2 2>/dev/null | head -5 # Test TLS 1.2
openssl s_client -connect yourdomain.com:443 -tls1_3 2>/dev/null | head -5 # Test TLS 1.3Erreurs SSL/TLS Associees
Chrome possede plusieurs codes d'erreur lies au SSL. Ils indiquent tous des etapes differentes de la poignee de main TLS qui ont echoue.
| Code d'Erreur | Signification | Cause Courante |
|---|---|---|
| ERR_SSL_VERSION_OR_CIPHER_MISMATCH | Aucune version TLS ou suite de chiffrement partagee | Le serveur utilise TLS 1.0/1.1, chiffrements RC4, certificat SHA-1 |
| ERR_SSL_PROTOCOL_ERROR | Echec general de la poignee de main TLS | Mauvaise date/heure, conflit QUIC, etat SSL corrompu |
| ERR_CERT_AUTHORITY_INVALID | Certificat non approuve | Certificat auto-signe, intermediaire manquant, CA non reconnue |
| ERR_CERT_DATE_INVALID | Certificat expire ou pas encore valide | Certificat expire, horloge systeme incorrecte |
| ERR_CERT_COMMON_NAME_INVALID | Le domaine du certificat ne correspond pas | Certificat pour example.com, site a www.example.com |
Pour toutes les erreurs SSL, commencez par verifier le certificat avec le SSL Checker de DNS Robot. Il affiche l'etat du certificat, la completude de la chaine, la date d'expiration et les protocoles pris en charge en une seule analyse. Consultez aussi nos guides sur ERR_SSL_PROTOCOL_ERROR et Votre connexion n'est pas privee pour des solutions detaillees.
Verifiez Votre Certificat SSL Maintenant
Utilisez le SSL Checker gratuit de DNS Robot pour verifier l'etat de votre certificat, sa date d'expiration, la chaine de certificats et la configuration TLS. Diagnostiquez ERR_SSL_VERSION_OR_CIPHER_MISMATCH en quelques secondes.
Try SSL CheckerFrequently Asked Questions
ERR_SSL_VERSION_OR_CIPHER_MISMATCH signifie que votre navigateur et le serveur web ne parviennent pas a s'accorder sur une version commune du protocole TLS ou une suite de chiffrement. Au cours de la poignee de main TLS, le navigateur envoie une liste de protocoles et chiffrements qu'il prend en charge, et le serveur n'en propose aucun en commun. Sans terrain d'entente, aucune connexion securisee ne peut etre etablie.