随着互联网的发展与普及,数据安全性越来越重要。越来越多的应用都对安全性有特殊的要求。有些行业客户的项目都要求要使用SSL,一些中小型企业既希望保证应用安全性,又为节省成本,不想花钱购买。今天就跟大家分享一下,如何申请免费的SSL证书,并部署到自己的服务器中。
首先,先简科普一下。SSL证书是 extended validation ssl certificates的英文翻译,中文即扩展验证(EV)SSL证书,该证书经过最彻底的身份验证,确保证书持有组织的真实性。独有的绿色地址栏技术将循环显示组织名称和作为CA的GlobalSign名称,从而最大限度上确保网站的安全性,树立网站可信形象,不给欺诈钓鱼网站以可乘之机。
好了,废话少说,下面我们就以tomcat 为例,一步一步的搭建自己的SSL应用吧。
第一步,生成秘钥库文件。用JavaSDK为我们提供的keytool工具生成,如图:
这里需要注意一下,alias 参数后面的名称需要记住,这个别名就是服务器证书(私钥)的别名。秘钥口令是6位以上的字符。也要记住,后面导入证书的时候要用到。
第二步,生成证书请求文件:
这两个步骤完成后,会生成两个文件:
一个是秘钥库文件,一个是证书请求文件。
然后,我们需要到CA证书颁发机构去申请证书了,之前国内的免费的证书机构 沃通 可以免费申请,但是在今年的9月29日关闭了免费证书的申请。我们可以去startssl去申请(www.startssl.com):
选择免费版证书申请,然后选择用邮件验证码的方式进行登录:
根据提示,到自己填写的邮件中查收邮件,填写好验证码后,到证书申请导航页面。
第一步,验证域名,这个域名就是要申请证书的域名,
如果你填写的邮件是第一次申请证书,还需要验证域名:
填写需要验证的域名,如图:
同样选择邮件的方式验证,这里真是忍不住需要吐槽一下,邮箱服务器不能换,只有有数的这几个邮件地址,我自己申请的时候用的是企业云邮件(大家也可以申请,毕竟是免费的嘛,不过需要有自己的域名,因为配置的时候需要mx记录的验证),因为这可以自定义邮件服务器名。
第二步,填写CSR请求,填写好验证码后,就到了填写证书请求页面:
我们选择自己生成请求CSR选项,将之前生成好的csr文件用文本编辑器打开,将里面所有内容复制,粘贴到文本框中,然后点击提交,等待证书的生成:
稍等片刻之后,我们申请的证书就生成了。
下载完成后,打开会有一系列的证书:
其中,Tomcat的证书在OtherServer的包中。我们将其解压后,得到三个证书,分别是根证书,中级证书,和我们的服务器证书(公钥)。
到此为止,所有的准备工作都已经完成了,万事俱备,经过了如此复杂的步骤,终于看到了一点希望了,有没有一点小激动?剩下的工作就是将证书导入到我们的秘钥库中。
注意导入的顺序:根证书 --中级证书--服务器证书。
第一步:导入跟证书,用 keytool -import命令导入。
-file参数 后面是下载后的根证书的路径 -keystore 参数 后面是 我们之前生成的秘钥库文件。
输入秘钥口令(之前生成秘钥库时的密码),在是否信任此证书时,输入y,然后回车。会看到提示“证书已添加到秘钥库中”。
第二步,导入中级证书。命令相同,修改文件名即可。
第三步,导入服务器证书。
千万注意:此处的alias参数后面的名称 一定要和之前生成的秘钥库别名相同,不然会出现“无法从回复的证书中建立连接”的错误。这也是最常见的错误。
最后,我们将这个包含导入了证书的秘钥库文件,部署到tomcat中。找到tomcat目录中conf/server.xml,将https连接打开:
然后,重新启动tomcat,打开浏览器进行测试:
注意,浏览器地址栏是绿色的哦~,我们可以查看证书信息:
可以看到,证书的有效期是3年哦~~
如果是在本机测试,还需要修改hosts文件哦,不然,地址栏不会是绿色的。好了,经过了这么繁琐的步骤,终于大功告成了。赶快去部署自己的应用吧~~