详解用Tomcat服务器配置https双向认证过程实战

2019-10-18 16:09:37刘景俊

keytool -keystore D:hometomcat.keystore -export -alias tomcat -file D:hometomcat.cer (tomcat为你设置服务器端的证书名)。

C:Windowssystem32>keytool -keystore D:tomcat.keystore -export -alias tomcat -file D:tomcat.cer
输入keystore密码:
保存在文件中的认证 <D:tomcat.cer>

C:Windowssystem32>

2、在客户端安装服务器证书

双击“tomcat.cer”,按照提示安装证书,将证书填入到“受信任的根证书颁发机构”。






3、检查安装结果

IE -> Internet选项 -> 内容 -> 证书

五、配置Tomcat服务器

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" 
      maxThreads="150" scheme="https" secure="true" 
      clientAuth="false" sslProtocol="TLS" 
      keystoreFile="D:tomcat.keystore" keystorePass="888888" 
      truststoreFile="D:tomcat.keystore" truststorePass="888888" /> 

注意服务端证书名保持一致

属性说明:

    clientAuth:设置是否双向验证,默认为false,设置为true代表双向验证 keystoreFile:服务器证书文件路径 keystorePass:服务器证书密码 truststoreFile:用来验证客户端证书的根证书,此例中就是服务器证书 truststorePass:根证书密码

六、测试

https://localhost:8443/

 

服务器的证书与网址不相符问题需要理解浏览器做了什么:

1、浏览器将自己支持的一套加密规则发送给网站。

2、网站从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给浏览器。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。

3、获得网站证书之后浏览器要做以下工作:

      a)  验证证书的合法性(颁发证书的机构是否合法,证书中包含的网站地址是否与正在访问的地址一致等),如果证书受信任,则浏览器栏里面会显示一个小锁头,否则会给出证书不受信的提示。