用acme脚本手工获取Let's Encrypt泛域名(wildcard)证书
金蝶云社区-云社区用户9oi51234
云社区用户9oi51234
1人赞赏了该文章 659次浏览 未经作者许可,禁止转载编辑于2018年07月20日 16:18:26

说明下,手工获取Let's Encrypt证书属于比较蛋疼的做法,如果后续忘了更新......站点挂的证书会过期。所以正常来说应该自动获取、自动定时更新。


但如果因为某些原因,需要手工获取letsencrypt证书,可以参考下述步骤:


(以获取wildcard证书为例,场景为:因获取letsencrypt的wildcard证书需添加DNS的TXT记录,假如自动获取脚本不支持你的dns解析供应商的API——其实一般常用的都支持啦>_<,则需要手工获取)


1、Linux切换到root账号(推荐)


2、下载、安装acme,运行

curl https://get.acme.sh | sh


3、退出账号、重新登陆,使上一步安装脚本自动设置的bash别名生效

(安装脚本会自动设别名:acme.sh=~/.acme.sh/acme.sh)


4、申请wildcard证书,运行(把'*.sample.com'替换为'*.你的域名.com')

 acme.sh  --issue  --dns   -d '*.sample.com' --yes-I-know-dns-manual-mode-enough-go-ahead-please


5、按照输出结果的显示,在dns里添加的子域名和txt记录值,以使letsencrypt确认你是域名的所有者


6、再次运行acme,获取证书,运行

acme.sh  --renew   -d '*.sample.com' --yes-I-know-dns-manual-mode-enough-go-ahead-please


7、拷贝、合并取得的证书

(证书是nginx/apache用的格式,如果要在haproxy/ELB/CDN/WAF用的话,要自行合并/拷贝黏贴)


8、记得更新,不然站点证书过期.......


acme更多用法(如自动获取、更新证书)请参考:

https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E

https://github.com/Neilpang/acme.sh/wiki




赞 1