Message d’erreur
net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Le code apparaît sous la forme « ERR_SSL_VERSION_OR_CIPHER_MISMATCH » sur la page d’erreur et « net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH » dans les outils d’automatisation. Lors de nos tests, un serveur limité à TLS 1.0 et un serveur n’offrant qu’une suite CAMELLIA à échange de clés RSA ont tous deux provoqué cette erreur.
Chrome, Edge and other Chromium browsers — "This site can't provide a secure connection … uses an unsupported protocol"
Ce que cela signifie
Chrome et le serveur n’ont aucune version de TLS ni aucune suite de chiffrement en commun : aucun handshake n’est donc possible. Chrome ne prend en charge que TLS 1.2 et 1.3 avec des suites modernes ; les serveurs limités à TLS 1.0/1.1, RC4, 3DES ou à d’autres configurations obsolètes sont refusés. La page indique que le site utilise un protocole non pris en charge (« uses an unsupported protocol »).
Pourquoi cela se produit
Le serveur ne prend en charge que TLS 1.0 ou 1.1
fréquenteChrome a retiré la prise en charge de TLS 1.0/1.1 en 2020 ; d’anciens équipements, des imprimantes, des NAS et des serveurs non maintenus ne proposent toujours rien de plus récent.
Aucune suite de chiffrement prise en charge
fréquenteLes serveurs qui n’autorisent que RC4, 3DES ou des suites exotiques (CAMELLIA, SEED) avec échange de clés RSA ne proposent rien que Chrome accepte d’utiliser.
Le serveur de périphérie n’a pas de certificat pour le nom demandé
occasionnelleCertains CDN et répartiteurs de charge interrompent le handshake lorsqu’aucun certificat n’a encore été provisionné pour un domaine personnalisé.
Comment corriger l’erreur
- 1.
Déterminer ce que propose le serveur
Si TLS 1.2 avec une suite ECDHE échoue, le serveur doit être mis à jour.
bash nmap --script ssl-enum-ciphers -p 443 legacy.example.com # versions and suites offered echo | openssl s_client -connect legacy.example.com:443 -servername legacy.example.com -tls1_2 -brief - 2.
Propriétaires de sites : activer TLS 1.2/1.3 avec des suites modernes
Les suites actuelles fonctionnent avec tous les navigateurs sortis au cours des dix dernières années.
text # nginx ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; - 3.
Sites hébergés sur un CDN : vérifier l’état du certificat du domaine
Assurez-vous que le domaine est associé et que son certificat a été émis avant de faire pointer le DNS vers les serveurs de périphérie.
text CDN / hosting: check that the custom domain is attached and has an active certificate; some edges refuse the handshake for names without a certificate.
Erreurs associées
net::ERR_SSL_PROTOCOL_ERRORChrome, Edge and other Chromium browsersSSL_ERROR_UNSUPPORTED_VERSIONFirefoxSSL routines:tls_post_process_client_hello:no shared cipherOpenSSL (server side: nginx, Apache, Postfix, openssl s_server)curl: (35) TLS connect error: error:0A000102:SSL routines::unsupported protocolcurl (OpenSSL backend)