目前,大多数免费SSL 证书的有效期为3 个月。如果您管理大量域名,您可能会错过续订并遇到证书过期问题。在本文中,我们将使用一个简单的脚本来自动检测多个域名并自动推送到奇维消息。
这是shell 脚本:
#!/bin/bash
域名=(\’baidu.com\’ \’weibo.com\’)
minLimit=30 #距离报警还剩多少天?
wxWorkKey=\’xxxxx
x\’ #kiweirobotkey
端口=443 #端口
#设置要检查的域名和端口
对于“${domainNames[@]}”的DOMAIN
做
# 获取SSL证书信息
CERT_INFO=$(openssl s_client -connect ${DOMAIN}:${PORT} -servername ${DOMAIN} -showcerts /dev/null 2/dev/null | openssl x509 -dates -noout)
# 提取证书过期信息
START_DATE=$(echo \’${CERT_INFO}\’ | grep \’notBefore\’ | Cut -d\’=\’ -f 2)
END_DATE=$(echo \’${CERT_INFO}\’ | grep \’notAfter\’ | cut -d\’=\’ -f 2)
# 将日期转换为Unix 时间戳
START_TIMESTAMP=$(日期-d \’${START_DATE}\’ +%s)
END_TIMESTAMP=$(日期-d \’${END_DATE}\’ +%s)
CURRENT_TIMESTAMP=$(日期+%s)
# 计算剩余天数
DAYS_REMAINING=$(( (${END_TIMESTAMP} – ${CURRENT_TIMESTAMP})/86400 ))
# 打印结果
echo \’域名: ${DOMAIN}\’
echo \’ – SSL 证书开始日期: ${START_DATE},到期日期: ${END_DATE}\’
echo \’ – 剩余天数: ${DAYS_REMAINING} 天\’
# 检查是否过期
如果[ ${DAYS_REMAINING} -lt $minLimit ];
#如果过期发送通知给奇维机器人
卷曲\’https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=\’${wxWorkKey} \\
-H \’Content-Type: application/json\’ 字符集=UTF-8\’ \\
-d\’
{
\’msgtype\’: \’文本\’,
\’文本\’: {
\’content\’: \’SSL 检测:\’${DOMAIN}\’ 剩余有效期\’${DAYS_REMAINING}\’ 天\’
}
}\’
菲
结尾
测试结果以及如何获取奇威机器人密钥如下。
定期运行脚本
可以利用百度通过cron定期运行脚本来实现自动通知功能。
#以上关于自动检测SSL证书过期日期以及自动通知脚本的相关内容由网络提供,仅供参考。相关信息请参见官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/91611.html