tomcat+ssl双向认证记录
1.进入%java_home%/bin目录下2.为服务器生成证书
keytool -genkey -alias tomcat -keyalgRSA-keystore D:\tomcat.keystore -validity 365
validity 365 表示有效期天数
3.为客户端生成证书
keytool -genkey -v -alias myKey -keyalg RSA -storetype PKCS12 -keystore d:\client.p12
4.让服务器信任客户端证书,导出客户端证书
keytool -export -alias myKey -keystore d:\client.p12 -storetype PKCS12 -storepass 123456 -rfc -file d:\my.cer
5.文件导入到服务器的证书库,添加为一个信任证书
keytool -import -v -file D:\my.cer -keystore D:\tomcat.keystore -storepass 123456
6.tomcat修改server.xml
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100"maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="D:/tomcat.keystore"
keystorePass="123456"/>
clientAuth指定是否需要验证客户端证书,如果该设置为“false”,则为单向SSL验证,SSL配置可到此结束。如果clientAuth设置为“true”,表示强制双向SSL验证 ,必须验证客户端证书。如果clientAuth设置为“want”,则表示可以验证客户端证书,但如果客户端没有有效证书,也不强制验证。
true是 服务器不会颁发证书必须由客户端导入
页:
[1]