ERR_SSL_VERSION_OR_CIPHER_MISMATCH: как исправить (все браузеры)

Ключевой вывод

ERR_SSL_VERSION_OR_CIPHER_MISMATCH (ошибка Chrome -113, «используется неподдерживаемый протокол») означает, что на первом шаге TLS-рукопожатия браузер и сервер не смогли договориться о версии TLS или шифре. Обычно виноват сервер: он поддерживает только TLS 1.0 или 1.1, предлагает лишь старые шифры вроде RC4 или 3DES либо (в Cloudflare и CloudFront) не имеет сертификата для введённого вами имени, например из-за ещё не активированного сертификата или поддомена нескольких уровней. Посетителю стоит обновить браузер и проверить HTTPS-сканирование антивируса; если не открывается один сайт, исправить это может только его владелец.

Проверьте сейчас

Руководство по исправлению ERR_SSL_VERSION_OR_CIPHER_MISMATCH: сбой SSL-рукопожатия между браузером и сервером и пошаговые решения
Руководство по исправлению ERR_SSL_VERSION_OR_CIPHER_MISMATCH: сбой SSL-рукопожатия между браузером и сервером и пошаговые решения
Начать чтение
  1. Что такое ERR_SSL_VERSION_OR_CIPHER_MISMATCH?
  2. Как выглядит ошибка в разных браузерах
  3. Причины ERR_SSL_VERSION_OR_CIPHER_MISMATCH
  4. Проверка на практике: старые TLS-серверы и современный клиент
  5. Как исправить ERR_SSL_VERSION_OR_CIPHER_MISMATCH (для пользователей)
  6. Способ 1: проверьте, не дело ли в сайте
  7. Способ 2: обновите браузер и операционную систему
  8. Способ 3: проверьте HTTPS-сканирование антивируса
  9. Способ 4: отключите VPN или прокси
  10. Как исправить ERR_SSL_VERSION_OR_CIPHER_MISMATCH (для владельцев сайтов)
  11. Исправление 1: убедитесь, что у каждого имени есть сертификат
  12. Исправление 2: включите TLS 1.2 и TLS 1.3
  13. Исправление 3: предложите современные наборы шифров
  14. Исправление 4: особенности Cloudflare
  15. Исправление 5: проверьте другие CDN и балансировщики нагрузки
  16. Как проверить настройку SSL
  17. Связанные ошибки SSL/TLS
  18. Часто задаваемые вопросы

Что такое ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

ERR_SSL_VERSION_OR_CIPHER_MISMATCH означает, что браузер и сайт не смогли договориться, как шифровать соединение. Chrome показывает «Этот сайт не может обеспечить безопасное подключение» и «На сайте example.com используется неподдерживаемый протокол»; в подробностях: «Клиент и сервер поддерживают разные версии протокола SSL или набора шифров.» В Chromium это ошибка -113 (net_error_list.h).

Она возникает на самом первом шаге TLS-рукопожатия. Браузер отправляет список поддерживаемых версий TLS и наборов шифров, а сервер должен выбрать из него по одному варианту. Если общего у них нет, сервер отвечает версией, которую браузер больше не принимает, или отказывается продолжать из-за отсутствия сертификата для запрошенного имени, то рукопожатие обрывается прямо здесь.

Поскольку сбой происходит до проверки сертификата, просроченный, выданный на другое имя или неправильно собранный по цепочке сертификат даёт другую ошибку (см. таблицу в конце). Firefox показывает SSL_ERROR_NO_CYPHER_OVERLAP, если сервер отказал из-за шифра или сертификата, и SSL_ERROR_UNSUPPORTED_VERSION, если сервер поддерживает только TLS 1.0/1.1.

Проверьте версии TLS и сертификат сайта

Как выглядит ошибка в разных браузерах

Все браузеры на Chromium (Chrome, Edge, Brave, Opera) показывают один и тот же код. Ищите вот что:

БраузерСообщение об ошибкеКод ошибки
Chrome, Edge, Brave, OperaЭтот сайт не может обеспечить безопасное подключение · На сайте example.com используется неподдерживаемый протокол.ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Firefox (нет общего шифра или нет сертификата)Ошибка при установлении защищённого соединения · Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования.SSL_ERROR_NO_CYPHER_OVERLAP
Firefox (сервер только с TLS 1.0/1.1)Ошибка при установлении защищённого соединения · Узел, с которым вы соединяетесь, использует неподдерживаемую версию протокола безопасности.SSL_ERROR_UNSUPPORTED_VERSION
SafariSafari не удаётся установить защищённое соединение с сервером (формулировка не проверена)Кода нет
curl, Python, другие клиенты на OpenSSLssl/tls alert handshake failure (в старых версиях OpenSSL: sslv3 alert handshake failure) или unsupported protocol(ошибка OpenSSL)

