SSL-ошибки на сайте: почему браузер пишет «сайт не защищён» и как исправить

🔒 Проверьте SSL-сертификат своего сайта

Узнайте, валиден ли сертификат, не просрочен ли он, и правильно ли настроены TLS-протоколы. Бесплатная проверка за 10 секунд.

Проверить SSL →

Или настройте мониторинг SSL — уведомления за 30, 14, 7 и 1 день до истечения

Что такое SSL-ошибки и почему они важны

Когда браузер показывает сообщение «Ваше подключение не защищено» или «Сайт не безопасен» — это SSL-ошибка. Она означает, что браузер не может установить доверительное соединение с сервером из-за проблем с сертификатом или протоколом шифрования.

SSL-ошибки критичны для бизнеса: 85% пользователей закрывают сайт при виде предупреждения о небезопасности. Поисковые системы (Google, Яндекс) понижают в выдаче сайты без HTTPS или с просроченными сертификатами.

SSL-ошибки — это часть более широкой темы ошибок на сайте. Если сайт вообще не открывается (даже с предупреждением), см. гайд по проблемам соединения.

Основные типы SSL-ошибок на сайте

SSL-ошибки можно разделить на несколько категорий по причине возникновения. Ниже разберём каждую с примерами сообщений браузера.

🔴 ERR_CERT_DATE_INVALID — Сертификат просрочен

Сообщение браузера: «Ваше подключение не является приватным. NET::ERR_CERT_DATE_INVALID» (Chrome), «Сертификат истёк» (Firefox).

