今年3月份,Let’s Encrypt宣布支持通配符域名证书的申请(链接),
但是通配符域名的申请的验证方式只支持添加DNS TXT记录验证,这样就不能向之前一样用简单的定期执行一个renew命令就可以自动更新了,想要实现自动更新必须依赖与dns厂商的api
ACME客户端选择
ACME是Let’s Encrypt为了实现自动化证书管理而定的协议,有很多客户端实现了这个协议(链接)
cerbor和acme.sh这2个应该是使用人数最多的2个客户端
比较:
certbot 它的dns plugs暂时没有支持国内的dns厂商,需要手动登陆后台添加TXT记录,而且cerbot需要python支持
acme.sh 支持国内的阿里云和dnspod,并且自动为你创建 cronjob, 每天 0:00 点自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书
使用acme.sh创建证书
注意 *.yourdomain.com 不包含 yourdomain.com
以dnspod为例子,其他厂商查看(链接)
wget -O - https://get.acme.sh | sh
export DP_Id="123456"
export DP_Key="abcdefghijk"
acme.sh --installcert --issue --dns dns_dp -d yourdomain.com -d *.yourdomain.com \
--key-file /etc/nginx/ssl/yourdomain.com.key \
--fullchain-file /etc/nginx/ssl/fullchain.cer \
--reloadcmd "service nginx force-reload"
修改nginx
ssl_certificate /etc/nginx/ssl/fullchain.cer;
ssl_certificate_key /etc/nginx/ssl/yourdomain.com.key;
111222
评论: 11
2020-11-09 09:56:42          回复
111222
评论: ````
2020-11-09 09:56:14          回复
asdfg
评论: sadasd
2020-10-27 22:20:07          回复