zabbix мониторинг окончания срока действия ssl-сертификата

zabbix_logo

Возникла острая необходимость мониторить дату окончания сертификата у нескольких доменов, система мониторинга поднята на zabbix. Для мониторинга даты окончания сертификата, будем использовать UserParameter в конфиге zabbix, но для начала создадим сам скрипт проверки.
Создаем директорию:

mkdir /etc/zabbix/scripts

сам скрипт:

vim testcerts.sh

с содержимым:

#!/bin/bash
end_date=`echo | openssl s_client -connect $1:443 2>/dev/null | openssl x509 -noout -enddate`
end=$(cut -d= -f2- <<<"$end_date")
end_date=`date -d "$end" '+%s'`
curr_date=`date '+%s'`
diff=$(( $end_date - $curr_date ))
let "days = $diff / 86400"
echo $days

выставляем права на директорию и скрипт:

chmod +x testcerts.sh
chown -R zabbix:zabbix zabbix/scripts/

проверяем:

./testcerts.sh vk.com
1074

если получили ошибку, возможно, у вас не установлен openssl, хотя он должен стоять искаропки.
Далее в конфиг заббикса добавляем 

UserParameter=certdate[*],/etc/zabbix/scripts/testcerts.sh $1

Передергиваем заббикс агента:

systemctl restart zabbix-agent

Выкачиваем пример шаблона по ссылке и импортируем его в заббикс, на основании данного шаблона можно писать свои:
url: http://komivlad.net/blog/files/Template_certs.xml
В шаблоне два триггера, первый сработает, если до окончания срока осталось 6 дней, второй в день окончания.

Поделись с друзьями:

Опубликовано 08.10.2015 в 06:30 · Автор komivlad · Ссылка
Рубрики: ArchLinux, CentOS, Debain, Fedora, FreeBSD, Linux Mint, ProxMox, Raspberry Pi, Ubuntu, WebServer · Теги: , , , , , , , ,

Написать комментарий