You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tomcat配置SSL后出现ERR_CONNECTION_TIMED_OUT问题求助

配置Java+Angular应用SSL时遇ERR_CONNECTION_TIMED_OUT问题

我在为Java+Angular应用配置SSL时,按以下步骤操作后,通过浏览器访问HTTPS出现ERR_CONNECTION_TIMED_OUT错误,但HTTP可正常访问,已排除网络问题。

操作步骤

  1. 生成.jks密钥库及CSR文件
    执行以下命令生成myservername.jks和myservername.csr文件:
keytool -genkey -alias myservername -keyalg RSA -keysize 2048 -keystore myservername.jks -dname "CN=myservername, O=MyOrg, L=, ST=, C=" && keytool -certreq -alias myservername -file myservername.csr -keystore myservername.jks
  1. 验证密钥库初始内容
    执行命令 keytool -list -keystore myservername.jks,输出如下:
myservername, Oct 20, 2023, PrivateKeyEntry,
Certificate fingerprint (SHA-256): xxxxxxxx
  1. 获取并保存服务器证书
    将myservername.csr发送给证书机构,收到返回的证书内容后保存到myservername.cer文件。

  2. 导出根证书与中间证书
    证书链路径为 rootcertname > intermediatecertname > myservername,分别导出根证书rootcertname.cer和中间证书intermediatecertname.cer。

  3. 导入证书到密钥库
    执行以下命令将中间证书和根证书导入密钥库:

keytool -keystore myservername.jks -import -alias intermediate -trustcacerts -file intermediatecertname.cer
keytool -keystore myservername.jks -import -alias root -trustcacerts -file rootcertname.cer

再次执行 keytool -list -keystore myservername.jks,确认密钥库包含私钥、根证书和中间证书。

  1. 配置Tomcat SSL连接器
    将myservername.jks复制到Tomcat的conf目录,修改server.xml中的Connector配置:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           keystoreFile="conf\myservername.jks"
           keystorePass="mypass"
           keystoreType="JKS" />

排查方向

  • 端口监听验证:执行netstat -ano | findstr :8443(Windows)或netstat -tulpn | grep 8443(Linux),确认8443端口是否被Tomcat进程占用。
  • Connector配置修正:
    • 路径使用正斜杠/或双反斜杠\\,避免Windows系统路径解析错误;
    • 替换协议为org.apache.coyote.http11.Http11NioProtocol,提升SSL兼容性;
    • 添加sslEnabledProtocols="TLSv1.2,TLSv1.3"明确指定安全协议版本。
  • 证书链完整性检查:执行keytool -printcert -file myservername.cer,确认服务器证书包含完整链信息;或重新导入服务器证书到myservername别名下:keytool -import -alias myservername -trustcacerts -file myservername.cer -keystore myservername.jks。
  • 本地防火墙放行:确认服务器防火墙允许8443端口的入站连接。
  • Tomcat日志排查:查看logs/catalina.out或localhost.log,检查启动时是否有SSL相关的错误(如密钥库密码错误、证书无效等)。

内容的提问来源于stack exchange,提问作者jkfe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 18:52:37