更新网络负载均衡器的安全组 - Elastic Load Balancing

更新网络负载均衡器的安全组

您可以将安全组与网络负载均衡器关联,以控制允许到达和离开网络负载均衡器的流量。您可以指定允许入站流量的端口、协议和来源,以及允许出站流量的端口、协议和目的地。如果您没有为网络负载均衡器分配安全组,则所有客户端流量都可以到达网络负载均衡器侦听器,并且所有流量都可以离开网络负载均衡器。

您可以向与目标关联的安全组添加规则,该规则引用与网络负载均衡器关联的安全组。这允许客户端通过网络负载均衡器向目标发送流量,但不会将流量直接发送到您的目标。在与目标关联的安全组中引用与网络负载均衡器关联的安全组,可确保即使对网络负载均衡器启用了客户端 IP 保留,目标也能接受来自网络负载均衡器的流量。

您无需为入站安全组规则阻止的流量付费。

注意事项

  • 在创建网络负载均衡器时,您可以将安全组与网络负载均衡器相关联。如果您在创建网络负载均衡器时未关联任何安全组,则以后也无法将其与网络负载均衡器关联。我们建议您在创建网络负载均衡器时,将安全组与网络负载均衡器相关联。

  • 创建网络负载均衡器并关联安全组后,您可以随时更改与网络负载均衡器关联的安全组。

  • 运行状况检查受出站规则的约束,但不受入站规则的约束。您必须确保出站规则不会阻止运行状况检查流量。否则,网络负载均衡器会认为目标运行状况不佳。

  • 您可以控制 PrivateLink 流量是否受入站规则的约束。如果您对 PrivateLink 流量启用入站规则,则流量的来源是客户端的私有 IP 地址,而不是端点接口。

与网络负载均衡器关联的安全组中的以下入站规仅允许来自指定地址范围的流量。如果这是内部网络负载均衡器,则可以指定 VPC CIDR 范围作为来源,以仅允许来自特定 VPC 的流量。如果这是面向互联网的网络负载均衡器,其必须接受来自互联网任何位置的流量,则可以指定 0.0.0.0/0 作为来源。

入站
协议 来源 端口范围 Comment
protocol 客户端 IP 地址范围 侦听器端口 在侦听器端口上允许来自源 CIDR 的入站流量
ICMP 0.0.0.0/0 全部 允许入站 ICMP 流量,以支持 MTU 或路径 MTU 发现 †

† 有关更多信息,请参阅《Amazon EC2 用户指南》中的路径 MTU 发现

出站
协议 目标 端口范围 Comment
全部 Anywhere 全部 允许所有出站流量

假设您的网络负载均衡器有安全组 sg-111112222233333。在与目标实例关联的安全组中使用以下规则,确保它们仅接受来自网络负载均衡器的流量。您必须确保目标在目标端口和运行状况检查端口上都接受来自网络负载均衡器的流量。有关更多信息,请参阅 目标安全组

入站
协议 来源 端口范围 Comment
protocol sg-111112222233333 目标端口 在目标端口上允许来自网络负载均衡器的入站流量
protocol sg-111112222233333 运行状况检查 在运行状况检查端口上允许来自网络负载均衡器的入站流量
出站
协议 目标 端口范围 Comment
全部 Anywhere 任何 允许所有出站流量

更新关联的安全组

如果您在创建网络负载均衡器时,将至少一个安全组与该网络负载均衡器关联,则可以随时更新该网络负载均衡器的安全组。

Console
要更新安全组
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格上的 Load Balancing(负载均衡)下,选择 Load Balancers(负载均衡器)。

  3. 选择网络负载均衡器。

  4. 安全性选项卡上,选择编辑

  5. 要将一个安全组与网络负载均衡器关联,请选择此安全组。要从网络负载均衡器中移除一个安全组,请清除该安全组。

  6. 选择保存更改

AWS CLI
要更新安全组

使用 set-security-groups 命令。

aws elbv2 set-security-groups \ --load-balancer-arn load-balancer-arn \ --security-groups sg-1234567890abcdef0 sg-0abcdef0123456789
CloudFormation
要更新安全组

更新 AWS::ElasticLoadBalancingV2::LoadBalancer 资源。

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup - !Ref myNewSecurityGroup

更新安全设置

默认情况下,我们将入站安全组规则应用于发送到网络负载均衡器的所有流量。但是,您可能不想将这些规则应用于通过 AWS PrivateLink 发送到网络负载均衡器的流量,这可能源于重叠的 IP 地址。在这种情况下,您可以配置网络负载均衡器,这样我们便不会针对通过 AWS PrivateLink 发送到网络负载均衡器的流量应用入站规则。

Console
要更新安全设置
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格上的 Load Balancing(负载均衡)下,选择 Load Balancers(负载均衡器)。

  3. 选择网络负载均衡器。

  4. 安全性选项卡上,选择编辑

  5. 安全设置下,清除对 PrivateLink 流量强制执行入站规则

  6. 选择保存更改

AWS CLI
要更新安全设置

使用 set-security-groups 命令。

aws elbv2 set-security-groups \ --load-balancer-arn load-balancer-arn \ --enforce-security-group-inbound-rules-on-private-link-traffic off
CloudFormation
要更新安全设置

更新 AWS::ElasticLoadBalancingV2::LoadBalancer 资源。

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic: off Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup

监控网络负载均衡器安全组

使用 SecurityGroupBlockedFlowCount_InboundSecurityGroupBlockedFlowCount_Outbound CloudWatch 指标来监控网络负载均衡器安全组阻止的流量数量。被阻止的流量未反映在其他指标中。有关更多信息,请参阅 网络负载均衡器的 CloudWatch 指标

使用 VPC 流日志来监控网络负载均衡器安全组接受或拒绝的流量。有关更多信息,请参阅 Amazon VPC 用户指南中的 VPC 流日志