前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Let's Encrypt通配符证书申请办法,实测有效

Let's Encrypt通配符证书申请办法,实测有效

作者头像
明月登楼的博客
发布2019-05-15 10:55:55
8310
发布2019-05-15 10:55:55
举报

在【Let's Encrypt正式支持通配符(泛解析)证书的辟谣】一文里明月已经强调了目前网上很多所谓的申请Let's Encrypt通配符证书教程里存在的不严谨,下面明月就给大家说一下如何正常申请到支持通配符的Let's Encrypt证书。

本文将以 acme.sh 脚本为例,因为 acme.sh 已经内测支持 Let's Encrypt 通配符证书的申请,但需要更新你当前使用的 acme.sh 脚本到最新版本,具体命令如下:

acme.sh --upgrade

下载更新完成后,就可以申请Let's Encrypt通配符证书了,如果以前已经有Let's Encrypt证书了,只是需要申请替换原有证书,记得加上 --force 参数即可,具体命令如下:

代码语言:javascript
复制
acme.sh --issue --dns dns_cx  -d mydomain.com -d *.mydomain.com  --forceacme.sh --installcert -d mydomain.com -d *.mydomain.com \--key-file /home/wwwroot/www.mydomain.com/ssl/mydomain.com.key \--fullchain-file /home/wwwroot/www.mydomain.com/ssl/mydomain.com.cer \--reloadcmd "service nginx reload"

当然,如果你想重新完整申请Let's Encrypt通配符证书也是可以的,就是需要删除原有的证书,首先先列出当前通过 acme.sh 脚本管理的证书:

acme.sh --list

然后根据列出的当前证书的Main_Domain来删除对应的证书,如下命令:

acme.sh remove Main_Domain

如果是ECC证书可以加上-ecc参数来删除:

acme.sh remove Main_Domain -ecc

这样以后就可以参考上面的申请办法(去掉参数--force即可),比如:

acme.sh --issue --dns dns_cx -d mydomain.com -d *.mydomain.com

需要注意的是,目前Let's Encrypt通配符证书的申请,只能使用DNS验证模式才可以,未来官方在正式支持以后可能会更多的方式来支持的,所以记得要提前导入好DNS的API哦!

同理,ECC加密的证书申请通配符可以用下面的命令:

代码语言:javascript
复制
acme.sh --issue --dns dns_cx  -d imydl.tech -d *.imydl.tech -k ec-256 --forceacme.sh --installcert -d imydl.tech -d www.imydl.tech --ecc \--key-file /home/wwwroot/www.imydl.tech/ssl/imydl.tech.ecdsa.key \--fullchain-file /home/wwwroot/www.imydl.tech/ssl/imydl.tech.ecdsa.cer \--reloadcmd "service nginx reload"

其他同上参考即可。

至此你已经申请到支持通配符的Let's Encrypt证书了,通过acme.sh --listSAN_Domains一栏里就可以看到*.mydomain.com就说明已经成功了。

最后再次鄙视一下那些一点儿都不严谨的博文,需要说明白的都是模棱两可一笔带过,对很多小白来说真的是“害人不浅”,强烈鄙视一下!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 草根博客站长有话说 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档