我们可以用zabbix来监控SSL证书的有效期:
监控脚本:
cat check_ssl.sh #!/bin/bash #获取ssl证书的过期时间 #author:Allen #获取证书的有效时间
time=$(echo | openssl s_client -connect $1:443 2>/dev/null | openssl x509
-noout -dates |awk -F'=' 'NR==2{print $2}') #有效时间生成时间戳 time1=$(date +%s -d
"$time") #当前时间生成时间戳 time2=$(date +%s) #当前时间减去有效时间,获得将要过期的天数
time3=$(((time1-time2)/(60*60*24))) echo $time3
修改配置文件,添加如下行:
vim /etc/zabbix/zabbix_agentd.conf
UserParameter=check_ssl[*],/etc/zabbix/scripts/check_ssl.sh $1
重启zabbix-agent
[root@yz-zabbix zabbix_agentd.d]# systemctl restart zabbix-agent
在server端测试,看能不能获取到数据
[root@yz-zabbix zabbix_agentd.d]# zabbix_get -s 127.0.0.1 -p 10050 -k
check_ssl[www.baidu.com] 238
成功获取到了数据,接下来配置zabbix界面
配置-->主机-->监控项-->创建监控项
主要是键值[ ]里面写要监控的网址,然后点击更新就行了!
触发器:
过期时间小于60则报警