Мониторинг SSL-сертификата
Мониторинг SSL-сертификата раз в сутки за 0,002 ₽ за проверку: Нотифарио читает сертификат на порту 443 или любом другом TLS-порту, сверяет срок действия, цепочку доверия и имя домена и предупреждает за 14 дней до истечения — в Telegram, MAX и на почту, а о подтверждённом сбое — ещё по SMS и звонком.
Зачем нужен мониторинг SSL-сертификатов
Истёкший сертификат для посетителя хуже упавшего сайта. Браузер закрывает страницу предупреждением «Подключение не защищено» и предлагает уйти; платёжная форма не открывается, мобильное приложение не может подключиться к API, почтовый клиент при каждом подключении спрашивает, доверять ли серверу. При этом сайт формально «работает»: HTTP-проверка с включённым игнорированием ошибок SSL ничего не заметит.
Сертификаты Let's Encrypt живут 90 дней, и продлевает их автоматика. Ломается она тихо: у DNS-провайдера истёк API-токен, certbot перестал запускаться после обновления системы, панель хостинга выпустила новый сертификат, но не перезапустила nginx, и сервер продолжает отдавать старый. Никакой ошибки в этот момент нет — она появится, когда истечёт текущий сертификат.
Контроль срока SSL-сертификата закрывает этот разрыв: проверка раз в сутки читает тот сертификат, который получает посетитель, и считает дни до окончания. Пока запас больше порога — тишина. Как только меньше — сообщение с датой и издателем, и есть две недели, чтобы починить продление, а не тушить пожар. Разово посмотреть сертификат можно в бесплатном инструменте проверки SSL; эта страница — про постоянный контроль.
Что проверяем
- Предупреждение за N дней до окончания (по умолчанию 14)
- Проверка цепочки и совпадения имени
- Уведомление о смене сертификата — признак подмены
- Работает для любого TLS-порта: HTTPS, SMTP, IMAP
Типичные причины сбоев
- Сломалось автопродление: истёк API-токен DNS-провайдера, упал certbot, нет прав на запись.
- Новый сертификат выпущен, но не подхвачен сервером (не перезапущен nginx).
- Неполная цепочка после переустановки: не хватает промежуточного сертификата.
- Сертификат не покрывает поддомен, который добавили позже.
- Панель хостинга сменила сертификат на самоподписанный после переезда.
Как работает контроль срока SSL-сертификата
Вы указываете хост и порт (по умолчанию 443) — без «https://» и путей. Нотифарио подключается по TLS с точки мониторинга, как обычный браузер с SNI, и получает сертификат целиком: субъект, список альтернативных имён (SAN), издателя, серийный номер, отпечаток SHA-256, дату окончания и цепочку до корня.
Дальше четыре проверки. Срок: если дней до окончания меньше порога «Предупредить за» — предупреждение, если сертификат уже истёк — сбой. Цепочка: сервер должен отдавать промежуточные сертификаты, иначе ошибка «цепочка не проверена». Имя: хост должен совпадать с субъектом или одним из SAN, включая wildcard. Отпечаток: если он изменился с прошлой проверки, приходит сообщение «сертификат изменился» со старым и новым издателем и датами.
Интервал — раз в сутки, при желании чаще, минимум раз в час. Одна проверка стоит 0,002 ₽: суточный контроль одного домена обходится в 73 копейки в год, ежечасный — в 17,5 ₽. Абонентской платы и лимита на число мониторов нет, оплата — аванс на балансе, при регистрации на него зачисляется бонус 50 ₽ (подробнее — цены).
Что приходит в уведомлении
⚠️ SSL shop.example.ru: сертификат истекает через 9 дн. До: 30.09.2026 12:00 (МСК) Издатель: Let's Encrypt / R11 Открыть монитор →
Так выглядит сообщение о сбое; о восстановлении придёт отдельное — с длительностью простоя. Каналы: Telegram, MAX, email, SMS, звонок, webhook.
Параметры проверки
| Параметр | Описание |
|---|---|
| Хост | example.ru |
| Порт | (по умолчанию: 443) |
| Предупредить за, дней | (по умолчанию: 14) |
| Проверять цепочку доверия | Да / нет |
| Проверять соответствие имени | Да / нет |
| Уведомлять о смене сертификата | Да / нет |
Интервал — от 1 час до 1 суток (рекомендуем 1 день). Проверка выполняется с основной точки.
Чем мониторинг лучше скрипта с openssl в cron
- Скрипт проверяет дату; мониторинг — ещё цепочку, имя и смену отпечатка, а это частые причины реальных инцидентов с SSL.
- Скрипт на том же сервере умирает вместе с сервером и молчит, когда сломан cron; внешняя проверка видит сертификат так, как его видит посетитель.
- Доставка: Telegram, MAX, почта, webhook, а при сбое — SMS и звонок, с тихими часами и повтором раз в сутки, вместо письма от cron, которое уходит в спам.
- История: дата и издатель каждого сертификата, момент смены, инциденты с длительностью — и статус для клиентов на публичной странице.