实现原理
借助 LetsEncrypt
的 acme.sh
或 certbot
来实现的自动续期,需要先在 FreeSSL
网站上申请,得到专有命令,之后在服务器上执行这个专有命令,就能够生成证书了, 接下来借助 crontab
计划任务可以实现自动续期。
在 FreeSSL
网站上申请时需要在域名的 DNS解析
上配置 CNAME
才行。
acme.sh
acme.sh
本身就自带自动续期功能,但是不支持 zsh
操作,需要切换到 bash
环境再使用。
certbot
certbot
本身不支持自动续期功能,所以需要自己手动配置。
自动续期配置
编辑计划任务脚本:
$ sudo crontab -e点击复制复制失败已复制
在最后一行加入如下内容:
45 3 * * 6 /usr/bin/certbot renew &>> /home/ubuntu/certbot-renew.log点击复制复制失败已复制
这样就会在每周日的凌晨3点45分执行证书更新啦。
注意点
- 在服务器上生成的证书路径不要变动,否则下次自动更新证书后还是原来的位置,会造成自动续期失效。
- 在单机上这样使用还是很不错的,在集群中慎用。