如何禁止 AWS VPC 默认安全组中的入站或出站流量

问题描述 投票:0回答:1

我正在尝试禁用来自默认安全组的入站和出站流量,我已经使用

restrictDefaultSecurityGroup: true
为自定义创建的 VPC 执行了此操作,但我发现另一个与我的默认 VPC 相关的默认 VPC 安全组,我尝试过使用下面的代码访问它,但这似乎无法访问默认安全组,任何建议都会有帮助,我正在尝试使用 cdk 而不是 AWS 云控制台来实现此目的。

this.disableDefaultVpcTrafficSg = new ec2.SecurityGroup(this, 'DisableDefaultVpcTrafficSg', {
  vpc: ec2.Vpc.fromLookup(this, 'DefaultVPC', { isDefault: true }),
  allowAllOutbound: false,
});
amazon-web-services aws-security-group
1个回答
0
投票

不幸的是,您无法完全阻止 AWS VPC 默认安全组中的入站或出站流量,因为它默认允许所有出站流量。但是,您可以通过实施策略组合来实现接近于零的流量状态:

1.限制出站流量:

修改默认出站规则:默认规则允许所有流量到达 0.0.0.0/0(对于 IPv4)和 ::/0(对于 IPv6)。编辑此规则以将出站流量限制到应用程序运行所需的特定 IP 地址或端口。 创建自定义安全组:不使用默认安全组,而是为您的实例创建自定义安全组并默认拒绝所有出站流量。仅针对授权的目的地和端口添加特定的出站规则。

2.拒绝入站流量:

使用网络访问控制列表 (ACL):您可以配置 ACL 以拒绝子网或 VPC 的所有入站流量。此选项可能比使用安全组更具限制性,因此请确保您了解其对网络拓扑的影响。 拒绝安全组规则中的所有入站流量:为您的实例创建安全组,并默认拒绝所有入站流量。仅允许应用程序运行所需的授权源 IP 地址、端口和协议的特定入站规则。

3.监控和记录:

启用流量监控:监控网络流量以识别任何未经授权的尝试访问您的实例的行为。这可以帮助您识别潜在的安全风险并采取纠正措施。 记录所有入站和出站流量:为安全组和网络接口启用日志记录以捕获有关网络活动的详细信息。这可以帮助您解决任何问题并识别不需要的流量的来源。 其他注意事项:

有状态:安全组是有状态的,这意味着如果您允许特定端口和协议的入站流量,则即使不存在显式入站规则,也会自动允许该连接的返回流量。 安全影响:完全禁用入站和出站流量可能会严重限制应用程序的功能,并且对于大多数情况来说可能不可行。在实施此类限制之前,请仔细评估您的要求和安全需求。 通过实施这些策略,您可以显着减少 AWS VPC 中的入站和出站流量,并实现资源的高级别安全性。请记住根据需要不断监控和调整您的安全配置,以确保您的网络保持安全。

© www.soinside.com 2019 - 2024. All rights reserved.