服务器证书过期时间,ssl证书过期时间监控

前几天,因为网易邮箱有部分域名的ssl证书过期,导致很多苹果用户的手机遇到疯狂弹窗,提示无法验证服务器身份。在我看来,这肯定是运维的锅了。

f51ce26a91b9a9c04de855e23c9c2a0c.png

即使ssl厂商有续费提示,但是有可能因为人为的原因或者沟通的原因导致部分域名会忘记更换。所以每个https的域名都有必要添加上证书过期的提醒。(网易邮箱这次好像就是因为更换证书出现了遗漏)。

如果你正在使用prometheus的作为监控工具,那么做ssl证书过期的监控就很简单了。prometheus是使用blackbox_exporter来监控http的。而blackbox_exporter默认就会检查https域名证书的过期时间,并把证书到期那一刻的时间戳存储在probe_ssl_earliest_cert_expiry里。所以直接添加alert rules就行了。

- alert: "ssl证书过期警告"

expr: (probe_ssl_earliest_cert_expiry - time())/86400 <10

for: 1h

labels:

severity: warn

annotations:

description: '域名{{$labels.instance}}的证书还有{{ printf "%.1f" $value }}天就过期了,请尽快更新证书'

summary: "ssl证书过期警告"

如果用到是其他监控工具,可能就需要用脚本获取过期时间再监控了。

openssl命令可以获取证书的过期时间,方法如下:

echo |openssl s_client -servername www.baidu.com -connect www.baidu.com:443 2>/dev/null | openssl x509 -noout -dates|awk -F '=' '/notAfter/{print $2}'

返回:

Jun 25 05:31:02 2020 GMT

如果想获取时间戳,方便判断,可以使用date命令转换

date +%s -d "$(echo |openssl s_client -servername www.baidu.com -connect www.baidu.com:443 2>/dev/null | openssl x509 -noout -dates|awk -F '=' '/notAfter/{print $2}')"

返回:

1593063062

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值