创建证书
使用JDK自带的keytool工具生成证书
命令为:keytool -genkey -keyalg RSA -dname "cn=192.168.10.78,ou=xxx,o=xxx,l=GZ,st=GD,c=CN" -alias server -keypass 123456 -keystore E:/cer/server.jks -storepass 123456 -validity 36这时会在E:/cer/目录下生成一个文件名为server.jks的文件
导出证书
命令为:keytool -export -alias server -keystore E:/cer/server.jks -file E:/cer/server.cer -storepass 123456在E:/cer/目录下生成server.cer 文件
将server.jks 转换成PKCS12
命令为:keytool -importkeystore -srckeystore E:/cer/server.jks -destkeystore E:/cer/server.p12 -srcstoretype JKS -deststoretype PKCS12生成server.key
命令:openssl pkcs12 -in E:/cer/server.p12 -out E:/cer/server.key -nodes
tomcat server.xml配置
在server.xml中修改为如下<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol"
address="0.0.0.0"
maxThreads="150" SSLEnabled="true" clientAuth="false"
scheme="https" secure="true" sslProtocol="TLSv1+TLSv1.1+TLSv1.2"
SSLCertificateFile="E:/cer/server.cer"
SSLCertificateKeyFile="E:/cer/server.key"
SSLVerifyClient="optional">
</Connector>访问http时自动跳转到https
修改tomcat conf目录下的web.xml文件,在<welcome-file-list>上面加入如下的代码:
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
注意:本文归作者所有,未经作者允许,不得转载