gpt4 book ai didi

amazon-web-services - 如何为内部和外部请求配置面向 AWS 互联网的 ELB 安全组

转载 作者:行者123 更新时间:2023-12-02 03:06:57 25 4
gpt4 key购买 nike

我很难弄清楚如何为我的 LoadBalancer 设置正确的安全组规则。我制作了一个图表来尝试说明这个问题,请看下图:

Our ECS setup

我有一个面向 Internet 的负载均衡器(图中的“服务 A LoadBalancer”),它是从“内部”和我们的一项 ECS 服务(图中的“任务 B”)请求的。对于内部请求,我可以为“Service A LoadBalancer”配置一个 SecurityGroup 规则,允许从我们内部 IP 的 CIDR 向端口 80 上的 LoadBalancer 发出传入请求。没问题。但是对于其他 ECS 服务,任务 B,我将如何添加一个只允许来自任务 B 的请求的规则(对于图中的“服务 A 安全组”)? (或仅来自 ECS 集群中的任务)。由于它是一个面向互联网的负载均衡器,请求是从机器 EC2 的公共(public) ip 发出的,而不是私有(private)的(据我所知?)。

我显然可以制定一条规则,允许来自 0.0.0.0/0 的端口 80 上的请求,这会起作用,但限制还远远不够。由于它是面向 Internet 的 LoadBalancer,添加允许来自“Cluster SecurityGroup”(图中)的请求的规则不会削减它。我认为这是因为 LB 无法推断请求源自哪个 SecurityGroup,因为它是面向 Internet 的 - 如果它是内部 LoadBalancer,这将起作用。但是我不能使用内部 LoadBalancer,因为它也是从 AWS 外部(内部)请求的。

如有任何帮助,我们将不胜感激。

谢谢弗雷德里克

最佳答案

我们通过运行单独的面向互联网的负载均衡器和内部负载均衡器来解决这个问题。对于同一个集群,您可以有多个 ELB 或 ALB (ELBv2)。假设您的 ECS 集群在 10.X.X.X 等 IP 范围内运行,您可以打开 10.X.0.0/16 以在内部 ELB 上进行内部访问。只要确保 ECS 集群 SG 也对 ELB 开放即可。假设您在发出请求时使用内部 ELB 地址的 DNS,任务 B 可以通过内部 ELB 地址到达任务 A。如果您访问公共(public) DNS 的 IP,它将始终是一个公共(public)请求。

但是,您可能需要从长远考虑是否真的需要公共(public) ELB。除了 IP 限制,下一步通常是运行 VPN,例如 openVPN,这样您就可以连接到 VPC 并访问专用网络上的所有内容。如果我们真的想要在互联网上为外部客户提供某些东西,我们通常只会运行面向互联网的 ELB。

关于amazon-web-services - 如何为内部和外部请求配置面向 AWS 互联网的 ELB 安全组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42087480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com