首页 文章

AWS实例仅允许来自负载均衡器的流量

提问于
浏览
1

我有一个Load Balancer和Auto-Scaling Group . Load Balancer将流量发送到我的Auto-Scaling组 . 我有两个实例:Instance 7000(正在侦听端口7000并且是自动扩展组的一部分并从负载均衡器获取其流量)和实例8545(正在侦听端口8545并且只是一个单个实例,它是不属于Load Balancer或Auto-Scaling Group) .

我有一个负载均衡器安全组(“LB-SG”)和一个用于实例8545(“App-SG”)的安全组 . 我希望Instance 8545仅允许来自Load Balancer / Auto-Scaling Group一部分的Instances的流量 . 因此,我将“LB-SG”作为“App-SG”的入站规则包含在端口8545上,但它无效 . 但是,如果我只是将端口8545上的Instance 7000的IP地址作为“LB-SG”中的入站规则包含在内,那么它可以很好地工作 . 但这并不能解决我的问题,因为如果Auto-Scaling Group添加了更多实例或IP地址发生了变化,那么它将无法正常工作 .

编辑:为了清晰起见重新编辑

2 回答

  • 2

    您的要求有点不清楚,但这是一般用例......

    如果您希望实例接受来自Load Balancer的流量,则:

    • 为负载均衡器创建安全组("LB-SG")

    • 为您的实例创建安全组("App-SG")

    • 在App-SG中,允许从LB-SG到所需端口的入站流量

    也就是说,App-SG规则通过其唯一名称( sg-abcd1234 )专门引用LB-SG .

    Result: 与App-SG关联的每个实例都将允许来自Load Balancer的入站流量 .

    同样,如果您希望特定实例(Instance-A)接受来自其他实例(Instance-B)的流量,请为每个实例创建不同的安全组,并将规则添加到Instance-A安全组以允许入站流量来自Instance-B安全组的给定端口 .

    无需使用IP地址 .

  • 0

    第二次尝试......

    您应该创建三个安全组:

    负载均衡器

    • LB-SG

    • 允许入站80/443

    • App-SG 用于Auto Scaling组中的实例

    • 允许来自LB-SG的入站7000

    对于8545实例

    • Extra-SG (我不知道该怎么称呼它!)

    • 允许来自App-SG的入站8545

    再一次,不需要引用特定的IP地址 .

    附注:您说"allow traffic from Instances that are part of the Load Balancer / Auto-Scaling Group" - 实例位于Auto Scaling组中,但Load Balancer中没有实例 . 因此,我假设8545实例仅接收来自App-SG(7000)实例的流量 .

    Update: 确保实例通过专用IP地址进行通信 .

相关问题