python检查https过期_Python实现HTTPS网站证书过期监控及更新

当前HTTP逐渐被大众所抛弃,HTTPS正在成为互联网上的主流。前段时间我们维护的一个HTTPS证书即将过期,由于多云环境比较复杂,团队小伙伴在替换更新证书的过程中出现疏漏,导致有一个域名证书没有及时更新,影响了系统可用性,为了杜绝这种问题再次发生,便写了这么个功能

比较简单,但很实用,再也不会出现证书漏更新的问题,具体流程为:扫描域名列表-->检查是否开启HTTPS-->获取证书过期时间-->记录入库-->更新证书

获取域名列表

我们用了很多的内部私有云SAAS服务,这些SAAS服务都提供有完善的API支持,DNS服务便是其中之一,可以根据DNS系统提供的API拿到所有的域名和记录。公有云也提供有完善的API文档,这里以阿里云为例,获取域名记录的代码如下

以上代码使用了阿里云提供的SDK,调用简单方便,最终返回请求状态及数据。方法可以获取到账号下的所有域名,方法可以获取到域名下的所有解析记录,需要注意数据量大小,以确定是否需要分页查询

检查是否开启HTTPS

检查是否开启HTTPS也是简单粗暴,直接通过模块请求HTTPS地址,没有报错则表示开启了https支持,大概代码如下

需要注意的是,如果批量扫描域名的话需要使用模式,否则可能会因为链接过多而报错

获取证书过期时间

之后再通过模块来拿到域名的HTTPS证书过期时间,代码如下

使用之前需要先安装模块,这里建议使用python3.6及以上版本,除了可以拿到证书过期时间外,还有以下方法能够获取到更多证书相关的信息:,,,,,,,,,

定时执行入库

以上步骤会定时执行监控,当发现证书过期时间小于30天时发报警,执行日志就写入了数据库方便前端页面展示

数据库就三个字段,在每次执行完一轮扫码后都会将详细信息计入上表中

前端获取最新一条数据展示

更新证书

证书更新是最繁琐的事情,因为涉及到多平台不同环境,每家公司情况可能都有不同,我们因为大量使用了SAAS服务,SAAS服务又提供有API,所以更新起来比较简单,调用API即

搞定收官!KPI++

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值