Ранее я уже делал скрипт, который умеет мониторить SSL сертификаты сайтов и отслеживать срок их действия.
В Zabbix Agent 2 появился плагин WebCertificate, который позволяет получить все те же данные о сертификатах, для которых я ранее делал шаблон.
Настроим проверку сертификата. Обращаться будем к агенту сервера Zabbix 7.4.1. Убедимся что у нас на сервере запущен именно второй агент.

Проверить работу плагина просто через zabbix_get:
apt install zabbix-getПроверяем:
zabbix_get -s 127.0.0.1 -k web.certificate.get[internet-lab.ru,443]
Плагин работает, давайте добавим новый хост через web-интерфейс.

Имя хоста пусть будет SSL internet-lab.ru. Шаблон: Website certificate by Zabbix agent 2. Мониторить будем через интерфейс Zabbix сервер, указываем Agent 127.0.0.1 порт 10050. Засунем хост в группу SSL.

В макросах переопределяем макрос {$CERT.WEBSITE.HOSTNAME}, указываем там имя хоста internet-lab.ru. Если нужно переопределить порт, меняем {$CERT.WEBSITE.PORT}. В макросе {$CERT.EXPIRY.WARN} устанавливается время, за сколько дней до протухания сертификата триггер поднимет панику. По умолчанию стоит 7 дней. Сохраняем.

Данные получаются. Шарманка работает.
Тюнинг
Обычно я не доверяю чужим шаблонам. Давайте посмотрим как он работает, что-нибудь затюним.

В шаблоне имеется элемент данных, который просто считывает данные макросов и формирует из них JSON для низкоуровневого автообнаружения. Что мне здесь не нравится, так это интервал в 1 минуту. Я не собираюсь так часто добавлять или менять хосты, поменяю интервал на 10 минут.

Автообнаружение зависит от элемента данных. Правильно сделали, что изменили интервал.

Смотрим прототипы элементов данных. Те же самые, что и я собирал. Здесь мне не нравится то, что сертификат проверяется каждые 15 минул. Зачем? Вероятно только для того, чтобы алерт пораньше ушёл при исправлении. Меняю проверку на раз в час.

Смотрим прототипы триггеров. Предупреждение выскакивает один раз. Можно добавить макросов и триггеров, чтобы предупреждение срабатывало, к примеру, за месяц, за две недели, за неделю, за день, в тот же день. Мне для личных нужд не обязательно, но в проде я бы добавил.
Заключение
Мы проверили работу шаблона по мониторингу срока действия сертификата в Zabbix Agent 2. Всё работает.
