AWS VPC公共Web应用程序通过VPN连接到数据库

Cha*_*ase 3 vpn amazon-web-services amazon-vpc

我要做的是设置面向公众的Web应用程序,但调用内部网络上的数据库.我一直在尝试使用公有子网,私有子网和硬件VPN访问来设置AWS VPC,但我似乎无法使其工作.

有人可以帮我理解这里的流程应该是什么?我的理解是我需要一个公共子网来处理网站请求,然后一个私有子网连接到VPN,但我不明白的是如何向链中发送请求并获得响应.基本上我要问的是如何从该公共网站通过VPN查询数据库?

我已尝试在路由转发期间但我无法成功完成此过程.

有没有人对我可以阅读的关于这个主题的内容或关于设置这样的东西的常见问题解答有任何建议?它甚至可能吗?如果重要,所有这些服务器都将运行Windows Server

我不在这里,这不是我的专业领域,但我被要求解决这个问题.任何帮助,将不胜感激.

谢谢

Mic*_*bot 7

对于那些熟悉IP网络,路由和NAT的人来说,VPC的术语有点违反直觉,所以这可能会有所帮助:

显然,VPC允许您创建多个子网并在它们之间路由流量.它还允许您通过在您身边的硬件VPN设备与VPC提供的配套虚拟设备之间建立的隧道将流量路由到您自己的数据中心的其他子网.

您提供了"虚拟专用网关" - 这是AWS的"设备",可以终止VPN; 然后,您使用其公共IP地址(您身边的设备,例如Cisco ASA)声明您自己的"客户网关"; 然后通过在它们之间声明"VPN连接"将这两个实体绑定在一起.在"VPN连接"中,您可以在此处声明从VPC网络到公司网络的专用IP地址空间的静态路由.在本地设备中,通过隧道将路由配置到将在VPC内使用的专用IP地址空间.

仍在VPC配置中,您声明了VPC的路由表,在"路由传播"下,您可以"选择允许更新此路由表的虚拟专用网关".这会将指向公司网络的路由(从VPN连接配置中发现)注入到VPC路由表中.

VPC中最大的混淆点之一是"公有子网"和"私有子网"的术语,这意味着VPC中的某些内容与其他任何地方不同,因为VPC中的所有子网都位于专用IP地址空间.公共/私人的区别是这样的:

VPC中的公有子网使用"Internet网关"作为其默认路由,而私有子网使用"NAT实例"或VPN隧道作为其默认路由.Internet网关是一个虚拟对象,实际上只是一个没有实际配置的占位符,可以用于具有公共IP地址的EC2实例的Internet访问 - 并且只能由具有公共IP地址的实例访问.NAT实例是运行自定义软件映像的EC2计算机,该映像将接受来自内部计算机的流量,这些计算机缺少自己的公共IP地址,并将流量伪装成源自其外部IP地址,以便可以通过Internet发送流量即使它是从没有公共IP地址的EC2实例内部发起的.来自Internet的返回流量发送到NAT实例,

关于NAT实例的极端反直觉是它必须在"公共"子网上配置,但它作为在"私有"子网上配置的实例的默认网关.传统上,您的默认网关位于您自己的子网上,但在VPC中,情况并非如此 - 仍然可以完美运行.

从我到目前为止所写的内容中可以看出,你实际上"不需要"一个私有子网 - 但是 - 在你的VPC中,基于你想要完成的东西,并基于什么"私有"子网意味着在VPC中 - 虽然我建议使用向导设置一个,以便您以后可以使用它.你并不需要一个专用子网的原因是一个私人子网是你配置的EC2实例并不需要是Internet访问,并且您还没有提到,在你的问题的需要.

例如,如果您的公司网络是172.16.0.0/16并且专用IP网络192.168.0.0/16与您的公司网络编号不冲突,您可以将VPC声明为192.168.0.0/16,然后声明,例如,192.168.20.0/24(位于192.168.0.0/16内)作为公有子网.在您的硬件VPN设备上,通过隧道将192.168.0.0/16路由到VPC,然后在VPC内,通过隧道路由172.16.0.0/16,返回公司网络.

我所描述的主要是" VPC场景3 ",添加了您在VPC场景2中可以看到的NAT实例.NAT实例的原因是,如果您将服务器放置在"私有"VPC子网上,则方案3使他们无法在出站的基础上访问Internet(例如,用于获取软件更新),而不是通过路由返回到你的企业网络以这种方式访问​​互联网,这对我来说似乎是一次不必要的旅行,但这取决于你的安全理念.

另外要记住的是,如果您正在考虑使用Elastic Load Balancer,那么ELB需要在"公共"子网上进行配置,但是为ELB提供服务的实例可以位于"私有"子网上,因为在此例如,只有ELB需要可以从Internet直接访问,并且如果安全组和VPC路由表允许,ELB可以访问VPC中任何子网上的实例.

但是,在原始问题中描述的设置中,根据"私有"子网的VPC定义,不需要"私有"子网.Web服务器使用私有IP地址进入"公共"子网,并使用来自公共地址空间的弹性IP,并且该网络可通过VPN直接路由到公司网络.