- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很难弄清楚如何为我的 LoadBalancer 设置正确的安全组规则。我制作了一个图表来尝试说明这个问题,请看下图:
我有一个面向 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/
我是一名优秀的程序员,十分优秀!