具有 NAT 的私有 VPC 与具有防火墙规则的公共 VPC 的优势(在 AWS 中)

具有 NAT 的私有 VPC 与具有防火墙规则的公共 VPC 的优势(在 AWS 中)

假设您有一些由负载均衡器 (ELB) 支撑的 EC2 服务器。

假设它们位于公共 VPC 中 - 即每个 EC2 实例都有一个公共 IP 地址,并且每个实例都使用安全组 (SG) 进行防火墙保护,因此只有 ELB 可以直接访问这些实例。

假设服务器需要传出的公共互联网访问。

我们知道AWS 推荐的方法而是使用私有 VPC + NAT 来提高安全性。

但是,与上述做法相比,这样做有什么实际好处呢?

据我了解,由于 SG 规则,在上述场景中没有人可以直接连接到实例,而且由于这是在 AWS 基础设施中处理的,因此我们的服务器不会因连接泛滥而陷入瘫痪 - 数据包永远不会到达我们。

那么,如果 AWS 防火墙将你关闭,那么拥有公共 IP 地址有什么害处呢?

我是否错过了私有 VPC 的其他好处?我上面的某个断言是错误的吗?

答案1

这其实是“纵深防御”概念的问题。使用公共地址,您完全依赖安全组配置来保护您的服务器 - 确保配置正确,确保没有人意外修改它,等等。

您可以反过来问自己,既然私人地址就足够了,为什么还需要公共地址?

答案2

我想说私有 VPC + NAT 选项具有较少的管理开销,并且由于错误(例如未分配 SG 或一些相当开放的规则)而导致访问保持开放的可能性较小。

此外,在不了解平台内部结构的情况下,我可以做出有根据的猜测,认为 VPC + NAT 可以更好地利用平台资源。如果您有公共 IP,则将被拒绝的入站流量可能必须穿越 AWS 网络到达您的虚拟机。如果您没有公共 IP,则不会有入站流量进入您的虚拟机 :)

相关内容