Let’s Encryp****免费SSL证书已经受到了包括FireFo****、Chrom****在内的众多主流浏览器的兼容和支持,目前国内的应用主要是提现在各大电商网站和门户网站上,可以提高访问和交易安全性。很多外贸公司网站也使用是因为googl****已经明确表示有提供SSL证书将会是一个加分因素。那么对于我们广大站长来说,也许将来某一天你的网站就需要添加这么一个SSL证书。
给网站添加SSL证书的方式有很多,老魏以后会分别写教程。今天魏艾斯博客(www.vp****)说一下Let’s Encryp****官方推荐Certbo****工具快速部署SSL证书。
安装环境:CentOS**** 军哥lnmp1.****
>>>点击查看业务详细介绍合作咨询>>>一、安装Let’s Encryp****之前要准备的
把CentO****系统安装好,lnmp环境配置好并添加域名和虚拟主机完毕。
以下两个步骤根据你自己的系统情况操作,根据老魏实测的结果如果是CentOS****/7务必提前安装epel源,否则后面生成证书时可能会报错。
CentO**** 5升级pytho****版本,点我查看pytho****版本从2.4升级到2.7的操作流程。
CentO**** 6/7安装epel,点我查看cento****安装epel源的操作流程。
二、Certbo****选择部署版本
根据你的实际情况来针对性的选择系统和发行版本,然后会跳转到automa****安装向导。
三、CentOS****中使用Certbo****部署SSL证书
1、老魏选择了CentOS****系统和lnmp环境,输入以下命令开始自动安装:
cd /root/ wget http****://dl.eff****/certbo**** chmo**** a+x certbo**** ./certbo****
图示如下
“Instal**** Pytho**** packag****”这个过程需要稍等几分钟,中间有遇到Is this OK时候输入y,回车即可。
这里下载pytho****源默认是在国外了,如果你用国外VPS自然是没问题,而老魏测试VPS是国内的需要耐心等待一下,如果你使用国内VPS卡在Instal**** Pytho**** packag****…这个地方长时间不动,可以执行下面命令来修改pip源为国内的:
mkdi**** ~/.pip
cat > ~/.pip/pip.co**** <<EOF
[globa****]
index-**** = http****://pypi.d****/simpl****/
[instal****]
truste****=pypi.d****
EOF
执行完,再重新运行certbo****的命令应该正常安装pytho****的包了。
2、生成域名SSL证书
admi****@域名代表你域名对应的邮箱,尽量填写国外邮箱,国内的不知道好不好用。
A – 单域名
./certbo**** certon**** –emai**** admi****@域名.com –agree-**** –webroo**** -w /home/wwwroo****/网站文件夹 -d www.域名.com
B – 多域名单目录生成单证书:(即一个网站多个域名使用同一个证书)
./certbo**** certon**** –emai**** admi****@域名.com –agree-**** –webroo**** -w /home/wwwroo****/www.域名.com -d www.域名.com -d www.域名.com

