Nginx,Cpanel,DirectAdmin安装StartSSL免费SSL证书

昨天部落已经分享StartSSL免费SSL申请的方法,相信已经有不少的朋友已经成功得到了StartSSL免费SSL证书了,接下来我们需要将StartSSL免费SSL安装在自己的VPS主机、有独立IP的虚拟主机上了。

本篇文章部落就来为大家分享一下如何将StartSSL免费SSL证书安装在Nginx服务器上,同时简单介绍在Cpanel,DirectAdmin控制面板上安装StartSSL免费SSL,让你的CP和DA用户访问更加安心。

SSL证书要想要安装在VPS或者虚拟主机上,前提条件是有一个独立IP。部落以前在介绍Godaddy SSL时,在安装了Godaddy的SSL证书后就会得到一个独立IP。很多人误以为Godaddy SSL安装后就一定会有一个独立IP。

实际上你只有在Godaddy的主机上安装Godaddy SSL才会赠送你一个独立IP,因为SSL要求一个独立IP,没有这个IP你也不能安装。而如果你想将Godaddy SSL安装在第三方的主机上,就需要第三方的主机提供独立IP来满足SSL证书安装需求了。

不管是Godaddy SSL还是其它的StartSSL SSL,安装和使用都基本上差不多的

Nginx,Cpanel,DirectAdmin安装StartSSL免费SSL证书

PS:2013年5月17日更新,Kloxo控制面板安装StartSSL方法请参考:Kloxo搭建网站开立多用户和安装StartSSL免费SSL证书

一、在Nginx服务器生成CSR证书签名请求

1、本篇文章是在部落的Linode日本VPS上安装StartSSL免费SSL证书的。首先是用SSH登录到你的VPS,执行下列命令:


openssl req -new -newkey rsa:2048 -nodes -out freehao123.csr -keyout freehao123.key

2、注意将域名替换成你自己的域名。然后就是填写省、城市、邮箱等,和上面的在Cpanel生成CSR要填写的信息是一样的。

Nginx生成密钥

3、以上命令会在你的VPS的root目录下生成freehao123.key 和freehao123.csr 两个文件。执行以下命令:


cat freehao123.csr

4、复制CSR全部内容。

Nginx复制所有内容

二、在StartSSL为VPS生成SSL签名证书

1、首先你要在StartSSL通过你绑定在VPS上的域名验证,申请与验证教程:StartSSL免费SSL证书成功申请

Nginx通过域名验证

2、通过了域名验证后,然后点击Certificates Wizard,选择WEB Server SSL/TSL Certifites。

3、然后进入下一步,这里是生成私钥和CSR签名证书请求,由于我们已经在VPS生成了,所以直接跳过。

Nginx直接跳过

4、再点击继续,这里就要粘贴你刚刚在VPS中生成的CSR签名证书请求内容了。

Nginx生成了CSR

5、保存后,选择你要为哪个域名生成证书。

Nginx选择一个域名

6、再输入一个二级域名,你也可以输入www。

Nginx输入二级域名

7、提交后就是等待人工审核通过了,大概几分钟后邮箱就能收到邮件,通过审核了。

8、进入Tool Box 点击 Retrieve Certificate,选择申请证书的域名,将框中的内容保存为.crt文件,这个就是域名证书了。

Nginx审核得到了CRT

三、在Nginx服务器配置StartSSL免费SSL

1、进入你的VPS的root目录下,这里可以看到刚刚通过命令生成的CSR和Key两个文件了,我们只需要将StartSSL得到了CRT文件上传也保存在这里就可以了。

Nginx保存在VPS上

2、执行以下命令,编辑Nginx配置文件。


vim /usr/local/nginx/conf/nginx.conf

3、在Server中主要是添加以下代码。


 listen       443;
 ssl on;
 ssl_certificate /root/freehao123.crt;
 ssl_certificate_key /root/freehao123.key;
 ssl_session_timeout 5m;