Причины ERR_SSL_VERSION_OR_CIPHER_MISMATCH

Если ошибка появляется на одном сайте, причина в сервере или CDN этого сайта. Если на многих сайтах, мешает что-то на вашем устройстве или в сети. Возможные причины:

  • Сервер поддерживает только TLS 1.0 или 1.1. Chrome, Edge и Firefox начали блокировать обе версии в 2020 году (Firefox 78, Chrome и Edge 84); начиная с Chrome 98 (2022) обойти блокировку нельзя, и Chromium сообщает о таком сервере именно этой ошибкой (net_error_list.h).
  • Сервер предлагает только старые шифры, например RC4, 3DES или экспортные наборы. В TLS-коде Chrome 3DES полностью отключён, поэтому сервер, у которого нет ничего другого, недоступен.
  • Нет сертификата для введённого имени (в некоторых CDN). В Cloudflare и CloudFront при обращении к имени без сертификата рукопожатие отклоняется на первом шаге. В Cloudflare это самая частая причина: сертификат ещё активируется, запись не проксируется, пользовательский сертификат истёк и запасного нет, либо имя — поддомен нескольких уровней (Cloudflare). Обычный сервер nginx или Apache вместо этого отдаёт сертификат по умолчанию, и браузер показывает предупреждение о несоответствии имени.
  • Что-то посередине — HTTPS-сканирование антивируса, корпоративный прокси или VPN, которые заново шифруют ваш трафик со старыми настройками TLS.
  • Очень старое устройство или браузер — Windows XP, Android 4.x и браузеры, не обновлявшиеся годами, не поддерживают TLS 1.2 или шифры, которые теперь требуют серверы.

Проверка на практике: старые TLS-серверы и современный клиент

Чтобы показать, что вызывает эту ошибку, 27 октября 2026 года мы подключили современный TLS-клиент (OpenSSL 3.6) к публичным тестовым серверам badssl.com. Серверы с TLS 1.0 и 1.1 ответили версией, которую клиент больше не принимает; серверы с RC4 и 3DES отказали оповещением handshake_failure. Chrome показывает для всех четырёх ERR_SSL_VERSION_OR_CIPHER_MISMATCH:

Тестовый серверЧто он предлагаетРезультат
tls-v1-0.badssl.com:1010Только TLS 1.0Ответил по TLS 1.0; клиент отказался (protocol_version)
tls-v1-1.badssl.com:1011Только TLS 1.1Ответил по TLS 1.1; клиент отказался (protocol_version)
rc4.badssl.comТолько шифры RC4Оповещение handshake_failure
3des.badssl.comТолько шифры 3DESОповещение handshake_failure
tls-v1-2.badssl.com:1012TLS 1.2Соединение установлено (ECDHE-RSA-AES256-GCM-SHA384)

Откройте https://tls-v1-0.badssl.com:1010/ в Chrome, и вы увидите именно эту страницу с ошибкой. Если ваш сайт ведёт себя как первые четыре строки, вам подойдут исправления для владельцев сайтов ниже.

Как исправить ERR_SSL_VERSION_OR_CIPHER_MISMATCH (для пользователей)

Вы не можете изменить сервер сайта, поэтому сначала выясните, чья это проблема. Если не открывается один сайт, переходите к исправлениям для владельцев: решить это может только владелец. Если не открываются многие сайты, попробуйте следующее. (Отключение QUIC, старый совет, здесь не помогает: сбои QUIC дают ERR_QUIC_PROTOCOL_ERROR.)

Способ 1: проверьте, не дело ли в сайте

Откройте тот же сайт на другом устройстве или через мобильный интернет. Если он не открывается и там, проблема в сервере.

Чтобы получить точный ответ, проверьте сайт в SSL Checker от DNS Robot: для большинства серверов он показывает принимаемые версии TLS, а для сайта на Cloudflare — выдан ли для этого имени хоть какой-нибудь сертификат. Сайт, который принимает только TLS 1.0 или 1.1, нельзя открыть в Chrome, Edge или Firefox, и пройти дальше нажатием кнопки не получится: Chrome не предлагает для этой ошибки никакой ссылки, чтобы продолжить.