C – 多域名多目录生成多个证书:(即一次生成多个域名的多个证书)
./certbo**** certon**** –emai**** admi****@域名.com –agree-**** –webroo**** -w /home/wwwroo****/网站文件夹1 -d 域名1.co**** -d www.域名1.co**** -w /home/wwwroo****/域名2 -d 域名2.co**** -d www.域名2.co****
现在会弹出窗口,大概意思是把你的邮箱提交给一个Let’s Encryp****的合作伙伴,老魏这里选择的n,你随意吧。
下面是这里可能遇到的两个错误(老魏全碰上了)和解决办法:
如果出现了下面红字的错误是因为没有提前安装EPEL源。
如果出现提示:访问http****://域名/.well-****/acme-c****/**** 这个链接返回403错误(截图不完整了),所以必须要将对应虚拟主机配置文件里的
locati**** ~ /\.
{
deny all;
}
这段配置删掉或注释掉或在这段配置前面加上
locati**** ~ /.well-**** {
allo**** all;
}
最后出现以下提示说明安装证书成功了。
2、生成的证书被放到/etc/letsen****/live/你的域名/目录中,这个是根据自己网址目录来的。进入里面可以看到有cert.p**** 、chain.**** 、 fullch**** 、privke****四个文件。
3、知道证书的安装路径之后,就涉及到在网站Ngin****配置文件或者APACH****文件中添加路径了。
Ngin****的虚拟主机配置文件在:/usr/loca****/ngin****/conf/vhos****/域名.con****
命令:vi /usr/loca****/ngin****/conf/vhos****/域名.con****
输入a进入编辑状态,然后把下面已经配置好的代码(老魏实测没问题)复制粘贴到你那里,注意把下面所有的 域名.com 换成你的域名,证书路径也换成你自己的。结果就是主域名和www域名都自动301跳转到http****://www域名,你可以根据自己的情况调整最后跳转到http****://主域名还是www域名。
serve**** { liste**** 80; #liste**** [::]:80; server**** www.域名.com 域名.com; retur**** 301 http****://$server****$reques****; } serve**** { liste**** 443 ssl http****; ssl_ce**** /etc/letsen****/live/www.域名.com/fullch****; ssl_ce**** /etc/letsen****/live/www.域名.com/privke****; ssl_ci**** "EECD****+CHACHA****:EECD****+CHACHA****:EECD****+AES12****:RSA+AES12****:EECD****+AES25****:RSA+AES25****:EECD****+3DES:RSA+3DES:!MD5"; ssl_pr**** TLSv**** TLSv1.**** TLSv1.****; ssl_pr**** on; ssl_se**** share****:SSL:10m; # HSTS (ngx_ht**** is requir****) (157680**** second**** = 6 month****) add_he**** Strict**** max-ag****=157680****; # OCSP Stapli**** --- # fetc**** OCSP record**** from URL in ssl_ce**** and cach**** them ssl_st**** on; ssl_st**** on; inde**** index.**** index.**** index.**** defaul**** defaul**** defaul****; server**** www.域名.com 域名.com; root /home/wwwroo****/www.域名.com; includ**** wordpr****; #error**** 404 /404.ht****; includ**** enable****; locati**** ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expire**** 30d; } locati**** /wp-con****/upload****/ { locati**** ~ .*\.(php)?$ { deny all; } } locati**** ~ .*\.(js|css)?$ { expire**** 12h; } locati**** ~ /\. { deny all; } access**** off; }
然后按ESC退出编辑状态,输入:wq保存。
4、重启ngin****使以上操作生效,命令如下:
/etc/init.****/ngin**** reloa****
5、用浏览器打开主域名或者带www的域名,都会自动301跳转到如下图的结果,也就是域名前面出现了小绿锁,点击绿锁会出现Let’s Encryp****验证的证书信息,说明添加成功了。
提示:1、截图网页中显示的it’s ok是老魏自己建了一个index.****扔进虚拟主机目录里的,如果是新建网站没有任何内容,就会显示“403 Forbid****”,不过不影响主域名和www域名自动301重定向到http****域名。
2、这里仅限于新装wordpr****博客的情况,至于已经在运行的wordpr****博客,限于本文篇幅过长,老魏留着后面再补充。
6、这个网站http****://www.ss****/ssltes****/可以测试SSL证书是否正常工作,我这个测试结果是A+,很完美的结果!
目前Let’s Encryp****免费SSL证书默认是90天有效期,可以提前用下面命令手动续约90天:
./certbo**** rene**** –dry-ru****
怕忘记续约过期了可以用cronta****定时执行命令到期自动续约,这样就可以放心了。
为了写这篇文章,老魏实测了3天才搞定整个流程。开始我用的国内VPS在测试,每次总是卡在Instal**** Pytho****这里,因为默认的Pytho****源是国外的,下载速度实在太慢了。后来又换了国外VPS又出现各种错误提示,最后又回到了国内VPS。而网上的教程很多都是复制粘贴的,并没有经过自己的实际测试,很容易误导你。总之从安装过程来看这个Cerbo****工具并不像官方说的那么快捷,一个不小心就会报错,大家安装的时候务必按照老魏上面的流程去做,我这里是没问题的。
转载请注明:魏艾斯博客» Let’s Encryp****官方推荐Certbo****工具快速部署SSL证书
标签: ngin****的ssl证书
