- 先生成证书文件
keytool -genkey -alias tomcat -keyalg RSA -keypass 123456 -storepass 123456 -keystore tomcat-https-server.keystore -validity 36500
chmod u+x tomcat-https-server.keystore
生成证书文件说明:
证书密码:123456
证书文件:tomcat-https-server.keystore, 在当前目录下
证书有效期:36500 即 100年
- 编辑tomcat下的server.xml
修改为
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="443" URIEncoding="UTF-8" />
# 2. 修改8443端口配置,特别重要:
# 把注释打开,8443端口改成 443, 因为https默认端口是443,
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150"
scheme="https" secure="true" clientAuth="false" sslProtocol="TLS"
keystoreFile="/app/tomcat-8.5.39/server.keystore"
URIEncoding="UTF-8"
keystorePass="AAyxl123"/>
- 设置将http强制请求转为https
vim web.xml在最后添加
<!--强制使用https,http请求会自动转为https-->
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<!--配置网站支持https,/* 表示全部请求都走https, transport-guarantee 标签设置为 CONFIDENTIAL 以便使应用支持 SSL。
如果需要关闭 SSL ,将 CONFIDENTIAL 改为 NONE 即可-->
<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>