Java Tomcat中SSL配置步骤如下:
生成SSL证书
使用JDK的keytool生成自签名证书(测试用)或从CA获取正式证书,命令示例:
keytool -genkey -alias tomcat -keyalg RSA -keystore /path/to/keystore.jks -validity 365
(需指定别名、密钥库路径、密码等信息)。
配置Tomcat的server.xml
在conf/server.xml中添加或修改<Connector>标签,关键属性包括:
port:HTTPS端口(默认443)。protocol:协议类型(如HTTP/1.1或org.apache.coyote.http11.Http11NioProtocol)。SSLEnabled:设为true启用SSL。keystoreFile:密钥库文件路径。keystorePass:密钥库密码。sslProtocol指定TLS版本(如TLSv1.2,TLSv1.3),ciphers指定加密套件。<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/path/to/keystore.jks" keystorePass="your_password"
sslProtocol="TLS" ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_128_GCM_SHA256" />
(可选)配置HTTP到HTTPS重定向
在conf/web.xml中添加<security-constraint>,强制跳转HTTPS:
<security-constraint>
<web-resource-collection>
<web-resource-name>Secure Area</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
重启Tomcat
保存配置后,重启Tomcat使生效:
./bin/shutdown.sh && ./bin/startup.shcatalina.bat stop && catalina.bat start。验证配置
通过浏览器访问https://yourdomain:port/,检查是否显示安全锁图标,且无证书错误。
注意:生产环境建议使用CA颁发的证书,并定期更新密钥库和证书。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。