参考文章:
1,SSL通信原理及Tomcat SSL双向配置:http://wenku.baidu.com/view/c829f1275901020207409cf5.html?re=view
2.http://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html
第一步:为服务器生成证书
keytool -genkey -v -alias tomcat -keyalg RSA -keystore F:/work/test_tomcat_https/tomcat.keystore -dname "CN=127.0.0.1,OU=风絮,O=风絮,L=昆明,ST=云南,C=CN" -validity 3650 -storepass gavin -keypass gavin
第二步:为客户端生成证书
keytool -genkey -v -alias client -keyalg RSA -storetype PKCS12 -keystore F:/work/test_tomcat_https/client.p12 -dname "CN=client,OU=枫叶,O=枫叶,L=北京,ST=北京,C=CN" -validity 3650 -storepass client -keypass client
第三步:让服务器信任客户端证书
keytool -export -alias client -keystore F:/work/test_tomcat_https/client.p12 -storetype PKCS12 -storepass client -rfc -file F:/work/test_tomcat_https/client.cer
第四步:配置Tomcat服务器
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true"
clientAuth="true" sslProtocol="TLS" keystoreFile="F:/work/test_tomcat_https/tomcat.keystore" keystorePass="gavin"
truststoreFile="F:/work/test_tomcat_https/tomcat.keystore" truststorePass="gavin"/>
第五步:导入客户端证书
keytool -import -alias client -v -file F:/work/test_tomcat_https/client.cer -keystore F:/work/test_tomcat_https/tomcat.keystore -storepass gavin
第六步: 导出服务器证书给客户端
keytool -export -alias tomcat -keystore F:/work/test_tomcat_https/tomcat.keystore -file F:/work/test_tomcat_https/server.cer -storepass gavin
第七步:将导入server.cer,为客户端 创建定制密钥库.
keytool -import -noprompt -trustcacerts -alias clientInvokeServer -file F:/work/test_tomcat_https/server.cer -keystore F:/work/test_tomcat_https/clientInvokeServer.keystore -storepass testpass
第八步:测试访问:https://127.0.0.1:8443