标签:agent start $2 监控项 取证 script -- mamicode get
通过zabbix监控提醒网址ssl证书过期和网站域名过期未必不是一件好事,省掉过期后的一些麻烦。一。SSL证书监控(zabbix客户端部署)
vi /etc/zabbix/script/ssl_check.sh
#!/bin/bash
#获取ssl证书的过期时间
#menghao
#获取证书的有效时间
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)/(606024)))
echo $time3
脚本给执行权限
chmod +x /etc/zabbix/script/ssl_check.sh
编辑zabbix_agent配置文件添加一行
UserParameter=ssl_check[*],/etc/zabbix/script/ssl_check.sh $1
配置完别忘记重启一下zabbix_agent服务
systemctl restart zabbix-agent.service
可以通过命令检测一下,获取网站有ssl证书的到期时间
zabbix_get -s 192.168.100.9 -p 10050 -k ssl_check[www.baidu.com]
成功获取了数据,则可以在zabbix服务端上配置了。
在服务端上--配置--主机--监控项--创建监控项
然后再配置告警小于30天提醒
测试的时候可以把值改成3000,会有相应的告警系统,我这边是调用企业微信通知。
测试完记得改回去哦。
二.域名监控(客户端上配置)
vi /etc/zabbix/script/domain_check.sh
#/bin/bash
time=$(echo | whois $1 |grep ‘Registry Expiry Date‘ |awk ‘{print $4}‘|cut -d ‘T‘ -f 1 )
if [ -z "$time" ]
then
time=whois $1|grep ‘Expiration Time‘ |awk ‘{print $3}‘
fi
#有效时间生成时间戳
time1=$(date +%s -d "$time")
#当前时间生成时间戳
time2=$(date +%s)
#当前时间减去有效时间,获得将要过期的天数
time3=$(((time1-time2)/(606024)))
echo $time3
脚本给执行权限
chmod +x /etc/zabbix/script/domain_check.sh
编辑zabbix_agent配置文件添加一行
UserParameter=domain_check[*],/etc/zabbix/script/domain_check.sh $1
配置完别忘记重启一下zabbix_agent服务
systemctl restart zabbix-agent.service
可以通过命令检测一下,获取网站有ssl证书的到期时间
zabbix_get -s 192.168.100.9 -p 10050 -k domain_check[www.baidu.com]
成功获取了数据,则可以在zabbix服务端上配置了。
在服务端上--配置--主机--监控项--创建监控项
就是这么简单。
参考文章:
https://www.cnblogs.com/Star-Haitian/p/10483042.html
https://blog.51cto.com/bkmaster/2473366?source=dra
标签:agent start $2 监控项 取证 script -- mamicode get
原文地址:https://blog.51cto.com/907832555/2490616