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

如何排查Chromium内核浏览器访问Oracle APEX站点出现ERR_CONNECTION_RESET故障

问题根因

该问题由以下几个叠加因素触发:

  1. Windows Server 2016 原生Schannel组件对通配符证书的TLS握手响应打包逻辑存在缺陷,包含完整证书链的通配符证书响应包大小会超出部分Chromium内核版本的默认接收阈值,触发连接重置
  2. Chromium内核针对通配符证书的CT(证书透明度)校验规则远严格于Firefox、IE,部分通配符证书未携带完整SCT(签名证书时间戳)时,Chromium会主动断开连接
  3. 旧版本Tomcat在Windows平台下的SSL Connector对SNI扩展的响应逻辑存在bug,会给部分未携带SNI扩展或者SNI匹配规则异常的Chromium客户端返回错误的握手响应,触发连接重置

之前测试启用Fiddler后访问正常,是因为Fiddler会替换站点证书、拆分TLS响应包,刚好规避了上述问题;替换为单域名证书后恢复正常,是因为单域名证书的响应包大小远小于通配符证书,不会触发大小阈值校验,且单域名证书的CT校验规则更宽松。


修复方案

  • 优先升级Tomcat到对应分支的最新稳定版:Tomcat 8.5.x升级到8.5.85+,Tomcat 9.x升级到9.0.70+,Tomcat 10.x升级到10.1.5+,旧版本的SSL Connector存在多个和通配符证书、Windows Schannel适配相关的已知bug
  • 调整Tomcat的SSL Connector配置,修改conf/server.xml中对应SSL端口的配置项:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true">
    <SSLHostConfig sslProtocol="TLSv1.2"
                   sendCertChainSct="true"
                   maxSslRecordSize="1400">
        <Certificate certificateKeystoreFile="你的通配符证书keystore路径"
                     certificateKeystorePassword="你的keystore密码"
                     type="RSA" />
    </SSLHostConfig>
</Connector>

核心新增参数说明:

  • sendCertChainSct="true":强制Tomcat下发证书附带的SCT信息,满足Chromium的CT校验要求(需Tomcat 9.0.38+/8.5.58+版本支持)
  • maxSslRecordSize="1400":降低TLS记录最大大小,避免大包触发Chromium的接收阈值,同时兼容各类网络中间设备的MTU限制
  • 如果上述配置调整后仍存在问题,可以将Tomcat的SSL实现从默认的JSSE切换到OpenSSL实现,Windows平台下可以通过安装Tomcat Native组件启用OpenSSL,OpenSSL对通配符证书的打包逻辑和Windows Schannel不同,可规避原生系统组件的缺陷

验证方式

调整配置重启Tomcat后,使用之前无法访问的Chromium内核浏览器清理缓存后访问即可验证效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 18:54:03