随着电脑的普及,上网已经成为常态,我们打开浏览器输入网址就能查看到自己关注的信息,传统使用的是HTTP协议,但是这种协议存在很大的弊端,为了规避这样的缺陷,提高数据传输过程中的安全性就推出了HTTPS协议。HTTPS协议如何实现数据安全传输的呢?
从上图看,加密从客户端出来就已经是密文数据了,当用户在任何网络链路上接入时,即使被监听,由于黑客截获的数据密文数据,无法在现有条件下还原出原始数据信息,从而保证了数据传输的安全性。接下来给大家讲解如何在Tomcat服务器(以Tomcat 7.0为例)中配置使用HTTPS协议:
第一步:使用JDK自带的keytool工具来生成证书
a、打开DOS窗口,输入如下命令:
keytool -genkeypair -keyalg "RSA" -keystore "D:\gaohuanjie.keystore"b、点击回车键,出现下图:
c、输入相应信息——每个问题项输完后,点击回车键可进入到下一个问题项,如下图:
注意:
1、输入口令时,所输入的密码不显示,上面所输入的密码为gaohuanjie;
2、回答“您的名字与姓氏是什么?”的时候,要输入域名,比如localhost、127.0.0.1、Tomcat所在计算机IP地址或者购买的域名。
3、上图最后一步,遇到“(如果和 密钥库口令相同,按回车):”时,直接回车即可。
d、至此第一步完成,此时D盘根目录会存在一个名为“gaohuanjie.keystore”的文件。
第二步:
a、打开Tomcat安装根目录,找到conf下的server.xml文件,如下图:
b、使用记事本打开软件,找到如下已经被注释的代码:
c、将上图红框中的代码换成如下代码:
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="D:\gaohuanjie.keystore" keystorePass="gaohuanjie" />注意:
1、http协议的默认端口是80, https的默认端口是443,为了更方便的访问资源,这里将上图红框中8443改成了443;
2、keystoreFile属性用于指定第一步所生成证书的位置,这里把生成好的证书放在了D盘根目录;
3、keystorePass属性用于指定证书的密码,由于生成证书时密码为gaohuanjie,所以该属性的属性值为gaohuanjie
d、保存该server.xml文件,至此第二步完成。
第三步:
a、启动Tomcat,在Google浏览器中输入https://localhost/,然后回车会看到下图:
注意:也可以是https://127.0.0.1/
b、点击上图“高级”,得到下图:
c、点击上图“继续前往localhost(不安全)”,得到下图:
遗留问题:上面当我们使用https协议访问网站资源时,经历了一些小“磨难”,之所以这样是因为浏览器端没有导入该站点的“安全证书”,导入安全证书前,需要先制作证书:
制作安全证书:
a、
b、
c、
d、
e、