【问题标题】:TLS connection through proxy通过代理的 TLS 连接
【发布时间】:2014-01-29 14:53:03
【问题描述】:

我们希望在我们公司代理后面的 node.js 客户端和互联网中的 node.js 服务器(我们也可以控制)之间建立 TLS 加密连接。

我对这个问题感到困惑,我们如何通过代理保持基于证书的安全方法与 TLS?

【问题讨论】:

    标签: node.js ssl proxy certificate


    【解决方案1】:

    TLS 代理是透明的。客户端发送一个 CONNECT 请求,其中包含目标主机名和端口,然后代理创建一个到该主机的新 TCP 连接,之后除了在客户端和服务器连接之间移动数据包之外什么都不做。

    所以从客户端的角度来看,客户端从代理中获取的证书就是服务器发送的字节数。

    在服务器端,您将看到的 IP 是代理的 IP,而不是客户端的 IP。所以你不应该在客户端使用 server 证书,因为证书中的 CN 和 IP / 反向查找的主机名不匹配。但是,如果您使用客户端证书,代理将再次将其传递给服务器而不进行任何修改 - 因此,如果您在服务器上执行一些“此客户端证书是否由我信任的 CA 签名”检查,一切都会正常工作。

    【讨论】:

      猜你喜欢
      • 2016-06-20
      • 2023-02-14
      • 2015-09-13
      • 2020-09-05
      • 2011-04-17
      • 2017-12-18
      • 1970-01-01
      • 2010-12-28
      相关资源
      最近更新 更多