Сообщение об ошибке
net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH
На странице ошибки отображается как «ERR_SSL_VERSION_OR_CIPHER_MISMATCH», в инструментах автоматизации — как «net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH». В наших тестах её вызывали и сервер, поддерживающий только TLS 1.0, и сервер с единственным набором шифров CAMELLIA на обмене ключами RSA.
Chrome, Edge and other Chromium browsers — "This site can't provide a secure connection … uses an unsupported protocol"
Что это означает
У Chrome и сервера нет общей версии TLS или общего набора шифров, поэтому рукопожатие невозможно. Chrome поддерживает только TLS 1.2 и 1.3 с современными наборами шифров; серверы, ограниченные TLS 1.0/1.1, RC4, 3DES или другими устаревшими конфигурациями, он отклоняет. На странице сказано, что сайт «uses an unsupported protocol».
Почему это происходит
Сервер поддерживает только TLS 1.0 или 1.1
частоChrome отказался от TLS 1.0/1.1 в 2020 году; старые сетевые устройства, принтеры, NAS-хранилища и серверы, которые никто не обслуживает, до сих пор не предлагают ничего новее.
Нет поддерживаемого набора шифров
частоСерверы, которые разрешают только RC4, 3DES или экзотические наборы шифров (CAMELLIA, SEED) с обменом ключами RSA, не могут предложить Chrome ничего пригодного.
У edge-сервера нет сертификата для запрошенного имени
иногдаНекоторые CDN и балансировщики нагрузки обрывают рукопожатие, если для пользовательского домена ещё не выпущен сертификат.
Как исправить
- 1.
Выясните, что предлагает сервер
Если не удаётся подключиться по TLS 1.2 с набором шифров ECDHE, сервер нужно обновить.
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.
Владельцам сайтов: включите TLS 1.2/1.3 с современными наборами шифров
Современные наборы шифров работают во всех браузерах, выпущенных за последнее десятилетие.
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.
Для сайтов на CDN: проверьте состояние сертификата домена
Прежде чем направлять DNS на edge-серверы, убедитесь, что домен подключён и сертификат для него выпущен.
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.
Связанные ошибки
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)