文档首页> 常见问题> 证书到期前的提醒与自动化

证书到期前的提醒与自动化

发布时间:2025-11-14 13:26        更新时间:2025-11-14 22:58
证书过期导致的网站打不开,几乎都能靠两条措施避免:自动续期加日历提醒。双保险配上,这事就从待办清单里消失了;两条腿各管一头,自动化管日常,日历管兜底。 准备条件 确认证书的签发方式与存放路径,以常见的 certbot 自动签发为例,证书在 /etc/letsencrypt/live/域名/ 目录下;控制台手动购买的证书,先把到期日查清并记入台账:域名、到期日、签发方式、部署位置四列一张表,多证书的全貌就清楚了。 第一步:配置并验证自动续期 certbot 装好后通常自带定时任务,要验证而不是默认它存在: ``` certbot renew --dry-run systemctl list-timers | grep -i certbot ``` 续期依赖验证通道:HTTP 验证要 80 端口可达,DNS 验证要接口权限,通道断了续期必失败。--dry-run 走测试接口验证流程,不消耗正式签发配额。timers 列表里有条目,续期就算自动化了。再让续期后自动重载 Web 服务,加一个部署钩子: ``` printf '#!/bin/sh\nsystemctl reload nginx\n' > /etc/letsencrypt/renewal-hooks/deploy/reload.sh chmod +x /etc/letsencrypt/renewal-hooks/deploy/reload.sh ``` 第二步:加日历双保险 自动续期也会静默失败:DNS 变更、端口被封、进程挂掉都可能让它停摆。日历里设到期前 30、14、3 天三次提醒,责任人写具体的人。手动核对一条命令: ``` openssl x509 -enddate -noout -in /etc/letsencrypt/live/example.com/fullchain.pem ``` 日历提醒设成每年重复,换证书后记得改日期。把这条检查写进每周巡检清单,和磁盘、备份一起看。 第三步:接入到期监控 监控平台开证书拨测,从外部视角看剩余有效天数,少于 15 天触发告警,按 P1 分级确保有人认领。只拨测不告警等于没配,告警要走短信或电话,别只留在面板里。外部拨测看到的才是用户看到的,比只在本机看文件更可靠。 验证与常见报错 续期失败最常见于验证不通:80/443 端口被占用或封禁、DNS 没指回本机、Web 配置冲突,翻 /var/log/letsencrypt/letsencrypt.log 定位。还有个隐蔽坑:部署钩子没加执行位,续期成功但服务没重载,证书换了进程还在用旧的。先用 --dry-run 反复调试,通过后再等正式周期,别拿生产配额练手。