管理了很多内部系统,每个在内网部署好之后,需要在入口的 Nginx 配置。内部系统,安全性也很重要,出于习惯都会配置上HTTPS。以前数量少,手动申请再配置免费的DV证书。现在站点一多,这么整就太麻烦了。
很幸运,现在的Let’s Encrypt附带的Certbot
已经比以前好多了,能自动的处理这些,稍加配置,就能轻松让全部域名实现。
Certbot是什么
Automatically enable HTTPS on your website with EFF’s Certbot, deploying Let’s Encrypt certificates.
怎么部署
官网首页就有文档,选择好Software
和System
就有具体的细节。Certbot在Ubuntu上有PPA,安装很方便。Ubuntu Xenial
上Nginx
的自动化部署方式点这里,核心流程就是:
- 安装好
Certbot
$ sudo certbot --nginx
,自动检测Nginx站点,自动配置HTTPS跳转sudo certbot renew --dry-run
,检测更新是否正常工作- 在
crontab
里面添加certbot renew
任务0 0 * * 1 /usr/bin/certbot --nginx renew >> /var/log/certbot_renew.log
可能会出问题的点
- 域名DNS解析不能是
cname
记录,得是a
记录 - Certbot的配置、证书都在
/etc/letsencrypt
目录,有时候可以去删除一些错误的配置 - Let’s Encrypt证书有效时间3个月,注意自动更新证书的时间。
certbot renew
在快接近失效时间的时候才会更新,可以放心的重复调用。我的crontab
设置的每周一更新一次。
期待明年一月放出的通配符证书,有了这个,几个环境也可以不用买证书啦。 *★,°*:.☆\( ̄▽ ̄)/$:*.°★*