0

我有一个想要向世界开放的 Web 应用程序。我应该简单地创建公共子网并将此实例添加到其中还是应该创建私有子网、NAT、负载均衡器并将此实例添加到其中?

我希望这个应用程序只能被某些 IP 访问。

你推荐哪种方式,为什么?哪种方式最安全,也最划算?

4

2 回答 2

1

我会推荐私有子网中的实例,因为这是在私有子网中启动实例并将 LB 放在实例顶部的安全方法。

  • 这种方法的最大优势是您的实例是安全的,并且无法从公众访问。

具有私有实例的高级外观或一般示例可以是

在此处输入图像描述 要访问您的私有实例,您应该在公有子网中有一个实例,您可以从中访问该实例,通常 AWS 将其称为堡垒。

在此处输入图像描述

使用公共和私有子网与网络 acl 保护您的 vpc

于 2019-11-27T10:26:09.783 回答
0

如果您只有一个实例:

  • 不需要负载均衡器,因为不需要平衡流量
  • 不需要 Private Subnet ,但它需要可公开访问
  • 使用安全组来限制对应该可访问的最小端口的访问(例如端口 80、443)以及登录的能力(但仅限于您的IP 地址)

如果您有多个实例,则需要负载均衡器。在这个情况下:

  • 将负载均衡器放在公共子网中
  • 将实例放在私有子网中以提高安全性

但是,您实际上可以将所有内容保存在公共子网中,并且仅使用安全组来控制访问。安全性的正常目标是多层安全性使事情更安全。但是,设计选择取决于您。

于 2019-11-28T06:07:48.090 回答