Способ 2: обновите браузер и операционную систему

В очень старых браузерах и системах нет TLS 1.2, TLS 1.3 или шифров, которые сейчас используют серверы. Обновите Chrome на странице chrome://settings/help, а Edge — на edge://settings/help, затем обновите операционную систему.

Internet Explorer в Windows XP и Vista, а также стандартный браузер Android 4.0-4.3 не поддерживают TLS 1.2 с современными шифрами и не открывают большинство HTTPS-сайтов.

Способ 3: проверьте HTTPS-сканирование антивируса

Антивирусы, сканирующие HTTPS (Avast, Kaspersky, Bitdefender, ESET, Norton), стоят посередине каждого соединения и сами подключаются к сайту по TLS. Если их настройки TLS устарели, сайты, которым нужен современный TLS, перестают открываться.

Отключите только часть со сканированием HTTPS (в разных программах она называется по-разному: HTTPS-сканирование в Web Shield у Avast, фильтрация протоколов SSL/TLS у ESET, проверка зашифрованного трафика в Bitdefender, проверка защищённых соединений у «Лаборатории Касперского») и перезагрузите страницу. Если ошибка пропала, обновите антивирус или добавьте сайт в исключения, не оставляя сканирование выключенным.

Способ 4: отключите VPN или прокси

Корпоративные прокси и VPN с функцией веб-защиты или проверки HTTPS сами подключаются к сайту по TLS (обычный VPN-туннель так не делает). Отключитесь и перезагрузите страницу. Если сайт открылся, выключите эту функцию или попросите провайдера (или ИТ-отдел) обновить настройки TLS.

Как исправить ERR_SSL_VERSION_OR_CIPHER_MISMATCH (для владельцев сайтов)

Если посетители сообщают об этой ошибке на вашем сайте, значит, сервер или CDN, отвечающий на порту 443, не может договориться о TLS с современными браузерами. Проверьте его в SSL Checker, затем:

Исправление 1: убедитесь, что у каждого имени есть сертификат

В Cloudflare, CloudFront и некоторых других CDN при обращении к имени без сертификата рукопожатие отклоняется, и браузеры показывают эту ошибку вместо предупреждения о сертификате. Обычный сервер nginx или Apache чаще отдаёт сертификат по умолчанию (ERR_CERT_COMMON_NAME_INVALID), а nginx с ssl_reject_handshake отправляет оповещение unrecognized_name (ERR_SSL_UNRECOGNIZED_NAME_ALERT). Проверьте все имена, которыми пользуются посетители: example.com, www.example.com и каждый поддомен.

Проверьте каждое имя в SSL Checker или из терминала (OpenSSL 1.1.1 и новее; если вы видите «Could not find certificate», сервер отклонил рукопожатие для этого имени):

bash
# Does the server present a certificate for this exact name?
openssl s_client -connect example.com:443 -servername www.example.com </dev/null 2>/dev/null | openssl x509 -noout -subject -ext subjectAltName

# Which TLS versions and ciphers does it accept?
nmap --script ssl-enum-ciphers -p 443 example.com

Исправление 2: включите TLS 1.2 и TLS 1.3

Любому современному браузеру нужен минимум TLS 1.2. Включите TLS 1.2 и TLS 1.3 и ничего старше:

bash
# nginx (site config or nginx.conf)
ssl_protocols TLSv1.2 TLSv1.3;

# Apache (ssl.conf)
SSLProtocol -all +TLSv1.2 +TLSv1.3

# Then check the config and reload
sudo nginx -t && sudo systemctl reload nginx
sudo apachectl configtest && sudo systemctl reload apache2

После перезагрузки проверьте ещё раз в SSL Checker или Qualys SSL Labs, что предлагаются только TLS 1.2 и 1.3.

Исправление 3: предложите современные наборы шифров

Когда TLS 1.2 включён, серверу нужен шифр, который браузеры всё ещё принимают. Предлагайте ECDHE с AES-GCM или ChaCha20-Poly1305 (набор Mozilla); шифры RC4, 3DES, экспортные и NULL отклоняются.

bash
# nginx (TLS 1.2 ciphers; TLS 1.3 ciphers are always on)
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;

# Apache
SSLCipherSuite 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
SSLHonorCipherOrder off

Исправление 4: особенности Cloudflare

