Мониторинг SSL-сертификатов: избегаем простоев
Почему истекший сертификат — катастрофа
Когда проверку SSL истекает, браузеры показывают полноэкранное предупреждение, блокируя доступ к сайту. Пользователи не могут обойти это предупреждение без специальных действий. Результат: потеря трафика, конверсий и доверия. По статистике, 85% пользователей покидают сайт при виде SSL-ошибки.
Истечение сертификата — самая предотвратимая причина даунтайма. Вы всегда знаете дату истечения заранее.
Что мониторить
Срок действия
Главная метрика — количество дней до истечения. Настройте уведомления на 30, 14 и 7 дней до истечения. Для критических сервисов — дополнительно на 3 и 1 день.
Проверьте срок действия вашего сертификата с помощью SSL-чекера Enterno.io.
Цепочка доверия
SSL-сертификат работает через цепочку: ваш сертификат → промежуточный CA → корневой CA. Если промежуточный сертификат отсутствует или некорректен, браузеры не смогут проверить подлинность вашего сертификата.
Распространённые проблемы:
- Отсутствие промежуточного сертификата в конфигурации сервера
- Неправильный порядок сертификатов в bundle
- Использование отозванного промежуточного CA
Протокол и шифры
Мониторьте поддерживаемые версии TLS и шифры:
- TLS 1.2 — минимально допустимая версия
- TLS 1.3 — рекомендуемая версия
- TLS 1.0/1.1 — должны быть отключены
- Слабые шифры (RC4, 3DES, MD5) — должны быть отключены
Соответствие домена
Сертификат должен покрывать все домены и поддомены, которые используются. Wildcard-сертификат *.example.com покрывает поддомены, но не сам example.com (нужен SAN).
Certificate Transparency
Мониторьте CT-логи на предмет неожиданных сертификатов для вашего домена. Если кто-то получил сертификат для вашего домена без вашего ведома — это признак компрометации.
Автоматизация продления
Let's Encrypt + Certbot
Let's Encrypt выдаёт бесплатные сертификаты сроком на 90 дней. Certbot автоматизирует продление:
# Установка certbot apt install certbot python3-certbot-nginx # Получение сертификата certbot --nginx -d example.com -d www.example.com # Проверка автопродления certbot renew --dry-run # Cron для продления (обычно настраивается автоматически) 0 0,12 * * * certbot renew --quiet
Облачные провайдеры
AWS Certificate Manager, Cloudflare, Google Cloud — предоставляют автоматическое управление сертификатами без ручного вмешательства.
Коммерческие сертификаты
Для OV и EV сертификатов автопродление сложнее из-за ручной верификации. Начинайте процесс продления за 30 дней до истечения.
Распространённые проблемы
Сбой автопродления
Даже с Certbot автопродление может сломаться:
- проверку портов 80 заблокирован файрволом (нужен для HTTP-01 challenge)
- DNS Lookup изменилась (для DNS-01 challenge)
- Nginx/Apache не перезагружается после обновления
- Certbot не обновлён и не поддерживает новые API документацию
Mixed content после обновления
Новый сертификат может изменить поведение HSTS или sub-domain coverage, вызвав неожиданные mixed content ошибки.
Pinning проблемы
Если вы используете HPKP или certificate pinning в мобильных приложениях, замена сертификата может заблокировать доступ. HPKP устарел и не рекомендуется.
Инструменты мониторинга
- Enterno.io SSL Checker — проверка сертификата, цепочки доверия, протоколов
- Enterno.io Heartbeat — мониторинг сайтов доступности, включая SSL-ошибки
- Enterno.io Security Scanner — проверка HSTS и связанных заголовков
Чеклист SSL-мониторинга
- Настроить автопродление (Certbot / облачный провайдер)
- Мониторить срок действия (алерты на 30/14/7/3/1 день)
- Проверять цепочку доверия после каждого обновления
- Тестировать автопродление ежемесячно (
certbot renew --dry-run) - Мониторить CT-логи для обнаружения неавторизованных сертификатов
- Отключить устаревшие протоколы (TLS 1.0/1.1)
- Документировать процедуру ручного продления как fallback
Итоги
Мониторинг SSL-сертификатов — это не просто проверка даты истечения. Мониторьте цепочку доверия, протоколы, шифры и CT-логи. Автоматизируйте продление, но не доверяйте автоматизации слепо — проверяйте её работоспособность. Используйте инструменты Enterno.io для регулярных проверок.
Проверьте ваш сайт прямо сейчас
Проверить →