使用AWS Load Balancer保护Web Socket(wss)

dkn*_*ack 6 amazon-ec2 amazon-web-services elastic-load-balancer

我有一个包含Web套接字服务器的小nodejs应用程序.该应用程序托管在ecs容器内,因此它基本上是在ec2实例上运行的docker镜像.

Web套接字按预期工作ws://.我为此使用端口5000.

为了在我的SSL安全网站(https)上使用它,我需要使用安全的Web套接字连接wss://.

存档我已经在aws上创建了一个证书(之前很多次),并且在我创建了一个负载均衡器之后.

我尝试了一个应用程序负载均衡器,一个网络负载均衡器和经典的负载均衡器(上一代).

我在StackOverflow上阅读了一些答案,并按照说明以及使用谷歌找到的一些教程.

我尝试了很多没有成功.当然,这需要花费很多时间,因为创建负载均衡器和其他资源需要相当多的时间.

我如何在指向我的实例的aws上创建一个负载均衡器wss://.有人可以提供一个例子或说明吗?

小智 0

https://anandhub.wordpress.com/2016/10/06/websocket-ebs/发布的解决方案 似乎运行良好。

不要选择 https 和 http,而是选择端口 443 上的“SSL”和应用程序端口上的“TCP”(例如 5000)

在此输入图像描述

您需要通过 AWS 加载密钥/证书,负载均衡器将处理安全部分。我怀疑您无法通过此方法利用 LB 的“粘性”功能。