博客使用Let's Encrypt的开源证书加密传输

很早就想过要给自己的博客采用HTTPS传输,也一直因为懒癌的存在,拖了很久。直到前些天,把博客的域名给搞定之后,终于又想起来要把HTTPS给搞起来了。

要使自己的网站采用HTTPS传输,那就少不了证书。而生成的获取,有以下几种方式:

一、最直接的是使用自签名的证书,但是这样就会被浏览器提示网站证书有问题,阻止你继续访问。

二、再进阶一点,就是使用StartSSL的免费证书了。在使用现在的证书之前,我有试过一下StartSSL的证书,在使用的过程中发现,虽然在生成证书的时候,选择了使用SHA-2的签名算法,但实际上生成的证书,在使用过程中,浏览器还是会提示是使用的SHA-1的签名算法,即浏览器地址栏不会显示绿色小锁的标识。于是放弃了。

三、去购买收费的证书。现在最便宜的证书是由Comodo颁发的DV(Domain Validation)证书了。在网上搜了几家卖这个证书的网站,都是4.99美元/年,前提是3年起购,例如:https://www.ssls.com/ssl-certificates/comodo-positivessl和域名注册商NameCheap是同一家公司。当然还有很多其他类似的公司。上网搜一下就知道了,大致最便宜的也就是4.99美元/年了。再贵一点的,就是有godaddy卖的62.99美元/年的了:https://www.godaddy.com/web-security/ssl-certificate

这次差点就入手了4.99美元/年的那个Comodo的证书了。然后突然想起Let’s Encrypt.Let’s Encrypt是由ISRG(Internet Security Research Group)赞助的免费、自动化、开源的证书颁发机构。而ISRG是加州的一个公益机构。Let’s Encrypt主要的赞助商有Mozilla, cisco 等,并且就在12月3号,Facebook也加入了赞助的行列。是于是乎,进入官网博客看到他们将于12月3号进行公测。于是现在博客使用的就是他们公测版的证书了。
Let’s Encrypt的使用非常简单,直接在服务器上生成即,并且也提供apache、nginxt等插件,可以自动配置。以下为使用apache服务器为例:

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto –apache

然后按照提示进行就可以了。

Let’s Encrypt的证书目前只有三个月的有效期,快到期的时候,Let’s Encrypt会发邮件提示你去更新证书。而更新证书也是非常方便的。执行如下命令即可:

./letsencrypt-auto renew