内容简介:在七牛云里绑定的自定义域名使用Let’s Encrypt免费证书
七牛云是很多草根博客站长们的首选加速云服务了,明月自己也很喜欢使用的,在现今“https”大行其道的情况下给自己的博客启用 https
也是很多站长们比较迫切的一个需求了,明月最近也一直在折腾这个。毕竟是草根嘛,所以一切还是要以“免费”为主的。所以我的博客加速优化方案一般都是七牛云, SSL
证书目前几乎都是 Let's Encrypt
免费证书。
大家知道如果站点启用 SSL
后,站内的一些主要引用链接也必须是 https
前缀才可以,要不浏览器就会标注站点不安全,所以启用SSL后,使用七牛云的自定义域名也必须使用SSL证书的(也就是https),七牛本身是提供有免费SSL证书的,但是悲催的是明月今天发现七牛里“免费”的 SSL
证书好像没有了,看来SSL普及的开来就是为了填这类“坑”的呀!七牛的 https
流量收费我捏着鼻子接受了, SSL
证书只有“收费”的显然是不能接受的,还好七牛这次更新后竟然支持 Let's Encrypt
免费证书(七牛要求是必须是30天以上有效期的证书,而 Let's Encrypt
默认是90天的,所以这就是支持 Let's Encrypt
了。)哈哈,这可真是“山重水复疑无路,柳暗花明又一村”呀,好诗!好诗!
在【 使用acme.sh快速部署生成Let’s Encrypt免费证书 】一文里专门有提到过“acme.sh 实现了 acme 协议支持的所有验证协议. 一般有两种方式验证: http 和 dns 验证.”,今天我们就要用到 acme.sh
的这个 DNS
验证来获得 Let's Encrypt
免费证书以便在七牛云里使用。
1、获取 Let's Encrypt
免费证书
首先你需要一个 VPS
来运行 acme.sh
这个脚本,然后照着【 使用acme.sh快速部署生成Let’s Encrypt免费证书 】一文里的相关教程用DNS验证方法来申请 Let's Encrypt
免费证书,对国内的 DnsPod
和 CloudXNS
支持是最好的,明月正好用的是 CloudXNS
,于是获得马上登陆 CloudXNS
获得 API KEY
和 SECRET KEY
,键入下面的命令:
export CX_Key="1234" export CX_Secret="sADDsdasdgdsf"
这样就可以让 acme.sh
脚本使用域名解析服务商的 API
来做 DNS
验证域名所有权了。(吐槽一下:原来域名解析服务商的 API
还有这个好处呀,汗!)
然后继续键入如下命令:
acme.sh --issue --dns dns_cx -d example.com -d www.example.com #因为明月用的是二级域名,所以就不用指定主域名了,我用的是如下的命令: acme.sh --issue --dns dns_cx -d pic.example.com #其中的pic.example.com就是你要申请证书的二级域名,这里也可以理解为是需要绑定到七牛云空间的域名。
因为需要验证 TXT
记录啥的,所以键入上述命令后会提示需要120秒等待时间,时间完成后就获得了这个域名的 SSL
证书了,为了保险期间明月强烈建议将这个域名证书文件 copy
到一个比较安全和自由的目录里, acme.sh
默认保存的不容易获取。
可以使用如下命令来 copy
证书文件到指定目录:
acme.sh --installcert -d mydomain.com \ --key-file /etc/nginx/ssl/mydomain.key \ --fullchain-file /etc/nginx/ssl/mydonain.cer \
上述里面的 mydomai.com
和 domain
修改为申请的域名,文件路径根据自己的情况指定即可。
至此, Let's Encrypt
免费证书申请获取完成了。记得下载SSL证书文档到本地以便在七牛里导入这个证书,证书文档分别是 .key
和 .cer
文件。
2、七牛云里使用 Let's Encrypt
免费证书
登陆七牛云控制面板后,在“SSL证书管理”里点击“上传自由证书”。
输入“证书备注名”
“证书内容”即为.cer文件的内容,使用类似 EditPlus
即可打开,只需要复制后粘贴到“证书内容”即可。
“证书私钥”即为.key文件的内容,使用类似 EditPlus
即可打开,只需要复制后粘贴到“证书私钥”即可。
如下图:
然后,点击“确定上传”即完成了七牛云导入 Let's Encrypt
免费证书。
在七牛云的绑定域名管理里选择要使用 https
的域名,点击“升级到HTTPS”,如下图:
如果域名和上传的证书匹配,在那么就可以在下拉框里选择证书后提交即可,具体可以参考下图:
此图主要是为了更形象的表达意思,所以没有可匹配的证书工选择,请各位知悉。
然后,没有然后了,剩下的就是等待七牛完成升级到 https
的部署了。
总结
今天明月也是收获不少再次叹服一下 acme.sh
的强大和 Let's Encrypt
的免费,因为有了他们我们草根博客站长们也可以使用看着很“高大上”的 https
了,并且还是“免费”的,这个很重要。看来全民 HTTPS
时代真的是来临了!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 反向代理华为云OBS实现自定义域名访问
- Knative 实战:如何在 Knative 中配置自定义域名及路由规则?
- Amazon S3 上托管静态网站完整攻略(自定义域名、CDN 内容分发、配置 HTTPS)
- Golang Echo数据绑定中time.Time类型绑定失败
- 如何在Symfony的表单中添加一个未绑定字段,否则绑定到一个实体?
- js双向绑定
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。