tomcat 双向认证
1.CA证书
创建CA的私钥
openssl genrsa -des3 -out ca/ca.key 1024
创建CA证书
openssl req -new -x509 -key ca/ca.key -out ca/ca.crt -days 365
1.server端
创建server端的私钥
openssl genrsa -des3 -out server/server.key 1024
创建server证书签名请求
openssl req -new -key server/server.key -out server/server.csr
CA签署server证书
openssl x509 -req -days 30 -in server/server.csr -CA ca/ca.crt -CAkey ca/ca.key -CAcreateserial -out server/server.crt
创建server端的pkcs12文件
openssl pkcs12 -export -in server/server.crt -inkey server/server.key -out server/server.p12 -name tomcat_server
转换pkcs12为JKS keystore文件
./keytool -importkeystore -v -srckeystore /home/nick/nickca/server/server.p12 -srcstoretype pkcs12 -srcstorepass 123456 -destkeystore /home/nick/nickca/tomcat.jks -deststoretype jks -deststorepass 123456
3.client端
创建client端的私钥
openssl req -new -newkey rsa:1024-nodes -out client/client.req -keyout client/client.key
创建client端证书签名请求
openssl x509 -CA ca/ca.crt -CAkey ca/ca.key -CAserial ca/ca.srl -req -in client/client.req -out client/client.pem -days 365
创建client端的pkcs12文件
openssl pkcs12 -export -clcerts -in client/client.pem -inkey client/client.key -out client/client.p12 -name tomcat_client
创建client端的jks文件
./keytool -importkeystore -v -srckeystore /home/nick/nickca/client/client.p12 -srcstoretype pkcs12 -srcstorepass 123456 -destkeystore /home/nick/nickca/client.jks -deststoretype jks -deststorepass 123456
创建信任密钥库
./keytool -genkey -alias dummy -keyalg RSA -keystore /home/nick/nickca/truststore.jks
将CA认证过的证书导入信任库
./keytool -import -v -trustcacerts -alias my_ca -file /home/nick/nickca/ca/ca.crt -keystore /home/nick/nickca/truststore.jks
4.完成之后把ca/ca.crt证书安装到受信任的认证机构中,client/client.p12安装到个人浏览器中。
配置tomcat中conf/server.xml文件,找到被注释掉的8443端口的地方,去掉注释,替换成:
<Connector port="8443" protocol="HTTP/1.1"SSLEnabled="true"
maxThreads="150" scheme="https"secure="true"
clientAuth="true"sslProtocol="TLS"
keystoreFile="C:\test\tomcat.jks"
truststoreFile="C:\test\truststore.jks"
keystorePass="123456"truststorePass="123456"/>
启动tomcat,打开网页https://localhost:8443/
参考
http://blog.csdn.net/yueshengxiao/article/details/6826876
- TOMCAT-SSL双向认证-配置实例
- 用Tomcat服务器配置https双向认证过程实战
- Java Tomcat SSL 服务端/客户端双向认证
- Java Tomcat SSL 服务端/客户端双向认证(一)
- 从http到https简介,tomcat和nginx的https配置,单向认证和双向认证简介,对称加密和非对称加密简介,RSA算法简介
- Java Tomcat SSL 服务端/客户端双向认证
- tomcat/weblogic/websphere中配置HTTPS双向认证
- IOS Android Tomcat SSL双向认证HTTPS访问
- Tomcat下HTTPS双向认证配置以及客户端调用案例
- Java Tomcat SSL 服务端/客户端双向认证(一)
- Ubuntu Tomcat8.5 openssl构建单双向https认证
- tomcat/nginx及阿里云slb做双向认证
- SSL双向认证Java实现 Tomcat篇
- tomcat实现SSL单、双向认证 学习笔记(1)单向认证
- Java Tomcat SSL 服务端/客户端双向认证(二)
- tomcat_ssl环境配置实现单向和双向认证
- tomcat https双向认证
- Tomcat配置SSL双向认证
- Java Tomcat SSL 服务端/客户端双向认证(一)
- keytool+tomcat配置https双向证书认证