В собственном руководстве Cloudflare по этой ошибке сказано, что она возникает, когда имя хоста не покрыто сертификатом (Cloudflare). Проверьте по порядку:

  • Активен ли сертификат? Новый домен получает сертификат Universal SSL в течение от 15 минут до 24 часов. Откройте SSL/TLS → Edge Certificates: там должен быть статус Active.
  • Проксируется ли DNS-запись? Сертификат предъявляется только для проксируемых записей (оранжевое облако). DNS Lookup для проксируемого имени вернёт адреса Cloudflare, а не вашего сервера.
  • Не истёк ли пользовательский сертификат? После истечения Cloudflare его удаляет; если имя не покрывает никакой другой активный сертификат (например, Universal SSL), посетители получают эту ошибку вместо предупреждения о сертификате.
  • Не поддомен ли это нескольких уровней? При полной настройке Universal SSL покрывает только example.com и *.example.com, но не test.dev.example.com. Используйте Advanced- или пользовательский сертификат либо Total TLS (для него нужен Advanced Certificate Manager).

Исправление 5: проверьте другие CDN и балансировщики нагрузки

Если TLS-соединение завершает CDN или балансировщик нагрузки (CloudFront, Fastly, Akamai, облачный балансировщик), решают его настройки, а не настройки вашего сервера:

  • Сертификат для каждого имени хоста, привязанный к нужному дистрибутиву или listener
  • Минимум TLS 1.2 в политике безопасности и современные шифры
  • Поддержка SNI, если несколько доменов делят один IP-адрес

Как проверить настройку SSL

После внесения изменений убедитесь, что SSL настроен правильно. Эти инструменты помогут найти проблемы раньше ваших посетителей.

  • SSL Checker от DNS Robot — быстрая проверка статуса сертификата, срока действия, полноты цепочки и издателя. Результат за секунды.
  • Qualys SSL Labs — глубокое сканирование версий TLS, наборов шифров, поддержки протоколов и известных уязвимостей. Выставляет буквенную оценку (стремитесь к A или A+).
  • OpenSSL CLI — проверка из командной строки: openssl s_client -connect domain.com:443 покажет исходное рукопожатие, цепочку сертификатов и согласованный шифр.
  • Chrome DevTools — на странице, которая открывается, панель «Безопасность» (в новых версиях «Privacy and security») показывает использованную версию TLS и шифр.
bash
# Quick check: protocol, cipher and certificate in a few lines
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -brief </dev/null

# Does it accept TLS 1.2? TLS 1.3?
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -tls1_2 -brief </dev/null
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -tls1_3 -brief </dev/null

В Chrome есть несколько ошибок TLS и сертификатов, и каждая возникает на своём шаге:

Код ошибкиЧто означаетРаспространённая причина
ERR_SSL_VERSION_OR_CIPHER_MISMATCHНет общей версии TLS или шифра либо нет сертификата для имениТолько TLS 1.0/1.1, только RC4/3DES, отсутствует сертификат (Cloudflare)
ERR_SSL_PROTOCOL_ERRORРукопожатие сорвалось иначеОбычный HTTP на порту 443, промежуточное устройство ломает TLS
ERR_CERT_AUTHORITY_INVALIDСертификат не является довереннымСамоподписанный, частный УЦ, нет промежуточного сертификата
ERR_CERT_DATE_INVALIDСертификат просрочен или ещё не действуетПросроченный сертификат, неверные часы устройства
ERR_CERT_COMMON_NAME_INVALIDСертификат не покрывает это имяСертификат для example.com, а переход на www.example.com
ERR_SSL_UNRECOGNIZED_NAME_ALERTСервер сообщил, что не обслуживает это имяssl_reject_handshake в nginx или нет подходящего блока server
ERR_SSL_VERSION_INTERFERENCEБольше не используется: Chromium удалил его (ошибка -175)Вы увидите один из кодов выше

Руководства по соседним ошибкам: ERR_SSL_PROTOCOL_ERROR, ERR_CERT_AUTHORITY_INVALID и «Ваше подключение не защищено».

Проверьте SSL-сертификат прямо сейчас

Бесплатный SSL Checker от DNS Robot показывает версии TLS, которые принимает большинство серверов, сертификат и имена, которые он покрывает; для сайта на Cloudflare — выдан ли для этого имени хоть какой-нибудь сертификат.

Источники

  1. net_error_list.h (SSL_VERSION_OR_CIPHER_MISMATCH -113), Chromium
  2. openssl_ssl_util.cc (which TLS failures map to -113), Chromium
  3. ERR_SSL_VERSION_OR_CIPHER_MISMATCH, Cloudflare
  4. SSL Configuration Generator, Mozilla

