Let's Encrypt 证书自动续期
证书过期是完全可以避免的事故。同一件事有很多种做法,选哪种取决于你的系统版本和线上是否允许中断。
下面按“先判断范围、再处理、最后防复发”的顺序展开,涉及 certbot、证书续期 的关键动作都给了具体做法,可以照着走。
安装
certbot 或 acme.sh,前者依赖少后者更轻。
同一时间只改一项,改完立刻验证,出问题也好定位。
续期
certbot renew --dry-run 先演练。
容易踩的坑:很多“没生效”其实是缓存或时长问题,先排除这一层再改配置。
定时
加一条 cron 或 systemd timer,每天跑一次。
同一时间只改一项,改完立刻验证,出问题也好定位。
重载
续期成功后 hook 里 nginx -s reload。
速查表
| 环节 | 关键动作 |
|---|---|
| 安装 | certbot 或 acme.sh,前者依赖少后者更轻 |
| 续期 | certbot renew --dry-run 先演练 |
| 定时 | 加一条 cron 或 systemd timer,每天跑一次 |
| 重载 | 续期成功后 hook 里 nginx -s reload |
常见问题
Q:certbot这类问题,最快的判断办法是什么?
先确认现象的范围:只有单台还是全部、只在某个时段还是持续。范围一缩小,原因基本就浮出来了。
Q:按文中的步骤做完,还需要注意什么?
把处理过程和最终生效的参数记下来。同类问题再出现时直接对照记录,比重查一遍快得多。
小结
回到这篇的四个环节:安装、续期、定时、重载。命令行操作贵在可复现:把有效的命令记进运维笔记,比记在脑子里靠谱。
相关阅读:Nginx 配置 HTTPS 的完整步骤、Nginx 开启 gzip 与静态缓存、Nginx 限流配置与效果。