Коротко. Проверить SSL-сертификат можно самостоятельно за пару минут: замок в адресной строке браузера плюс любой онлайн-сервис вроде SSL Labs. Смотреть нужно четыре вещи: срок действия, цепочку доверия, совпадение с доменом и отсутствие смешанного контента. Самая частая причина внезапной ошибки — отвалившееся автопродление Let’s Encrypt: сертификат живёт 90 дней и продлевается автоматически, пока не сломается.
Проверка SSL занимает 30 секунд в браузере и 2 минуты в онлайн-сервисе — платить за это никому не нужно. Проблема в другом: браузер на вашем компьютере показывает «всё хорошо» даже тогда, когда у половины посетителей сайт не открывается. Ниже — что и чем проверять, как читать результат и что делать с каждой конкретной ошибкой.
Проверка в браузере: где нажимать
Самый быстрый способ — открыть сайт и кликнуть по значку слева от адреса. В свежем Chrome это иконка с ползунками (замок убрали в версии 117), в Firefox и Safari — по-прежнему замок.
- Chrome / Edge / Яндекс.Браузер: значок слева от адреса → «Подключение защищено» → «Сертификат действителен». Откроется окно с вкладками «Общие» и «Состав». На «Общих» — кому выдан, кем выдан и срок действия. На «Составе» смотрите поле Альтернативное имя субъекта (SAN) — там перечислены все домены, которые сертификат покрывает.
- Firefox: замок → стрелка вправо → «Подробнее о соединении» → «Просмотр сертификата». Откроется страница, где вся цепочка разложена вкладками: ваш домен → промежуточный → корневой.
- Safari (macOS): замок → «Показать сертификат» → раскрыть «Подробнее».
- Android: значок слева от адреса → «Подключение защищено» → «Сведения о сертификате».
- iPhone: Safari на iOS сертификат не показывает вообще. Проверяйте через онлайн-сервис.
Важная оговорка: браузер на вашем компьютере — плохой судья. Он кэширует промежуточные сертификаты с других сайтов и достраивает цепочку сам. Поэтому сайт с неполной цепочкой у вас открывается идеально, а у клиента с телефона — нет. Дублируйте проверку сторонним сервисом.
Онлайн-сервисы: что видно только им
SSL Labs (ssllabs.com/ssltest) — эталон. Проверка идёт 1–3 минуты, на выходе оценка от A+ до F. Ключевые строки, ради которых всё затевается: Chain issues (должно быть «None», а не «Incomplete» или «Extra download»), Trusted для каждой платформы и список поддерживаемых версий TLS. Если увидели «This server’s certificate chain is incomplete» — вот она, причина «на компьютере работает, на телефоне нет». Результат кэшируется — после починки жмите «Clear cache» и запускайте заново.
SSL Checker от SSLShopper и decoder.link — быстрее, 10–15 секунд, рисуют цепочку схемой.
crt.sh — поиск по журналам Certificate Transparency. Вбиваете домен и видите все сертификаты, которые когда-либо на него выпускались, с датами. Если последняя запись трёхмесячной давности — автопродление умерло.
Если есть доступ к серверу или знакомый админ, одна команда даёт то же самое за секунду:
echo | openssl s_client -servername site.ru -connect site.ru:443 2>/dev/null | openssl x509 -noout -dates -subject -issuer
Что смотреть по существу: четыре пункта
1. Срок действия. Поле «Действителен до». Норма — когда до конца остаётся больше 30 дней. Меньше 15 дней при живом автопродлении означает, что продление уже должно было сработать и не сработало. С 15 марта 2026 года максимальный срок жизни сертификата ограничен 200 днями (было 398), в марте 2027-го станет 100 дней, в 2029-м — 47. Ручное продление раз в год как процесс скоро перестанет существовать, автоматика обязательна.
2. Цепочка доверия. Правильная цепочка — три звена: сертификат вашего домена, промежуточный сертификат центра сертификации, корневой. Сервер обязан отдавать первые два. Если отдаёт только свой — цепочка неполная.
3. Соответствие домену. В поле SAN должны быть перечислены все варианты, по которым к вам заходят: и site.ru, и www.site.ru. Wildcard *.site.ru покрывает поддомены, но не покрывает сам site.ru — его в SAN добавляют отдельно. Let’s Encrypt позволяет положить в один сертификат до 100 доменов бесплатно, так что экономить тут не на чем.
4. Тип сертификата. DV (проверка домена) выпускается за 1–5 минут, бесплатно у Let’s Encrypt или 1000–3000 ₽/год у хостера. OV (проверка организации) — 3–7 дней и порядка 6 000–15 000 ₽/год. EV (расширенная) — 7–14 дней и 15 000–40 000 ₽/год. Честно: с 2019 года браузеры перестали показывать зелёную строку с названием компании, и посетитель разницы между DV и EV не увидит никогда. Для обычного сайта, магазина и лендинга бесплатный DV закрывает задачу полностью. Платный имеет смысл, только если его требует банк-эквайер, крупный B2B-партнёр или отраслевой регламент.
Частые ошибки и что с ними делать
| Что видно | Что это значит | Как чинится |
|---|---|---|
| ERR_CERT_DATE_INVALID, «Срок действия истёк» | Сертификат просрочен. Сайт закрыт красной заглушкой для всех. | Перевыпуск: 5–15 минут через панель хостинга или certbot renew. Дальше — разобраться, почему не продлился сам. |
| ERR_CERT_AUTHORITY_INVALID | Самоподписанный сертификат или неизвестный браузеру центр. Часто остаётся после переноса сайта — хостер выдал технический сертификат-заглушку. | Выпустить нормальный DV. 10–30 минут, включая ожидание проверки домена. |
| ERR_CERT_COMMON_NAME_INVALID, «Сертификат выдан для другого сайта» | Домена нет в SAN. Классика: сертификат на site.ru, посетитель зашёл на www.site.ru. |
Перевыпуск с обоими именами (15 минут) плюс 301-редирект на основной вариант в настройках сервера. |
| У вас открывается, у клиента с телефона — «небезопасно»; SSL Labs пишет Chain issues: Incomplete | Сервер не отдаёт промежуточный сертификат. Ломается на Android, в мобильных приложениях, у платёжных шлюзов и webhook-ов. | Заменить в конфиге сервера файл cert.pem на fullchain.pem, перезагрузить веб-сервер. 5 минут. |
| Замок серый или перечёркнут, в консоли (F12) — «Mixed Content» | Смешанный контент: страница по HTTPS тянет картинки, скрипты или шрифты по HTTP. Скрипты браузер просто блокирует — ломаются слайдеры, формы, счётчик Метрики. | Замена http://site.ru на https://site.ru по базе (в WordPress — плагином Better Search Replace, 10 минут). Постоянный плагин-костыль вроде Really Simple SSL лучше не оставлять — он подменяет ссылки на каждом запросе и тормозит сайт. |
| Сайт не открывается вообще, кнопки «всё равно перейти» нет | Включён HSTS. При любой проблеме с сертификатом браузер не даёт обойти предупреждение. | Только починка сертификата. Обходного пути для посетителя нет — это самый дорогой сценарий простоя. |
Чем на самом деле грозит просрочка
Механика простая и жёсткая. Поисковый робот, получив ошибку TLS, не может загрузить страницу — она уходит в «недоступна». Несколько неудачных обходов подряд, и страницы начинают выпадать из индекса; счёт идёт на недели, а не на дни. Возврат после починки тоже не мгновенный — нужен повторный обход, который ускоряют вручную через Яндекс.Вебмастер и Search Console.
Но деньги теряются раньше и быстрее. Посетитель из рекламы видит полноэкранное «Ваше подключение не защищено» и красный экран. Кнопка «Перейти на сайт» спрятана за «Дополнительно», и нажимает её меньшинство. Конверсия падает практически до нуля мгновенно, а рекламный бюджет продолжает списываться за клики. Один день просрочки на активной кампании обходится дороже, чем годовой платный сертификат.
Почему отваливается автопродление Let’s Encrypt
Бесплатный сертификат выдаётся на 90 дней, а certbot пытается обновить его, когда остаётся 30 — то есть запас на реакцию есть, но узнать о проблеме нужно самому. С июня 2025 года Let’s Encrypt перестал рассылать письма о скором истечении, так что «мне же придёт уведомление» больше не работает.
Типичные причины, по которым продление молча ломается:
- Закрыт 80-й порт. Проверка ACME ходит по HTTP. Порт часто закрывают «для безопасности» или после подключения прокси — продление умирает.
- Заблокирован путь
/.well-known/acme-challenge/. Виноваты плагины режима обслуживания, «coming soon», агрессивные правила редиректов и WAF. - Сменился каталог сайта. После редизайна или переезда certbot кладёт файл проверки не туда, куда смотрит веб-сервер.
- Сертификат обновился, а веб-сервер не перезагрузился. Самый обидный случай: на диске новый файл, в памяти nginx — старый, посетители видят просрочку. Лечится командой
systemctl reload nginxи добавлением хука перезагрузки в задание продления. - Домен переехал на другой DNS или хостинг, а старый сервер продолжает пытаться продлевать сертификат для чужого теперь адреса.
Страховка стоит ноль рублей и ставится за 10 минут: заведите мониторинг с проверкой срока сертификата. UptimeRobot на бесплатном тарифе даёт до 50 проверок и присылает письмо за 30, 14 и 7 дней до истечения. Если сервер свой — подойдёт Uptime Kuma, разворачивается в докере за те же 10 минут. Это единственное действие из всей статьи, которое реально стоит сделать сегодня.
Частые вопросы
Как часто проверять сертификат вручную?
Если настроен мониторинг — не нужно вообще. Если нет — раз в месяц через SSL Labs, плюс обязательно после любого переезда, редизайна, смены хостинга или подключения CDN. Именно эти четыре события ломают автопродление чаще всего.
Сайт открывается на компьютере, но не на телефоне. Сертификат виноват?
С вероятностью процентов восемьдесят — да, и это неполная цепочка. Прогоните домен через SSL Labs и найдите строку Chain issues. Починка — 5 минут работы админа.
Нужен ли платный сертификат интернет-магазину?
Нет. Let’s Encrypt использует ту же криптографию, что и сертификат за 30 000 ₽ — браузер шифрует одинаково. Платный нужен, только когда его прямо требует эквайер или корпоративный заказчик.
Что делать прямо сейчас, если сертификат уже просрочен?
Первым делом остановите контекстную рекламу — вы платите за клики, которые упираются в красный экран. Затем перевыпустите сертификат в панели хостинга (обычно кнопка «Выпустить бесплатный SSL», 5–15 минут). После этого проверьте SSL Labs и отправьте главные страницы на переобход в Вебмастер и Search Console.
Влияет ли SSL на позиции, если всё в порядке?
Само наличие HTTPS — минимальный положительный фактор, отдельного роста от него не будет. А вот отсутствие или поломка — фактор резко отрицательный, и работает он мгновенно.
Разовая проверка занимает пару минут, а вот держать сертификат, автопродление, мониторинг и конфигурацию сервера в рабочем состоянии годами — это уже регулярная работа, про которую вспоминают в момент, когда сайт уже лежит. В поддержке сайтов мы берём это на себя: следим за сроками, чиним цепочки и смешанный контент, чтобы вы не узнавали о проблеме от клиента.