需要监控证书过期时间,简单记录一下。
zabbix-agent 的方法
使用如下脚本
# cat /etc/zabbix/zabbix_agentd.d/check_ssl.sh
### SSL Certificate Expire Day Check Script ###
if [ "$1" = '' ];then
echo "Need URL."
exit
1;fi
TARGET_URL=$1
EXP_DAY=`openssl s_client -connect ${TARGET_URL}:443 < /dev/null 2> /dev/null | openssl x509 -text 2> /dev/null | grep "Not After" | sed -e 's/^ *//g' | cut -d " " -f 4,5,6,7,8`
NOW_TIME=`date +%s`
EXP_TIME=`date +%s -d "${EXP_DAY}"`
if [ "${EXP_DAY}" != '' -a ${NOW_TIME} -lt ${EXP_TIME} ]; then
echo $(((EXP_TIME-NOW_TIME)/(60*60*24)))
else
echo "ERROR"
exit 1;
fi
验证一下
zabbix-agent 配置文件增加自定义 key
root@devops:~# grep ssl_check /etc/zabbix/zabbix_agentd.conf
UserParameter=ssl_check[*],/etc/zabbix/zabbix_agentd.d/check_ssl.sh $1
重启 zabbix-agent
systemctl restart zabbix-agent
zabbix-server 配置
选择一台主机,对其添加监控项item:
键值:ssl_check[qq.com]
新建触发器
表达式:
last(/Zabbix server/ssl_check[qq.com])<=30