如今我们越来越多的网站开始使用SSL证书,不仅仅局限在电商网站、门户网站,甚至很多个人网站、博客都有在开启SSL安全在证书,且老左也在考虑是不是将博客安装SSL证书,之前一直有准备加上的,因为这款主题用的比较陈旧很多目录、文件都是手工静态加上去的,所以改动比较麻烦。
老左博客(laozuo.org)中也有分享过多篇关于SSL证书的安装文章,且很多商家也都提供免费证书,比如腾讯云提供免费一年GeoTrust DV SSL证书、Let's Encrypt永久免费但需要90天激活一次续约,当然如果要购买证书也不是很贵,有的甚至几十元一年都可以买到。
对于一般的网站,我们使用免费SSL证书即可,比如用的较多的还是Let's Encrypt证书,我们可以根据教程手工部署,以及老左也有分享过利用SSL FOR FREE工具自动部署到VPS服务器、以及cPanel面板虚拟主机中。在这篇文章中,老左准备分享采用Certbot工具部署Let's Encrypt证书过程。
第一、Certbot官网以及选择部署版本
官网地址:https://certbot.eff.org
这里我们可以根据实际项目环境,选择系统和发行版本,然后可以跳转到安装向导。然后会跳转到Automated、Advanced安装向导。
这里我们根据向导进行部署,老左这里就用自动模式部署看看,希望一切顺利,因为我现在都怕写教程了,有些甚至需要调整好几天才能完整,也许智商不是太高,这个没办法,天生的。
第二、Linux VPS利用Certbot部署SSL
这里我环境采用的是Nginx,系统用的是CentOS6,我会在上一步选择好对应的后根据提示进行步骤安装。
1、自动安装
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto
执行自动安装会下载和安装需要的环境组件等,总之我们执行就可以,遇到需要安装与否的输入y后回车。
2、生成域名证书
A - 单域名
./certbot-auto certonly --email admin@laobuluo.com --agree-tos --webroot -w /data/wwwroot/ssl.laobuluo.com -d ssl.laobuluo.com
B - 多域名
./certbot-auto certonly --email admin@laobuluo.com --agree-tos --webroot -w /var/www/laozuo -d laozuo.org -d www.laozuo.org -w /var/www/laobuluo -d laobuluo.com -d www.laobuluo.com
如果我们是多域名可以参考上面的进行多域名设置。域名进行修改和调整。
我们在生成证书的时候会有一个窗口弹出,然后估计没检测到邮箱,然后我手工输入回车OK后可以看到生成完毕,我们可以看到证书是90天,到时候再续约90天。我们也可以用自动脚本自动续约的。
3、找到我们的网站证书
我们可以在上面生成完成看到证书被放到/etc/letsencrypt/live/ssl.laobuluo.com/目录中,这个我们根据自己网址的文档区别。里面可以看到有cert.pem 、chain.pem 、 fullchain.pem 、privkey.pem四个文件。
4、将SSL文件部署到网站中
我们在获取到证书之后,就知道证书的路径,这里我们就不要动路径了,直接在网站Nginx配置文件或者APACHE文件中再调整,可以参考这篇文章,老左当时有进行设置过。
ssl_certificate /etc/letsencrypt/live/ssl.laobuluo.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ssl.laobuluo.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/ssl.laobuluo.com/chain.pem;
在Nginx站点配置文件中添加443端口server,然后设置SSL证书文件。设置后重启nginx看看是否成功,如果错误会有提示的。最后收尾工作,我们是否需要将所有的非HTTP跳转到HTTPS。
第三、Let's Encrypt续约SSL证书
./certbot-auto renew --dry-run
执行后会自动续约,不过这样是不是也麻烦?因为每个90天前几天又要来一次。我们可以设定到定时里。
总结,无论我们通过何种方法安装Let's Encrypt免费SSL证书,只要能安装上就可以。这种方法也是比较简单的,以后老左来整理一篇Nginx和Apache详细的部署文档,因为在这篇文章中就介绍的Certbot工具部署,耽搁的时间有点多了,还要上班,所以就到这里为止。