如何将aws VPC列入远程服务白名单

how to whitelist aws VPC to remote service

我已经创建了一个带有 public 和私有子网的 VPC。在路由 table 中设置互联网网关和 nat 网关。我正在使用一些需要将 IP 列入白名单才能访问其 API 的第三方 api 服务。 我的问题是可以将我的 VPC 列入他们的 API 白名单吗?

取决于您所说的 IP 白名单是什么意思。他们可以将您的多少 IP 地址列入白名单?您计划启动多少个 EC2 实例?您是要手动启动这些 EC2 实例还是它们是 auto-scaling 组的一部分?

如果您要有几个手动启动的 EC2 实例,那么您可以为每个实例分配弹性 IP 地址,告诉第 3 方将这些弹性 IP 列入白名单,如果您的 EC2 实例失败,只需重新映射弹性 IP到另一个实例 - 更换。这当然只有在您计划在 public 子网中启动 EC2 实例时才适用。

如果您要有许多 EC2 实例,手动或通过 auto-scaling 组启动,那么您将必须通过 NAT 网关(或 NAT 实例,或某些自定义代理,但想法保持不变)与分配的弹性 IP 地址,并告诉他们将该弹性 IP 列入白名单附加到 NAT 网关(为了高可用性,您可能希望在多个 AZ 中使用多个 NAT 网关,每个 NAT 网关都具有弹性 IP)。

这里要注意的一件事是,您需要将 EC2 实例和 NAT 网关放在不同的子网中,因为您至少需要 2 个路由表。一个用于 NAT 网关的子网,条目为互联网网关 0.0.0.0/0 -> IGW,另一个用于您的 EC2 实例所在的子网,条目为 0.0.0.0/0 -> NAT Gateway。这适用于 public 和私有实例。