
«Не работает https» — самая тревожная формулировка, с которой клиент может написать подрядчику: сайт вроде на месте, но браузер вместо страницы показывает красную плашку и слово «небезопасно». За этой одной фразой скрывается десяток разных технических причин — от банально истёкшего сертификата до особенностей доверия к российским удостоверяющим центрам в разных браузерах. Разберём, как за несколько минут понять, что именно случилось, и что с этим делать.
Разные браузеры формулируют одну и ту же проблему по-разному, но коды ошибок у Chromium-браузеров (Chrome, Яндекс Браузер, Edge) стандартные, и по ним можно сразу сузить причину:
ERR_CERT_DATE_INVALID — проблема с датой: либо сертификат уже истёк, либо (реже) ещё не наступила дата начала его действия. Второй случай обычно означает неправильные часы на устройстве посетителя, а не поломку на сервере.ERR_CERT_AUTHORITY_INVALID — браузер не доверяет удостоверяющему центру, который выдал сертификат: это либо самоподписанный сертификат, либо УЦ, которого нет в списке доверенных именно у этого браузера (частая причина в России — см. ниже), либо оборванная цепочка сертификатов.ERR_CERT_COMMON_NAME_INVALID — сертификат выдан на другое имя: например, на example.ru, а сайт открывают на www.example.ru, или это wildcard-сертификат *.example.ru, который не покрывает поддомен третьего уровня вроде shop.app.example.ru.Самое полезное действие в моменте — нажать «Подробнее» или открыть детали сертификата в адресной строке: там браузер прямо покажет дату истечения, кем выдан сертификат и на какое имя. Это быстрее, чем гадать.
Прежде чем чинить, стоит понять, что именно сломалось — почти все случаи укладываются в пять сценариев:
Бесплатная проверка SSL показывает дату истечения сертификата, кем он выдан и совпадает ли с доменом — за один клик и без создания аккаунта.
Проверить сертификат сайтаДля сайтов, связанных с Россией, к обычным причинам добавляется ещё одна, специфическая: доверие к удостоверяющим центрам различается от браузера к браузеру.
В последние годы часть западных удостоверяющих центров стала осторожнее с выпуском и продлением сертификатов для некоторых российских сайтов, а отдельные площадки испытывали сложности именно с этим шагом процесса. Ответом на это стал Национальный удостоверяющий центр Минцифры (НУЦ) — он выпускает сертификаты бесплатно, но здесь есть важная оговорка: на сегодня эти сертификаты доверены далеко не во всех браузерах, а фактически — только в Яндекс Браузере и Атоме. Для обычного посетителя, который открывает сайт в Chrome, Safari, Firefox или через большинство мобильных приложений, сайт с одним лишь сертификатом НУЦ будет выглядеть ровно так же, как «не работает https»: браузер откажется доверять соединению.
Это значит, что выбор сертификата — не чисто технический вопрос, а вопрос охвата аудитории. Если у сайта разношёрстная аудитория (а у подавляющего большинства коммерческих сайтов она именно такая), сертификат НУЦ имеет смысл держать вторым, дополнительным вариантом, а не единственным. Надёжный путь, который признают все основные браузеры без исключения, — по-прежнему Let's Encrypt: он бесплатный, автоматизируемый и никак не завязан на региональную специфику. Единственное условие — сертификаты Let's Encrypt короткоживущие (выдаются на 90 дней), поэтому автопродление обязательно, а не «желательно»: без него сайт гарантированно вернётся к этой же проблеме через несколько месяцев.
reload, а не просто замена файла./.well-known/acme-challenge/) ничем не перехвачен на уровне конфигурации сервера.Все шаги выше — это разбор уже случившейся аварии. Правильный порядок — не допустить, чтобы клиент вообще увидел красную плашку. Pingvera держит SSL-сертификат под постоянным наблюдением вместе с доступностью сайта: устанавливает TLS-соединение и видит, сколько дней осталось до истечения сертификата. Порог предупреждения настраивается — как только до конца срока остаётся заданное число дней, приходит алерт в Telegram, email, Max, VK или подписанным вебхуком в свой сценарий.
Проверки идут не с одной точки, а с нескольких регионов России и Европы, и подтверждение по кворуму — падение фиксируется, когда недоступность видят сразу несколько точек, а не одна. Это разом закрывает и «сертификат истёк», и «у клиента из другого региона сайт вдруг не открывается», не разбираясь вручную, что из этого произошло на самом деле.
Чаще всего — истёк срок действия SSL-сертификата: он живёт не вечно, а автопродление (особенно у Let's Encrypt) иногда тихо ломается за недели до того, как это станет заметно. Реже причина в другом: отозванном сертификате, неполной цепочке доверия, разошедшихся часах на сервере или временной проблеме у конкретного провайдера. Быстрее всего понять, что именно произошло, — открыть сайт и посмотреть точный код ошибки в браузере.
Браузер говорит, что сертификат недействителен по дате: либо срок уже закончился, либо ещё не наступил срок начала действия. Второй вариант обычно означает, что на устройстве посетителя неправильно выставлены дата и время, а не проблему на сервере. Первый — почти всегда реальный истёкший сертификат, который нужно перевыпустить.
Перевыпустить сертификат и обязательно перезагрузить веб-сервер командой reload — простого обновления файла на диске недостаточно, процесс должен подхватить новый сертификат. Дальше стоит проверить цепочку: неполная цепочка промежуточных сертификатов часто работает в браузере, но ломается в мобильных приложениях. И включить автопродление на будущее, чтобы не повторять всё это вручную каждые несколько месяцев.
Скорее всего, на сайте установлен сертификат от НУЦ Минцифры — доверенного удостоверяющего центра, который на сегодня признаётся только Яндекс Браузером и Атомом. Chrome, Safari, Firefox и большинство мобильных приложений в этот список удостоверяющих центров не входят и покажут обычному посетителю «подключение не защищено». Для сайта, у которого аудитория не ограничена одним браузером, разумно держать основным сертификат от УЦ, которому доверяют все браузеры, — например, Let's Encrypt.
Разовая проверка показывает состояние только на текущий момент — через месяц она снова понадобится. Надёжнее постоянный мониторинг: система сама следит за сроком сертификата и присылает предупреждение заранее, до того как браузер посетителя покажет красную плашку.
Pingvera следит за сроком SSL, доступностью сайта из нескольких регионов и сроком домена — и присылает алерт заранее, а не когда посетители уже видят красную плашку. Бесплатно до 5 сайтов.
Начать бесплатноЧитайте также: SSL-сертификат истёк: самая дешёвая авария, которая дорого бьёт по доверию и Домен не продлили — и сайт исчез.