Часто задаваемые вопросы

Что означает ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

Браузер и сайт не смогли договориться о версии TLS или шифре в начале защищённого соединения, и Chrome остановился. Chrome называет это ошибкой -113 и пишет, что на сайте «используется неподдерживаемый протокол». Обычно причина в сервере: старый TLS, старые шифры или (в Cloudflare) отсутствие сертификата для этого имени.

Как исправить ERR_SSL_VERSION_OR_CIPHER_MISMATCH в Chrome?

Если ошибка только на одном сайте, исправить сервер должен его владелец, вы сами ничего не сделаете. Если она на многих сайтах, обновите Chrome и операционную систему, приостановите HTTPS-сканирование антивируса и отключите VPN или прокси, перезагружая страницу после каждого шага.

ERR_SSL_VERSION_OR_CIPHER_MISMATCH -- это проблема сервера или браузера?

Обычно сервера. Он предлагает только TLS 1.0 или 1.1, только старые шифры вроде RC4 или 3DES либо (в Cloudflare и CloudFront) не имеет сертификата для введённого вами имени. Если не открываются все сайты, ищите причину у себя: антивирус, VPN или прокси с проверкой HTTPS либо очень старое устройство.

Можно ли обойти ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

Нет. Chrome не предлагает для этой ошибки ссылку, чтобы продолжить, потому что безопасное соединение не удалось установить вообще. Исправить можно только сервер или, если причина в антивирусе, VPN или устаревшем браузере, ваше устройство.

Почему я вижу её в Edge?

Edge использует тот же сетевой код Chromium, поэтому показывает ту же ошибку по тем же причинам. Opera и Brave тоже. Если и Edge, и Chrome не открывают один сайт, виноват сервер сайта.

Какой эквивалент этой ошибки в Firefox?

Firefox показывает SSL_ERROR_NO_CYPHER_OVERLAP («Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования.»), когда сервер отказывает из-за отсутствия общего шифра или сертификата, и SSL_ERROR_UNSUPPORTED_VERSION («Узел, с которым вы соединяетесь, использует неподдерживаемую версию протокола безопасности.»), когда сервер поддерживает только TLS 1.0 или 1.1.

Как владельцы сайтов исправляют ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

Убедитесь, что у каждого имени хоста, которым пользуются посетители, есть сертификат, включите только TLS 1.2 и 1.3 и предлагайте современные шифры ECDHE с AES-GCM или ChaCha20. В Cloudflare проверьте, что сертификат активен, запись проксируется, пользовательский сертификат не просрочен, а имя не является поддоменом нескольких уровней.

Может ли Cloudflare вызвать ERR_SSL_VERSION_OR_CIPHER_MISMATCH?

Да, и Cloudflare это документирует: ошибка появляется, когда имя хоста не покрыто сертификатом. Причины: сертификат Universal SSL ещё активируется (от 15 минут до 24 часов), запись не проксируется, пользовательский сертификат истёк или поддомен нескольких уровней, например test.dev.example.com.

Какие версии TLS поддерживают современные браузеры?

Chrome, Edge, Firefox и Safari поддерживают TLS 1.2 и TLS 1.3. Chrome, Edge и Firefox начали блокировать TLS 1.0 и 1.1 в 2020 году, а начиная с Chrome 98 обойти блокировку нельзя; Chromium сообщает о сервере с TLS 1.0 или 1.1 как об ERR_SSL_VERSION_OR_CIPHER_MISMATCH.

В чём разница между ERR_SSL_VERSION_OR_CIPHER_MISMATCH и ERR_SSL_PROTOCOL_ERROR?

ERR_SSL_VERSION_OR_CIPHER_MISMATCH значит, что Chrome знает, почему рукопожатие не удалось: нет общей версии или шифра либо отказ сразу после первого сообщения. ERR_SSL_PROTOCOL_ERROR — общий код для остальных сорванных рукопожатий, например когда сервер отвечает на порту 443 обычным HTTP.

Об авторе

Shaik Vahid

Основатель DNS Robot. Вахид много лет работал в поддержке веб-хостинга: исправлял клиентам домены, DNS-записи, SSL-сертификаты и доставку почты. Он создаёт инструменты DNS Robot и пишет эти руководства по ошибкам, с которыми люди сталкиваются на самом деле.

Проверка SSL сертификата

Проверка действительности SSL сертификата и деталей безопасности