如何设置NAT网关与VPN一起使用

0

【以下的问题经过翻译处理】 免责声明:我在这个领域仍然是新手,所以请原谅我可能存在的任何概念错误。

我做的尝试背景是,目前我们有一台内部大型服务器,上面运行着VMWare Workstation Pro和许多虚拟机。此外,我们还有一个硬件VPN。这些VMWare虚拟机仅供内部使用,不能从外部访问,我们只能通过VPN和本地IP连接到它们。

我们现在正试图迁移到AWS。例如,每个VMWare虚拟机都将由一个EC2实例替代。到目前为止,我已经按照指南设置了一个VPN。我可以从我的Mac连接到VPN,一切都运行得很完美(我可以访问每个EC2实例的私有IP等)。此外,我还可以确认,连接到VPN后,我的Mac和EC2实例都可以访问Internet。

然而,为了使这一切工作,我所有的EC2实例都需要具有公有的IPv4地址。但出于安全原因,我不希望这些EC2实例具有公网IP。我不希望外部能够"看到"这些机器,因为它们完全是供内部使用的,只能通过VPN访问。例如,就目前而言,具有公网IP时,我仍然可以SSH、Ping等访问它们。但这就是我不想要的。

我的第一个尝试是从EC2实例中删除公网IP。这解决了我想要的安全性问题,我可以通过私有IP和VPN访问该机器。然而...当我这样做时,EC2实例无法连接到互联网。

根据我所阅读的内容,我知道需要一个NAT网关。问题是,我不确定如何在我的VPN与NAT网关的结合中进行设置。

目前,我的设置如下:

  • 我有一个VPC,IPv4 CIDR为172.31.0.0/16,有3个公有子网,每个子网对应一个可用区(Availability Zone)。即,us-east-2a(172.31.0.0/20),us-east-2b(172.31.16.0/20)和us-east-2c(172.31.32.0/20)。
  • 所有EC2实例都创建在us-east-2a(172.31.0.0/20)子网中。
  • VPC附加了一个互联网网关。
  • 我有一个Client VPN端点,Client CIDR为10.0.0.0/22,并且有一个子网与之关联,作为"Target network associations"。这个子网是us-east-2a(172.31.0.0/20)。
  • 端点有一个安全组,具有允许所有流量的出站规则。
  • 端点有一个"Authorization rules",允许所有VPC和目标CIDR 172.31.0.0/16的流量,以及另一个目标为0.0.0.0/0的规则。
  • 端点有一个"Route table",允许所选子网(172.31.0.0/20)的所有流量。 任何帮助将不胜感激。
profile picture
专家
已提问 5 个月前32 查看次数
1 回答
0

【以下的回答经过翻译处理】 在每个可用区创建一个NAT网关

us-east-2a(172.31.0.0/20)(将其称为NATGW a) us-east-2b(172.31.16.0/20)(将其称为NATGW b) us-east-2c(172.31.32.0/20)(将其称为NATGW c) 这三个可以共享相同的路由表。确保0.0.0.0/0路由到IGW(Internet Gateway),它应该如下所示:

0.0.0.0/0路由到IGWXXX 172.31.0.0/16 本地 在每个可用区创建3个私有子网。现在CIDR范围取决于您,您需要每个子网中的多少个“主机”IP地址。要指出,您的公共/20范围非常大...为了论证,我将指定一个示例

us-east-2a(172.31.48.0/24)(将其称为private a) us-east-2b(172.31.49.0/24)(将其称为private b) us-east-2c(172.31.50.0/24)(将其称为private c) 创建一个新的路由表并将其关联到private a子网。它应该如下所示:

0.0.0.0/0路由到NATGW a 172.31.0.0/16 本地 创建一个新的路由表并将其关联到private b子网。它应该如下所示:

0.0.0.0/0路由到NATGW b 172.31.0.0/16 本地 创建一个新的路由表并将其关联到private c子网。它应该如下所示:

0.0.0.0/0路由到NATGW c 172.31.0.0/16 本地 这个页面可能对子网划分有所帮助...https://www.calculator.net/ip-subnet-calculator.html

还请注意,为了实现高可用性,将您的VPN端点关联到所有3个可用区。另请注意,您应该更新VPN路由表端点为172.31.0.0/16,而不是172.31.0.0/20,否则您将无法访问任何其他子网!或者如果您只希望将其路由到私有子网,可以更新为172.31.48.0/22,就像我在示例中使用的那样。子网划分是一项奇妙的技能,您可能需要根据需求调整/移动网络。

如果这有助于您和其他人,请接受答案。 Gary

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则