Почему возникает:

  • Администратор забыл продлить сертификат
  • Автообновление Let's Encrypt не сработало (не настроен cron или плагин)
  • Системное время на сервере сбилось — сертификат кажется просроченным
  • Сертификат выдан на короткий срок (3 месяца у Let's Encrypt) и не обновлён

Что делать:

  • Проверить срок действия: openssl x509 -in cert.pem -noout -dates
  • Обновить сертификат через Certbot: certbot renew
  • Проверить системное время сервера: date
  • Настроить автоматическое обновление и мониторинг срока действия
Критичность: 🔴 Высокая. Браузер полностью блокирует доступ к сайту. Пользователи уходят, поисковики понижают сайт.

🔴 ERR_CERT_COMMON_NAME_INVALID — Сертификат выдан на другой домен

Сообщение браузера: «Этот сайт использует недействительный сертификат безопасности. Сертификат выдан для другого адреса».

Почему возникает:

  • Сертификат выдан на www.example.com, а пользователь открывает example.com
  • Поддомен не включён в SAN (Subject Alternative Name) сертификата
  • Сертификат Wildcard (*.example.com) не покрывает поддомен четвертого уровня (sub.sub.example.com)
  • Перенос сайта на новый домен без замены сертификата

Что делать:

  • Выпустить сертификат с правильным CN и всеми необходимыми SAN
  • Для Wildcard убедиться, что он покрывает нужные уровни поддоменов
  • Настроить редирект с не-www на www (или наоборот) с правильным сертификатом

🟡 ERR_CERT_AUTHORITY_INVALID — Самоподписанный или ненадёжный сертификат

Сообщение браузера: «Ваше подключение не защищено. NET::ERR_CERT_AUTHORITY_INVALID».

Почему возникает:

  • Используется самоподписанный (self-signed) сертификат — браузер не доверяет издателю
  • Сертификат выдан ненадёжным или просроченным CA
  • В системе пользователя отсутствуют корневые сертификаты нужного CA
  • Антивирус или корпоративный прокси подменяет сертификат

Что делать:

  • Заменить самоподписанный сертификат на выданный доверенным CA (Let's Encrypt, Sectigo, DigiCert)
  • Если self-signed обязателен — добавить его в доверенные корневые сертификаты системы
  • Проверить, не подменяет ли антивирус/прокси сертификат
Примечание: Самоподписанные сертификаты допустимы только в закрытых корпоративных сетях. Для публичных сайтов — только сертификаты от доверенных CA.

🔴 SSL_ERROR_NO_CYPHER_OVERLAP / ERR_SSL_VERSION_OR_CIPHER_MISMATCH — Неподдерживаемый протокол

Сообщение браузера: «На сайте используется неподдерживаемый протокол», «Не удаётся безопасно подключиться».

Почему возникает:

  • Сервер использует устаревшие протоколы TLS 1.0 или TLS 1.1 (браузеры отключают их с 2020 года)
  • Сервер и клиент не могут согласовать общий набор шифров (cipher suite)
  • На сервере включены только слабые/небезопасные шифры, которые браузер отказывается использовать
  • Клиент использует очень старый браузер или ОС

Что делать:

  • Включить TLS 1.2 и TLS 1.3 на сервере, отключить TLS 1.0/1.1
  • Настроить современные cipher suites (ECDHE, AES-GCM)
  • Обновить браузер клиента или предложить использовать современный браузер
Ошибка на сайте используется неподдерживаемый протокол: это означает, что сервер и браузер не могут договориться о способе шифрования. Сервер «говорит» на старом диалекте, которого браузер уже не понимает.

🟡 Mixed Content — Смешанный контент

Сообщение браузера: «Части этой страницы небезопасны» (значок замка с предупреждением).

Почему возникает: HTTPS-страница загружает ресурсы по HTTP (картинки, скрипты, CSS, iframe). Браузер считает это небезопасным.

Что делать:

  • Заменить все URL с http:// на https:// в коде сайта
  • Использовать относительные протоколы: //example.com/image.jpg
  • Включить Content Security Policy (CSP) с upgrade-insecure-requests
  • Настроить HSTS-заголовок для принудительного HTTPS

🟢 ERR_CERT_SYMANTEC_LEGACY — Устаревший сертификат Symantec

Почему возникает: Chrome и Firefox перестали доверять сертификатам, выданным Symantec/GeoTrust/Thawte до декабря 2017 года.

Что делать: заменить сертификат на новый от другого CA. Большинство хостингов и регистраторов делают это бесплатно.

Почему сертификат сайта просрочен: глубокий разбор

Просроченный SSL-сертификат — самая частая SSL-ошибка. Разберём, почему это происходит и как избежать.

Let's Encrypt и проблемы автообновления

Let's Encrypt выдаёт бесплатные сертификаты сроком на 90 дней. Автообновление настраивается через Certbot или аналоги, но часто ломается:

# Проверка статуса Certbot certbot certificates # Ручное обновление certbot renew --dry-run # Проверка cron-задачи crontab -l | grep certbot

Платные сертификаты и человеческий фактор

С платными сертификатами (1-2 года) проблема другая — администратор просто забывает продлить:

Решение: настройте мониторинг срока действия SSL. UptimeBot уведомит за 30, 14, 7 и 1 день до истечения — по email, Telegram.

Несоответствие домена в сертификате

Сертификат выдаётся на конкретный домен (Common Name, CN) и может включать дополнительные домены (Subject Alternative Names, SAN). Если открытый домен не совпадает ни с одним из них — ошибка.

WWW vs non-WWW

Классическая проблема: сертификат на www.example.com, а пользователь открывает example.com. Решения:

Важно: Wildcard *.example.com покрывает www.example.com и sub.example.com, но НЕ example.com (корневой домен). Для корневого нужен отдельный SAN.

Поддомены третьего уровня

Wildcard покрывает только один уровень поддоменов:

Самоподписанный сертификат: когда допустим, когда нет

Самоподписанный (self-signed) сертификат — это сертификат, подписанный самим владельцем, а не доверенным Certificate Authority. Браузер не может проверить его подлинность и показывает предупреждение.

Когда самоподписанный сертификат допустим

Когда самоподписанный сертификат недопустим

Альтернатива: Let's Encrypt выдаёт бесплатные доверенные сертификаты. Нет никаких причин использовать self-signed для публичных сайтов.

Неподдерживаемый протокол: TLS-версии и шифры

SSL/TLS-протоколы эволюционируют. Устаревшие версии (SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1) содержат уязвимости и отключены в современных браузерах.

Эволюция протоколов

ВерсияСтатусБезопасность
SSL 2.0Устарел, запрещён🔴 Опасен
SSL 3.0Устарел, запрещён🔴 Опасен (POODLE)
TLS 1.0Устарел, отключён в браузерах🟡 Небезопасен
TLS 1.1Устарел, отключён в браузерах🟡 Небезопасен
TLS 1.2Актуален, рекомендуется🟢 Безопасен
TLS 1.3Современный стандарт🟢 Максимально безопасен

Как настроить современные протоколы

# Nginx — разрешить только TLS 1.2 и 1.3 ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256; ssl_prefer_server_ciphers off; # Apache SSLProtocol -all +TLSv1.2 +TLSv1.3 SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
Ошибка «сайт использует неподдерживаемый протокол» возникает, когда сервер предлагает только TLS 1.0/1.1, а браузер требует минимум TLS 1.2. Обновите конфигурацию сервера — это 5 минут работы.

Смешанный контент: HTTPS-страница грузит HTTP

Смешанный контент (mixed content) — это когда защищённая HTTPS-страница загружает ресурсы по незащищённому HTTP. Браузер показывает предупреждение или блокирует ресурсы.

Типы смешанного контента

Как найти и исправить

# Поиск HTTP-ссылок в коде сайта grep -r "http://" /var/www/html/ # Использование Content Security Policy Content-Security-Policy: upgrade-insecure-requests;

Пошаговая диагностика SSL-ошибок

1Проверьте сертификат онлайн

Используйте бесплатный чекер или команду:

echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -text

Смотрите: Subject (домен), Issuer (CA), Not Before / Not After (сроки), Subject Alternative Name (дополнительные домены).

2Проверьте цепочку сертификатов

Неполная цепочка (missing intermediate certificate) — частая причина SSL-ошибок в мобильных браузерах и старых Android.

# Проверка цепочки openssl s_client -connect example.com:443 -showcerts

Убедитесь, что сервер отдаёт не только конечный сертификат, но и все промежуточные (intermediate).

3Проверьте TLS-версии и шифры

# Проверка поддерживаемых протоколов nmap --script ssl-enum-ciphers -p 443 example.com # Или через openssl openssl s_client -connect example.com:443 -tls1_2 openssl s_client -connect example.com:443 -tls1_3

4Проверьте системное время

Неправильное время на клиенте или сервере приводит к ошибкам валидации сертификата:

# На сервере date # На клиенте (Windows) time /t & date /t

Таблица: SSL-ошибки и их решения

Ошибка / сообщениеПричинаРешениеПодробнее
Сертификат истёкНе продлён, не обновилсяОбновить сертификат, настроить автообновлениеРаздел
Сертификат выдан для другого адресаНесоответствие CN/SANПеревыпустить с правильными доменамиРаздел
Сайт не защищён / ненадёжный издательСамоподписанный сертификатЗаменить на сертификат от доверенного CAРаздел
Неподдерживаемый протоколTLS 1.0/1.1, старые шифрыВключить TLS 1.2/1.3, обновить cipher suitesРаздел
Смешанный контентHTTP-ресурсы на HTTPS-страницеПеревести все ресурсы на HTTPSРаздел
Неполная цепочка сертификатовОтсутствует intermediateДобавить промежуточные сертификаты на серверДиагностика
HSTS-ошибкаНеправильный заголовок HSTSПроверить max-age, includeSubDomains, preload
OCSP-ошибкаПроблемы с проверкой отзываВключить OCSP Stapling на сервере

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

Наш сервис проверит валидность, срок действия, цепочку и настройки TLS вашего сайта.

Проверить SSL →

Мониторинг SSL-сертификатов: как не пропустить истечение

Лучший способ избежать SSL-ошибок — это proactive-мониторинг. UptimeBot отслеживает SSL-сертификаты и уведомляет до того, как они истекут.

Что мониторит UptimeBot

Как настроить мониторинг SSL

  1. Добавьте URL сайта в панель мониторинга
  2. Выберите каналы оповещения: email, SMS, Telegram, Slack
  3. Укажите пороговые значения (например, предупреждение за 14 дней)
  4. Добавьте проверку HTTP/HTTPS и DNS для комплексного мониторинга
Последствия просроченного SSL-сертификата:
  • Потеря трафика: 85% пользователей закрывают сайт при предупреждении
  • Потеря продаж: интернет-магазин теряет до 60% конверсии
  • SEO-штраф: Google понижает сайт в выдаче
  • Репутационный ущерб: клиенты теряют доверие к бренду

Мониторинг SSL — это страховка от потерь на сотни тысяч рублей.

🛡️ Защитите сайт от SSL-ошибок

Настройте мониторинг SSL-сертификата: срок действия, валидность, цепочка, TLS-версии.

Настроить мониторинг SSL →

Уведомления за 30/14/7/1 день · Email, Telegram

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

Возможные причины: сертификат просрочен, выдан на другой домен, самоподписанный, или на странице есть смешанный контент. Используйте онлайн-проверку, чтобы определить конкретную причину за 10 секунд.

Нельзя. Для пользователя это означает риск перехвата данных (MITM-атака). Для владельца сайта — потерю трафика, продаж и позиций в поиске. Даже если вы уверены в безопасности, браузер не разделяет эту уверенность. Используйте доверенный сертификат — Let's Encrypt бесплатен.

Let's Encrypt выдаёт бесплатные сертификаты сроком на 90 дней. Для большинства сайтов этого достаточно. Платные сертификаты (от 2000 ₽/год) нужны для: Wildcard (*.example.com), Extended Validation (зелёная строка в браузере), гарантии на случай взлома, технической поддержки CA. Для обычного сайта Let's Encrypt — оптимальный выбор.

Let's Encrypt — каждые 60-90 дней (рекомендуется настроить автообновление). Платные сертификаты — раз в год или два. В любом случае настройте мониторинг срока действия — UptimeBot уведомит за 30 дней до истечения.

Это означает, что сервер предлагает устаревший TLS 1.0 или TLS 1.1, а браузер требует минимум TLS 1.2. Обновите конфигурацию сервера — включите TLS 1.2 и TLS 1.3, отключите старые версии. Это займёт 5 минут и решит проблему.

Итог

SSL-ошибки — одни из самых критичных для бизнеса: они напрямую влияют на доверие пользователей, конверсию и SEO. Просроченный сертификат, несоответствие домена, самоподписанный сертификат или неподдерживаемый протокол — всё это приводит к одному результату: пользователь уходит, а поисковик понижает сайт.

Решение простое: использовать доверенные сертификаты (Let's Encrypt), настроить современные TLS-протоколы, устранить смешанный контент и — главное — настроить автоматический мониторинг SSL. UptimeBot проверяет сертификат каждую минуту и уведомляет за 30 дней до истечения.

Также рекомендуем изучить общий справочник ошибок на сайте, справочник HTTP-кодов и гайд по диагностике соединения для комплексного подхода к надёжности сайта.