拥有 NAT 对 Web 应用程序的安全性有多重要

How important is to have NAT for security for a Web application

我正在将 AWS 用于 Django Web 应用程序。我配置了一个 public 子网,其中有一个 Web 服务器。与之关联的安全组仅允许端口 443、80、22、123。我有一个私有子网,其中有一个数据库服务器。与其关联的安全组只允许来自其他安全组的 5432。 那么我是否需要配置一个 NAT 实例附加一个 public 地址并且只有私有 IP 用于 Web 服务器?这种设置对安全性或任何其他好处有多大帮助? 这种设置是必须的吗?

仅当您的私有子网中的任何内容需要能够访问互联网时才需要 NAT。

因此,除非出于某种原因您的数据库需要访问 Internet,否则此配置没有问题。例如,如果您偶尔需要对数据库实例应用补丁,您可以简单地按需创建 NAT 实例,更新路由,然后 运行 更新命令。 (如果您 运行ning Amazon Linux,您可以创建一个 S3 VPC 端点,yum update 将通过它提取更新)