Безопасность и домен 3 мин чтения

Срок действия SSL-сертификата

Просроченный сертификат кладёт сайт целиком — браузер показывает красный экран вместо страниц. Как настроить автопродление и следить за сроком.

Сертификат подтверждает, что домен принадлежит вам, и делает возможным HTTPS. У него всегда есть срок действия — и в день его окончания сайт перестаёт открываться для всех.

Что видит посетитель, когда срок вышел

Не страницу, а предупреждение на весь экран: «Подключение не защищено», «Сертификат сайта недействителен». Продолжить можно, но кнопка спрятана за «Дополнительно», и большинство людей просто уходит.

Хуже, если включён HSTS: тогда кнопки «всё равно перейти» вообще нет, сайт недоступен полностью.

Поисковый робот при этом фиксирует недоступность сайта, и при затяжной проблеме страницы начинают выпадать из индекса.

Сроки

Let's Encrypt и другие бесплатные центры выдают сертификаты на 90 дней. Это сделано намеренно: короткий срок вынуждает настроить автоматику, а автоматика надёжнее человека, который «продлит в следующем месяце».

Платные сертификаты выдаются максимум на год (раньше было до трёх лет). Отраслевые правила движутся к дальнейшему сокращению сроков, так что ручное продление в любом случае перестаёт быть вариантом.

Автопродление

Certbot — стандартный инструмент для Let's Encrypt. При установке он сам заводит задачу продления; проверить её работу можно вхолостую:

sudo certbot renew --dry-run

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

Панели хостинга (ISPmanager, cPanel, панели облачных провайдеров) обычно продлевают сами — нужно лишь убедиться, что галочка автопродления включена.

CDN и прокси вроде Cloudflare выпускают и продлевают сертификат за вас, но помните: тогда шифруется только участок «посетитель — CDN». Между CDN и вашим сервером нужен свой сертификат.

Почему автопродление ломается

  • Изменились правила веб-сервера, и проверочный запрос к /.well-known/acme-challenge/ больше не проходит — самая частая причина.
  • Домен переехал на другой IP или другие DNS-серверы, а конфигурация осталась старой.
  • Задача продления отключилась при обновлении системы или переносе сервера.
  • Изменился набор доменов в сертификате: добавили поддомен, а в конфигурацию продления его не внесли.

Отсюда правило: настроенное автопродление стоит проверять — раз в квартал команды certbot renew --dry-run достаточно.

Мониторинг

Не полагайтесь только на письма от центра сертификации: они уходят на адрес, указанный при выпуске, а его нередко никто не читает. Надёжнее внешний мониторинг, который проверяет срок и пишет в мессенджер за две недели до окончания.

Наш инструмент проверяет срок при каждом аудите: пункт «SSL-сертификат» показывает, сколько дней осталось, и переходит в предупреждение, когда остаётся меньше двух недель.

Как проверить вручную

echo | openssl s_client -connect example.ru:443 2>/dev/null | openssl x509 -noout -dates

В браузере — нажмите на замочек в адресной строке: там указано, кем выдан сертификат и до какого числа он действителен.

Что ещё проверить кроме срока

  • Дату оплаты домена. Вторая дата, из-за которой сайты выключаются в один день (возраст и срок домена).
  • Совпадение имени. Сертификат должен покрывать и example.ru, и www.example.ru (про зеркала).
  • Полную цепочку. Сервер обязан отдавать не только свой сертификат, но и промежуточные. Браузеры часто прощают их отсутствие, а мобильные приложения и внешние сервисы — нет.
  • Версию протокола. TLS 1.2 и 1.3; устаревшие TLS 1.0/1.1 и SSL 3.0 нужно отключить.

А что с этим на вашем сайте?

Аудит «Кверху» проверяет этот пункт вместе с остальными пятьюдесятью и показывает конкретику: какие страницы затронуты и что именно исправить. Первая полная проверка проекта — бесплатно.

Проверить сайт бесплатно