tech.zntr

Как быстро проверить срок действия сертификата

Автопродление Let's Encrypt работает, пока не сломается. Поэтому срок действия стоит проверять снаружи, тем же путём, каким к сайту ходят пользователи.

Дата окончания

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

Параметр -servername обязателен, если на одном адресе живёт несколько сайтов. Без него сервер может отдать чужой сертификат.

Проверка с запасом

echo | openssl s_client -connect example.ru:443 -servername example.ru 2>/dev/null \
  | openssl x509 -noout -checkend 1209600 \
  && echo "больше 14 дней" || echo "истекает в ближайшие 14 дней"

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