1

七牛云是很多草根博客站长们的首选加速云服务了,明月自己也很喜欢使用的,在现今“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免费证书,对国内的DnsPodCloudXNS支持是最好的,明月正好用的是CloudXNS,于是获得马上登陆CloudXNS获得API KEYSECRET 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.comdomain修改为申请的域名,文件路径根据自己的情况指定即可。

至此,Let's Encrypt免费证书申请获取完成了。记得下载SSL证书文档到本地以便在七牛里导入这个证书,证书文档分别是.key.cer文件。

2、七牛云里使用Let's Encrypt免费证书

登陆七牛云控制面板后,在“SSL证书管理”里点击“上传自由证书”。

qiniu20170614104500.png

输入“证书备注名”
“证书内容”即为.cer文件的内容,使用类似EditPlus即可打开,只需要复制后粘贴到“证书内容”即可。
“证书私钥”即为.key文件的内容,使用类似EditPlus即可打开,只需要复制后粘贴到“证书私钥”即可。
如下图:
qiniu 20170614105009.png
然后,点击“确定上传”即完成了七牛云导入Let's Encrypt免费证书。

在七牛云的绑定域名管理里选择要使用https的域名,点击“升级到HTTPS”,如下图:

qiniu20170614105258.png

如果域名和上传的证书匹配,在那么就可以在下拉框里选择证书后提交即可,具体可以参考下图:

qiniu20170614105613.png

此图主要是为了更形象的表达意思,所以没有可匹配的证书工选择,请各位知悉。

然后,没有然后了,剩下的就是等待七牛完成升级到https的部署了。

总结

今天明月也是收获不少再次叹服一下acme.sh的强大和Let's Encrypt的免费,因为有了他们我们草根博客站长们也可以使用看着很“高大上”的https了,并且还是“免费”的,这个很重要。看来全民HTTPS时代真的是来临了!


明月登楼
100 声望5 粉丝

不管在什么地方,就好像漆黑中的莹火虫一样,亮得新颖,亮得出众。那忧郁的眼神,唏嘘的胡楂子……!