You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法结合GWLB终端节点(Palo Alto云NGFW)使用AWS安全组

解决方案:ECS安全组引用ALB安全组失效问题处理

问题根源

流量经过Palo Alto Cloud NGFW后,最终到达ECS容器的数据包源IP已发生变化:要么是NGFW的IP(开启SNAT时),要么是ALB的节点IP(未开启SNAT时)。而AWS安全组中引用其他安全组作为源的规则,仅对可直接绑定安全组的EC2/ECS类资源生效,ALB作为托管服务,其节点IP并不属于“关联ALB安全组的资源”范畴,因此ECS安全组引用ALB安全组无法匹配实际流量。

可行解决方案

方案1:将NGFW的安全组作为ECS安全组的入站源

这是最直接且可靠的方案——因为流量最终由NGFW转发至ECS,只需允许NGFW安全组的入站流量即可,无需依赖ALB的IP或安全组。

CloudFormation配置示例:

# ECS容器安全组,允许来自NGFW安全组的流量
ECSSecurityGroup:
  Type: AWS::EC2::SecurityGroup
  Properties:
    GroupDescription: ECS Container Security Group
    VpcId: !Ref VPC
    SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: 80
        ToPort: 80
        SourceSecurityGroupId: !Ref PaloAltoNGFWSecurityGroup
      # 按需添加其他端口规则

# ALB安全组,允许出站到NGFW安全组
ALBSecurityGroup:
  Type: AWS::EC2::SecurityGroup
  Properties:
    GroupDescription: ALB Security Group
    VpcId: !Ref VPC
    SecurityGroupEgress:
      - IpProtocol: tcp
        FromPort: 80
        ToPort: 80
        DestinationSecurityGroupId: !Ref PaloAltoNGFWSecurityGroup

# NGFW安全组,允许入站来自ALB安全组的流量
PaloAltoNGFWSecurityGroup:
  Type: AWS::EC2::SecurityGroup
  Properties:
    GroupDescription: Palo Alto NGFW Security Group
    VpcId: !Ref VPC
    SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: 80
        ToPort: 80
        SourceSecurityGroupId: !Ref ALBSecurityGroup

方案2:使用前缀列表关联ALB所在子网(仅适用于内部ALB)

若使用的是内部ALB,其IP来自VPC私有子网,可在CloudFormation中创建前缀列表关联子网CIDR,将其作为ECS安全组的入站源。此方案避免硬编码IP,且子网CIDR固定不变。

CloudFormation配置示例:

# 创建前缀列表,包含ALB所在子网的CIDR
ALBPrefixList:
  Type: AWS::EC2::PrefixList
  Properties:
    PrefixListName: ALB-Subnet-Range
    AddressFamily: IPv4
    MaxEntries: 10
    Entries:
      - Cidr: !Select [0, !Ref ALBSubnets]
      - Cidr: !Select [1, !Ref ALBSubnets]

# ECS安全组允许前缀列表的流量
ECSSecurityGroup:
  Type: AWS::EC2::SecurityGroup
  Properties:
    GroupDescription: ECS Container Security Group
    VpcId: !Ref VPC
    SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: 80
        ToPort: 80
        SourcePrefixListId: !Ref ALBPrefixList

方案3:开启NGFW源IP保留(复杂度较高)

若Palo Alto NGFW支持保留ALB节点IP,可开启该功能,此时到达ECS的源IP为ALB节点IP。再通过CloudFormation的Fn::GetAtt获取ALB的ENI IP并添加至安全组,但需注意ALB的ENI数量可能随流量动态变化,需额外处理多ENI场景,推荐仅在特殊需求下使用。


内容的提问来源于stack exchange,提问作者Skinkpajen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 02:50:27