免费证书有效期只有 90 天,忘了续期浏览器就会报「不安全」。让 certbot 自己管续期才是正解。
防护配置
# 手动测试续期(不真正改写)
certbot renew --dry-run
# 写进定时任务,每天尝试,到期前 30 天自动续
0 3 * * * certbot renew --quiet --post-hook 'systemctl reload nginx'
要点速览
- renew 只会在距过期 30 天内才真正续,平时跑只是检查,可放心进 cron。
- --post-hook 在续期成功后 reload Nginx,让新证书生效。
- 上线前务必跑一次 --dry-run,确认钩子与权限都没问题。
证书过期是企业最常见的「低级事故」,一条 cron 就能根除。