宝塔面板SSL到期告警设置教程,轻松避免证书过期
为什么需要SSL到期告警
SSL证书过期后,浏览器会直接提示“不安全”,用户访问网站时会看到红色警告,不仅影响体验,还可能导致业务中断。
很多站长因为忘记手动续费,等到过期才发现,临时处理非常被动。
宝塔面板内置了SSL到期告警功能,只要提前配置好,就能在证书过期前几天通过邮件、企业微信或钉钉收到提醒,让你有充足时间续期或自动续签。
准备条件
在开始设置前,请确认以下几点:
- 宝塔面板版本:建议升级到最新版(至少 7.9 以上),老版本可能没有消息通道功能。
- 网站已部署SSL:确保你的网站已经申请并部署了SSL证书,不管是通过宝塔自带Let's Encrypt还是手动上传的证书,都可以触发告警。
- 通知渠道信息:提前准备一个可用的通知方式,例如企业微信群机器人的Webhook地址、钉钉机器人的Access Token、或一个可用的邮箱(用于SMTP发送)。
核心操作:配置通知通道与告警规则
宝塔面板的SSL到期告警是通过“消息通道”+“通知规则”实现的,不需要写脚本。
具体步骤如下:
1. 添加消息通道
登录宝塔面板后台,点击左侧菜单栏的 消息通道,然后点击 添加通道。
根据你手头可用的通知方式选择一种:
- 企业微信机器人:填入Webhook地址(从企业微信群机器人设置中复制),保存后可以点“发送测试”验证是否成功。
- 钉钉机器人:同样填入Webhook地址,注意钉钉机器人安全设置(加签或IP白名单)需与宝塔匹配。
- 邮件:需要填写SMTP服务器、端口、账号密码等信息,推荐使用QQ邮箱或阿里企业邮箱。
2. 创建通知规则
在 消息通道 页面,切换到 通知规则 标签,点击 添加规则。
- 规则名称:例如“SSL到期提醒”。
- 触发事件:选择 SSL证书到期提醒。
- 提前天数:建议填写 7天,这样有充足时间处理。也可以填14天或30天。
- 通知通道:勾选上一步添加的通道(可以同时选多个)。
保存后,规则立即生效。
宝塔面板每天会在固定时间(如凌晨3点)扫描所有站点SSL证书,如果剩余天数小于你设定的值,就会通过配置的通道发送告警。
常见问题与避坑说明
收不到告警消息?
- 测试通道:在消息通道列表里,每个通道后面有“发送测试”按钮,点击后检查是否收到。如果收不到,检查Webhook地址或SMTP配置。
- 规则未保存:通知规则保存成功后,页面会提示“添加成功”。如果刷新后看不到规则,可能因权限问题未生效,重新添加一次。
- 宝塔版本过低:旧版本没有SSL到期提醒事件,需要升级面板。在首页右上角点击“更新”按钮。
- 服务器时间不准:宝塔面板依赖服务器系统时间判断证书到期日。如果服务器时间与实际偏差较大,可能导致告警提前或推迟。建议在 计划任务 里添加一个
ntpdate ntp.aliyun.com 的任务每天同步时间。
多站点重复告警?
通知规则是针对所有站点的,每个站点证书到期都会触发一次告警,属于正常行为。
如果觉得消息太多,可以在规则中设置 重复提醒间隔(部分版本支持),或增加提前天数减少频率。
使用计划任务脚本替代?
如果你喜欢更灵活的控制,也可以用计划任务写一个bash脚本定时检查SSL到期日,然后调用Webhook发送通知。
但官方的消息通道方案零配置、维护简单,推荐新手先尝试。
验证告警是否生效
配置完成后,如何确认真的会收到告警?
可以这样做:
- 在 通知规则 里将提前天数临时改为 1天(调整后保存)。
- 找一个剩余天数少于1天的测试站点(或者临时申请一个七日证书),等待次日检查(宝塔默认每天扫描一次)。如果想立刻验证,可以在 文件 里手动修改证书文件内容或删除证书(不推荐生产环境),或使用计划任务执行
bt 22强制扫描站点状态(需要root权限)。 - 更简单的方法:直接点击 消息通道 里的“发送测试”,虽然这不是SSL告警,但至少证明通道连通性。
建议配置完成后,先保持规则并观察一两天,如果期间有站点证书即将到期,自然会收到消息。
对于没有即将到期的站点,可以等下次续期时查看通知效果。
遇到任何告警问题,先检查 消息通道 的测试功能,再确认通知规则里的事件是否为“SSL证书到期提醒”。
只要通道正常、规则添加正确,就能稳稳守住证书有效期,不再担心网站突然报错。