🔒 SSL 证书到期自动检查脚本

多域名证书监控 · 邮件自动提醒 · 日志记录 · 一键部署

📊 功能概览

🔍 多域名检查支持配置任意数量域名,逐个检查证书状态
📧 邮件自动提醒剩余天数低于阈值时,自动发送HTML格式提醒邮件
📝 日志记录连接失败、证书异常等事件自动写入日志,支持轮转
⚙️ 零代码配置所有参数通过YAML配置文件管理,无需修改代码
🖱️ 双击启动支持双击.bat一键运行,运行完自动暂停查看结果
⏰ 定时任务支持Windows任务计划/Cron定时每天自动执行

⚡ 实现流程

📋 读取配置 🔗 连接域名 📜 获取证书 📊 解析信息 ⚠️ 判断阈值 📧 发送提醒 📝 写入日志

🔬 实测结果(2026-07-17)

3
检查成功
3
即将到期
1
连接失败
域名到期时间剩余天数颁发者状态
baidu.com2026-08-1024 天GlobalSign nv-sa即将到期
github.com2026-09-3075 天Sectigo Limited正常
example.com2026-08-2943 天SSL Corporation即将到期
google.com连接超时

⚙️ 配置文件示例

# 要监控的域名列表 domains: - example.com - www.example.com - api.example.com # 提醒阈值(天) warning_days: 30 # SMTP 邮件配置 smtp: host: smtp.example.com port: 587 username: alert@example.com password: your_password to_addrs: - admin@example.com

📧 邮件提醒样例

🔧 技术栈

Python 3 cryptography PyYAML smtplib ssl logging Windows 任务计划 Linux Cron

📁 项目文件

文件说明
ssl_checker.py主脚本,核心检查逻辑
config.yaml配置文件(域名、SMTP、日志参数)
一键检查SSL证书.batWindows批处理,双击一键运行
ssl_checker.log运行日志(自动生成)