保存我的如下命令到 genkey.sh
echo '生成服务器证书'
keytool -genkey -v -alias tomcat -keyalg RSA -keystore server.keystore -validity 36500
echo '生成客户端证书'
keytool -genkey -v -alias mykey -keyalg RSA -storetype PKCS12 -keystore client.p12 -validity 36500
echo '生成客户端p12证书信任文件'
keytool -export -alias mykey -keystore client.p12 -storetype PKCS12 -storepass 123456 -rfc -file client.cer
echo '导入到服务端keystore中'
keytool -import -v -file client.cer -keystore server.keystore
运行
sh genkey.sh
接下来会提示 输入密钥库口令: 我自己写为123456
其他的一律回车.默认即可
当提示如下时, 输入Y
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown是否正确?
[否]:
运行完毕. 目录下会生成如下文件
server.keystore 服务器证书
client.p12 客户端证书
client.cer 没多大用的文件
将 server.keystore 复制到tomcat 的conf文件夹下
修改 server.xml文件 重启tomcat
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true" clientAuth="false"
keystoreFile="conf/tomcat.keystore" keystorePass='123456' sslProtocol="TLS" />
clientAuth 是否开启客户端证书验证(双向认证) true 开启, false关闭
如果clientAuth 为 true. 那么客户端必须要有 client.p12文件才能访问tomcat服务器