ssl-cert-check — делаем простой мониторинг SSL с уведомлениями на email о необходимости продления сертификата.
Установка скрипта.
1. Ставим всё необходимое для работы, ssl-cert-check забираем из github репозитория:
# yum install git openssl
# cd /usr/local/src/ # git clone https://github.com/Matty9191/ssl-cert-check # cp ssl-cert-check/ssl-cert-check /usr/local/sbin/
2. Создадим файл /etc/ssl-cert-check-domains с доменами, которые будем периодически проверять. Выглядеть файл будет так:
# cat /etc/ssl-cert-check-domains sysadmin.pm 443 yandex.ru 443 google.com 443
3. Выполним проверку статуса сертификатов у внесённых в список доменов:
# ssl-cert-check -f /etc/ssl-cert-check-domains
Настройка уведомлений.
С помощью дополнительных параметров, мы можем указать интервал, по истечении которого, скрипт сообщит о неоходимости обновления сертификата, за это отвечает параметр -x. Например, вот так будут выглядеть результаты проверки, если для нас критично считать истекающими сертификаты, которые нужно продлить менее чем через 50 дней:
# ssl-cert-check -x50 -f /etc/ssl-cert-check-domains
C помощью параметра -a, мы включаем отправку уведемления на email, а с параметром -e указываем email, на который уйдёт сообщение о необходимости продлить сертификат. В результате, итоговая команда выглядит так:
# ssl-cert-check -a -f /etc/ssl-cert-check-domains -q -x 30 -e alert@sysadmin.pm
Т. е. мы проверяем все домены из файла /etc/ssl-cert-check-domains, и уведомляем о необходимости продления сертификата, в случае если он истекает менее чем через 30 дней.
Нам остаётся только добавить эту задачу в cron:
0 21 * * * /usr/local/sbin/ssl-cert-check -a -f /etc/ssl-cert-check-domains -q -x 30 -e alert@sysadmin.pm
И мы будем получать соответствующие уведомления от нашей системы.
Стоит заметить, что в заметке рассмотрен один конкретный кейс. Скрипт ssl-cert-check умеет многое — например, проверять конкретные файлы сертификатов, работать с сертификатами из директории, может передать пароль для сертификата, если требуется, можно использовать его как плагин для Nagios и изменять формат вывода информации. Для получения подробностей достаточно выполнить ssl-cert-check -h и скрипт выведет все доступные для него опции.