使用 TCP TLS 到 Nginx 的 AWS 经典负载均衡器

Posted

技术标签:

【中文标题】使用 TCP TLS 到 Nginx 的 AWS 经典负载均衡器【英文标题】:AWS Classic Load Balancer with TCP TLS to Nginx 【发布时间】:2018-12-11 03:24:30 【问题描述】:

我有一个为 TCP 负载平衡配置的经典 ELB。 它接受端口 443 上的连接并将请求转发到 ec2 的端口 443,在那里我有 nginx 监听 Tcp 连接。我已经为传入和传出请求配置了 TLS 连接。 我最初的意图是创建通过 TCP-TLS 通信的传递。 我有两个问题。

1) 如果这应该通过 TLS 流量,那么为什么 ELB 会强制我安装 TLS 证书? 2)好的,我已经在负载均衡器上安装了 ELB 证书,在 Nginx 上安装了另一个证书来终止 TLS。沟通将如何进行? 如果客户端向ELB发送TCP流,ELB会先解密数据,然后再用Nginx证书加密数据吗? 我之所以问这个问题是因为我在客户端收到 TCP 重置错误,并且数据永远不会到达 Nginx 服务器。

感谢有人帮助我。

谢谢, 马诺吉

【问题讨论】:

【参考方案1】:

如果您想通过 TLS,您不会为 TLS 配置平衡器,因为它用于平衡器内部的卸载或双向终止——本质上与传递完全相反。

您只需为 TCP 配置平衡器。

此外,为您的应用程序推荐的解决方案是使用网络负载均衡器 (NLB),而不是经典的 ELB。

【讨论】:

以上是关于使用 TCP TLS 到 Nginx 的 AWS 经典负载均衡器的主要内容,如果未能解决你的问题,请参考以下文章

AWS,为 RDS 轮换 SSL/TLS 证书

将 ZIP 文件发送到基于 REST 的 API,该 API 使用基于 Flutter 的移动应用程序托管在 AWS 上的 SSL TLS (https)

连接开启传输加密(TLS)的AWS Redis

AWS 网络负载均衡器和 HTTPS 端点 [关闭]

在 Google Talk XMPP TCP 连接上使用 TLS 使用 PHP

如何使用 TLS/SSL 确保套接字连接的安全