ALB 支持哪些 TLS 扩展? 特定客户端无法连接到 ALB TLS 端口

0

【以下的问题经过翻译处理】 一个基础支持的客户正在从内部网络通过HTTPS连接ALB,并在发送TLS握手的ClientHello后从ALB接收到TCP RST。而来自特定网络以外的客户可以毫无问题地通过HTTPS连接ALB。

经过比较ssldumps,我们发现来自网络内部的ClientHello包含几个TLS扩展,而来自网络外部的ClientHello不包含TLS扩展。在ClientHello中包括的TLS扩展有:ec_point_formats,supported_groups,SessionTicket,signature_algorithms,和heartbeat。请参见以下ssldump。

另外,客户在测试过程中注意到ClientTLSNegotiationErrorCount的峰值,因此我已要求客户启用ALB的访问日志,以查看服务器端日志是否提供任何见解。

ALB是否支持TLS扩展?如果支持,支持哪些扩展?如果不支持,为什么?

ClientHello:

New TCP connection #1: X.X.X.X(57358) <-> Y.Y.Y.Y(443)
1 1  0.0821 (0.0821)  C>SV3.1(272)  Handshake
      ClientHello
        Version 3.3 
        random[32]=
          ee 55 dd 17 41 98 37 d8 d5 75 04 64 ed 5f 25 31 
          70 6a f8 12 7d c6 52 96 af 7c 33 7e e6 ea 0b f6 
        cipher suites
          (withheld to preserve space)
        compression methods
                  NULL
        extensions
          ec_point_formats
          supported_groups
          SessionTicket
          signature_algorithms
            signature_algorithms[30]=
              06 01 06 02 06 03 05 01 05 02 05 03 04 01 04 02 
              04 03 03 01 03 02 03 03 02 01 02 02 02 03 
          heartbeat
profile picture
专家
已提问 4 个月前22 查看次数
1 回答
0

【以下的回答经过翻译处理】 ClientTLSNegotiationErrorCount 表示客户端向负载均衡器发起的 TLS 连接失败的次数。通常情况下,这是由于客户端和负载均衡器无法达成一致的密码协议组合所导致的。

问题中还有一些细节需要补充:

  1. SSL 客户端使用的是哪种 SSL 版本和密码套件?
  2. 客户端是否看到了任何特定的错误信息?
  3. 内部网络中是否存在 SSL 代理?

我们建议您可以透过下面 openssl s_client 指令测试并进行抓包然后比较可以与不行的客户端是否使用不一样的密码协议组合。 ALB支援的密码协议组合可以在这边查到: https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html `$ openssl s_client -servername example.com -connect example.com:443

profile picture
专家
已回答 4 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则