AWS beanstalk 应用程序 https 配置不起作用
Posted
技术标签:
【中文标题】AWS beanstalk 应用程序 https 配置不起作用【英文标题】:AWS beanstalk application https config not working 【发布时间】:2020-02-07 02:25:27 【问题描述】:我在 node.js 上运行了一个配置了负载均衡器的 beanstalk 应用程序。
我已成功为负载均衡器配置 https。我希望通过 https 完成负载均衡器和 beanstalk 应用程序之间的通信。
我创建了一个使用端口 443 和协议 HTTPS 的目标组。并配置我的负载均衡器的 https listernet 的规则以将请求转发到上述目标组。但是目标群体的状态总是不健康的。使用端口 80 和协议 http 的目标组工作正常。
有人可以帮我解释它背后的原因以及如何克服它。请注意 - 我的负载均衡器在端口 80 和 443 上分别启用了 http 和 https 侦听器。
【问题讨论】:
显示你的目标组设置和https
的监听器,不健康意味着你在容器端设置443
,在容器端它应该是80
,LB端口应该是443
我尝试将目标组的端口更改为 80。这是从我的 https 侦听器获取默认转发的目标组。仍然没有成功。 LB 的 HTTPS 监听器监听 443 端口。
能否发一下目标人群和听众的截图
imgur.com/AowVBjv -listernet的截图..不得不隐藏敏感信息。
imgur.com/lJWsHov - 目标组中我的目标设置的链接
【参考方案1】:
添加您的图像作为参考,正如您在图像中看到的那样,您设置了目标端口 80,但您已经设置了协议 https
。。 p>
将协议从 https
更改为 http
。
不用担心客户端和LB之间的通信,它会被加密,实例会收到来自LB的解密流量。
这正是我关心的......基本上我们希望我们之间的沟通 负载均衡器和 beanstalk 应用程序使用 https 来保证安全
LB 和 beanstalk 都在本地网络中,因此主要关注的是保护 LB 所做的客户端到服务器的通信。
SSL 在 LB 级别终止。
https-load-balancers
【讨论】:
非常感谢@Adiii。这是完全有道理的。但不幸的是,我的要求之一是 LB 和 EC2 之间的通信必须通过 SSL。 另外,考虑到我之间没有 LB 的情况,我直接点击 Beanstalk URL ..如何使用 SSL 使其安全? 最佳实践是使用 SSL 进行客户端-服务器通信,并在实例和 LB 之间使用 decreytp 流量,否则,在 LB 和 Ec2 之间使用 ssl 会产生额外的开销 "考虑到我中间没有 LB 的情况",那么您需要将 SSL 证书放置在实例本身中,但我不建议这样做。您的最终用户将与 LB 而不是实例进行交互。所以最好遵循上述内容。 即使我同意解密流量的事情..但不幸的是我的要求有点不同。你能指导我如何在 beanstalk 实例中放置证书吗?因为我们的配置没有用于登录 ec2 实例的密钥对。我们似乎必须通过 .ebextension 文件夹来完成它。你能指导我吗?以上是关于AWS beanstalk 应用程序 https 配置不起作用的主要内容,如果未能解决你的问题,请参考以下文章
AWS beanstalk 应用程序 https 配置不起作用
使用 AWS 弹性 beanstalk 负载均衡器在 Rails 上实施 https 连接
在 AWS Elastic Beanstalk 应用程序上启用 HTTPS