Skip to content
EN

Ошибка ERR_SSL_VERSION_OR_CIPHER_MISMATCH: что делать

Коротко:

ERR_SSL_VERSION_OR_CIPHER_MISMATCH — браузер не смог договориться о версии TLS или шифре с сервером. Причины: сервер использует устаревший TLS 1.0/1.1 (Chrome 84+ отключил их), слабые ciphers (RC4, 3DES), или сертификат с подписью SHA-1. Исправление: включить TLS 1.2/1.3 и современные ciphers (ECDHE-ECDSA-AES128-GCM-SHA256).

Эта ошибка блокирует HTTPS-доступ. Ниже: причины, исправление, рабочий конфиг, FAQ.

Проверить SSL своего сайта →

Причины ошибки

  • Сервер поддерживает только TLS 1.0/1.1 (Chrome 84+ отключил их)
  • Слабые ciphers в конфиге: RC4, 3DES, EXPORT
  • Сертификат подписан SHA-1 (Chrome не принимает с 2017)
  • Несовпадение SNI (сервер вернул сертификат для другого домена)
  • Несовместимость ECC кривых (P-256/P-384 требуется)

Пошаговое исправление

  1. Обновите nginx/Apache и включите TLS 1.2+1.3: ssl_protocols TLSv1.2 TLSv1.3;
  2. Замените ciphers на современные: ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
  3. Если сертификат SHA-1 — перевыпустите на SHA-256 через Let's Encrypt бесплатно
  4. Проверьте SSL через SSL-чекер Enterno.io — увидите TLS, шифры, подпись
  5. После правки: nginx -t && systemctl reload nginx

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

Пример: правильная настройка TLS в nginx

server {
    listen 443 ssl http2;
    server_name example.com;

    ssl_certificate     /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_ciphers         ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
    ssl_prefer_server_ciphers off;

    ssl_stapling        on;
    ssl_stapling_verify on;
}

Смежные SSL-ошибки

ERR_SSL_VERSION_OR_CIPHER_MISMATCH — TL;DR

Ошибка ERR_SSL_VERSION_OR_CIPHER_MISMATCH возникает, когда браузер не может установить безопасное соединение с сервером из-за несовместимости версий SSL/TLS или используемых шифров. Для исправления проблемы необходимо убедиться, что сервер поддерживает современные версии протокола TLS (рекомендуется TLS 1.2 и выше) и шифры, совместимые с браузерами. Проверьте конфигурацию сервера и обновите SSL-сертификаты при необходимости.

Причины возникновения ошибки ERR_SSL_VERSION_OR_CIPHER_MISMATCH

Ошибка ERR_SSL_VERSION_OR_CIPHER_MISMATCH может возникать по нескольким причинам, связанным с настройками сервера и поддерживаемыми протоколами. Рассмотрим основные из них:

  • Устаревшие версии протокола TLS: Многие сервера по умолчанию используют устаревшие версии TLS, такие как TLS 1.0 или TLS 1.1, которые больше не считаются безопасными. Современные браузеры требуют поддержки как минимум TLS 1.2.
  • Неактивные шифры: Сервер может не поддерживать шифры, необходимые для установления безопасного соединения. Наиболее распространенные шифры, используемые в 2026 году, включают AES256-GCM-SHA384, AES128-GCM-SHA256 и CHACHA20-POLY1305.
  • Неправильная конфигурация сервера: Ошибки в конфигурации веб-сервера могут привести к тому, что он не будет правильно обрабатывать запросы на SSL/TLS. Это может произойти, если параметры SSL не настроены должным образом.
  • Проблемы с сертификатами: Если SSL-сертификат не установлен правильно или истек, это также может вызвать проблемы с безопасным соединением.
  • Совместимость браузеров: Некоторые старые версии браузеров могут не поддерживать современные шифры или версии TLS, что приводит к ошибке.

Для диагностики проблемы можно использовать утилиты командной строки, такие как openssl для проверки поддерживаемых шифров и версий TLS на сервере. Например, команда openssl s_client -connect example.com:443 позволяет получить информацию о поддерживаемых шифрах и сертификатах на сервере example.com.

Исправление ошибки ERR_SSL_VERSION_OR_CIPHER_MISMATCH

Для исправления ошибки ERR_SSL_VERSION_OR_CIPHER_MISMATCH необходимо выполнить следующие шаги:

  1. Обновите SSL/TLS протоколы: Убедитесь, что ваш сервер поддерживает как минимум TLS 1.2. В конфигурационном файле вашего веб-сервера (например, nginx.conf для Nginx или httpd.conf для Apache) добавьте следующие строки:
ssl_protocols TLSv1.2 TLSv1.3;
  1. Настройка шифров: Убедитесь, что на сервере включены современные шифры. Для Nginx можно использовать следующую конфигурацию:
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:!aNULL:!MD5';
  1. Проверьте сертификаты: Убедитесь, что ваш SSL-сертификат установлен правильно и не истек. Для этого можно воспользоваться командой:
openssl x509 -in your_certificate.crt -noout -dates
  1. Тестирование конфигурации: После внесения изменений протестируйте конфигурацию с помощью онлайн-сервисов, таких как SSL Labs, чтобы убедиться, что ваш сайт правильно настроен для работы с SSL/TLS.
  2. Обновление браузеров: Убедитесь, что используемые браузеры обновлены до последних версий, так как старые версии могут не поддерживать современные протоколы и шифры.

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

СертификатСрок, издатель, домены (SAN)
ЦепочкаПроверка промежуточных и корневых CA
TLS-протоколВерсия TLS и набор шифров
УязвимостиHeartbleed, POODLE, слабые шифры

Почему нам доверяют

TLS 1.3
поддержка
Полная
цепочка CA
<2с
результат
30/14/7
дней до истечения

Как это работает

1

Введите домен

2

Проверка цепочки TLS

3

Дата истечения и уязвимости

Что проверяет SSL-тест?

SSL/TLS — протокол шифрования, который защищает данные между браузером и сервером. Наш инструмент анализирует сертификат, цепочку доверия, версию TLS и известныеуязвимости.

Детали сертификата

Издатель, срок действия, алгоритм подписи, покрываемые домены (SAN) и тип валидации (DV/OV/EV).

Цепочка доверия

Проверка полной цепочки: от конечного сертификата через промежуточные до корневого CA.

Анализ TLS

Версия протокола (TLS 1.2/1.3), набор шифров, поддержка Perfect Forward Secrecy (PFS).

Оповещения об истечении

Создайте монитор — получайте уведомления в Telegram и email за 30/14/7 дней до истечения.

DV vs OV vs EV сертификаты

DV (Domain Validation)
  • Подтверждение только владения доменом
  • Выдаётся за минуты автоматически
  • Бесплатно через Let's Encrypt
  • Подходит для большинства сайтов
  • Самый распространённый тип
OV / EV
  • Проверка организации (OV) или расширенная проверка (EV)
  • Выдаётся за 1-5 рабочих дней
  • Стоимость от $50 до $500/год
  • Для финансов, e-commerce, госсайтов
  • Повышает доверие пользователей

Кому это нужно

DevOps

мониторинг SSL-сертификатов

Безопасность

аудит TLS-конфигурации

SEO

HTTPS как фактор ранжирования

E-commerce

доверие покупателей

Частые ошибки

Истёкший сертификатБраузеры блокируют сайт с истёкшим SSL. Настройте автопродление или мониторинг.
Неполная цепочка сертификатовБез промежуточного CA некоторые браузеры и боты не смогут верифицировать сертификат.
Mixed content на HTTPS-сайтеHTTP-ресурсы на HTTPS-странице — замок в браузере пропадает, снижается доверие.
Использование TLS 1.0/1.1Устаревшие версии TLS содержат известные уязвимости. Используйте TLS 1.2+ или 1.3.
Несовпадение домена в сертификатеСертификат должен покрывать все домены сайта, включая www и поддомены.

Лучшие практики

Настройте автопродлениеLet's Encrypt + certbot с cron — сертификат обновляется автоматически каждые 60-90 дней.
Включите HSTSЗаголовок Strict-Transport-Security заставляет браузер всегда использовать HTTPS.
Используйте TLS 1.3TLS 1.3 быстрее (1-RTT handshake) и безопаснее — убраны устаревшие шифры.
Мониторьте срок действияСоздайте монитор на Enterno.io — получайте уведомления задолго до истечения.
Проверяйте цепочку после обновленияПосле обновления сертификата убедитесь, что промежуточные сертификаты установлены.

Получите больше с бесплатным аккаунтом

Мониторинг SSL-сертификатов, история проверок и уведомления за 30 дней до истечения.

Зарегистрироваться (FREE)

Больше по теме

Источники

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

Как проверить какой TLS поддерживает сервер?

Через <a href="/ssl">SSL-чекер Enterno.io</a> или в терминале: <code>openssl s_client -connect example.com:443 -tls1_2</code>. Если ошибка — TLS 1.2 не поддерживается.

Можно ли обойти ошибку через флаги Chrome?

Нет безопасного способа. Включение TLS 1.0/1.1 в Chrome больше не поддерживается с 2020 года. Исправляйте сервер.

Что делать, если сервер управляется хостером?

Напишите в поддержку хостинга — попросите включить TLS 1.2+1.3 и отключить SSLv3/TLS 1.0/1.1. Серьёзные хостеры делают это за 1-2 часа.

При чём тут SNI?

SNI (Server Name Indication) — сервер видит какой домен запрошен и возвращает нужный сертификат. Без SNI сервер отдаст дефолтный, часто с неподходящим именем → mismatch.

Запустить инструмент, который описан в этой статье

Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.