Nginx编辑配置文件

4、其中/root/freehao123.crt是CRT文件的路径,如果你把CRT文件放在别的地方,请修改相应的路径。

5、再执行以下命令,重启Nginx就可以了。


/usr/local/nginx/sbin/nginx -s  reload

四、解决Firefox浏览器不信任StartSSL免费SSL的问题

1、通过以上方法,我们已经成功在Nginx服务器配置StartSSL免费SSL了,只不过如果用Firefox来访问的话,会提示证书不信任。

StartSSL证书不信任

2、解决的办法是执行以下命令:


wget http://cert.startssl.com/certs/ca.pem   
wget http://cert.startssl.com/certs/sub.class1.server.ca.pem  
cat ca.pem sub.class1.server.ca.pem >> freehao123.crt

3、另外一个解决办法是下载sub.class1.server.ca.pem,然后编辑上传到VPS的CRT文件,将sub.class1.server.ca.pem的内容粘贴到CRT下方保存即可。

4、然后再重启Nginx就可以了。

StartSSL显示正常

5、Chrome浏览器显示StartSSL免费SSL一切正常。

StartSSL在Chrome中显示正常

五、Cpanel面板安装StartSSL免费SSL

1、首先是如果是共享IP主机的话是不能安装SSL证书的,像部落的Hawkhost主机就是共享IP,不能安装SSL。

StartSSL共享IP地址

2、如果你有独立IP的Cpanel的话,恐怕就不会稀罕StartSSL免费SSL了,毕竟免费的SSL与付费的SSL还是有区别的,独立IP也不是一般人愿意去消费的。

3、要在Cpanel面板上安装StartSSL免费SSL,请按照StartSSL免费SSL证书成功申请教程为你的域名生成一个CRT文件和Key私钥。

4、由于StartSSL的私钥Key是加密的,你需要先在StartSSL解密,再保存为XXX.key这样的文件。点击左侧的Decrypt Private Key,将key里的内容复制到大文本框里,然后输入创建个人密钥匙时输入的密码,点击Decrypt进行解密。

Cpanel解密密钥

5、然后进入Cpanel面板,在“安全”一栏中点击“SSL/TLS 管理器”。

Cpanel进入管理器

6、点击“私人密钥”,上传你已经得到了Key文件。

Cpanel上传密钥

7、再点击“证书(CRT)”链接,保存你的CRT文件内容,记得将sub.class1.server.ca.pem也复制粘贴到里面。

Cpanel粘贴CRT

6、通过上面的操作我们就已经在Cpanel上配置好的StartSSL了。

六、DirectAdmin面板安装StartSSL免费SSL

1、本篇文章已经写了Nginx,Cpanel安装StartSSL免费SSL证书,已经在我的Linode的VPS上配置成功了:https://zhujik.com(演示有可能随时被删除)

2、刚好有朋友在部落留言说如何在DirectAdmin面板安装StartSSL,这里部落由于找不到亲自测试的DirectAdmin面板,参考lanbing.org博主写的方法。

3、登录DirectAdmin后台,点击SSL Certificates,将证书和私钥填写在下面的方框里。

DirectAdmin添加密钥

4、最后还要记得下载sub.class1.server.ca.pem,将pem中的内容保存在根证书中里面。

DirectAdmin保存为根证书

七、安装StartSSL小结

1、其实在Cpanel中已经提供了私钥生成服务了,如果你已经在Cpanel生成了私钥,那就只要按照本篇文章操作VPS那样跳过StartSSL成功申请教程中生成私钥的过程,直接填入CSR然后生成CRT就行了。

2、网上有很多关于安装StartSSL免费SSL证书的方法,基本有两种方式:一先在主机生成kEY和CSR,然后用CSR从StartSSL获得SSL证书。二直接在StartSSL中生成加密KEY和CRT,然后解密KEY,将最终的KEY和CRT一起上传主机上。