HTTPS开发(SSL--用Tomcat服务器配置https双向认证)
准备工作:
1、windows+R cmd 打开命令窗口
2、输入:cd C:\Program Files\Java\jdk1.7.0_80\bin 进入路径找到keytool工具
为服务器生成证书:
1、keytool -genkey -v -alias tomcat -keyalg RSA -keystore F:\baidu\keystore\tomcat.keystore -validity 36500
“-validity 36500”含义是证书有效期,36500表示100年,默认值是90天;
为客户端生成证书:
keytool -genkey -v -alias mykey -keyalg RSA -storetype PKCS12 -keystore F:\baidu\keystore\client.key.p12
安装客户端证书
双击客户端证书“client.key.p12”完成导入证书
让服务器信任客户端证书
将客户端证书导出为一个单独的CER文件
keytool -export -alias mykey -keystore F:\baidu\keystore\client.key.p12 -storetype PKCS12 -storepass password -rfc -file F:\baidu\keystore\client.key.cer
注:password为客户端证书的密码
将CER文件导入到服务器的证书库
keytool -import -v -file F:\baidu\keystore\client.key.cer -keystore F:\baidu\keystore\tomcat.keystore
让客户端信任服务器证书
1、把服务器证书导出为CER文件
keytool -keystore F:\baidu\keystore\\tomcat.keystore -export -alias tomcat -file F:\baidu\keystore\tomcat.cer
2、在客户端安装服务器证书
双击“tomcat.cer”,按照提示安装证书
配置Tomcat服务器
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="F:\baidu\keystore\\tomcat.keystore" keystorePass="******" truststoreFile="F:\baidu\keystore\\tomcat.keystore" truststorePass="******" />
测试
https://localhost:8443/