Skip to content

Ошибка 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.

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

  • Сервер поддерживает только 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-ошибки

СертификатСрок, издатель, домены (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.