我要做的是设置面向公众的Web应用程序,但调用内部网络上的数据库。我一直在尝试使用公有子网,私有子网和硬件VPN访问来设置AWS VPC,但我似乎无法让它工作。
有人可以帮我理解这里的流程应该是什么吗?我的理解是我需要一个公共子网来处理网站请求,然后一个私有子网连接到VPN,但我不明白的是如何向链中发送请求并获得响应。基本上我要问的是如何从该公共网站通过VPN查询数据库?
我在路由转发期间尝试过,但我无法成功完成此过程。
有没有人对我可以阅读的有关此主题的内容或有关设置此类内容的常见问题解答有任何建议?它甚至可能吗?如果重要,所有这些服务器都将运行Windows Server
我离开了我的联盟,这不是我的专业领域,但我被要求解决这个问题。任何帮助将不胜感激。
由于
答案 0 :(得分:7)
对于那些熟悉IP网络,路由和NAT的人来说,VPC的术语有点违反直觉,所以这可能会有所帮助:
显然,VPC允许您创建多个子网并在它们之间路由流量。它还允许您通过在您身边的硬件VPN设备与VPC提供的配套虚拟设备之间建立的隧道,将流量路由到您自己的数据中心的其他子网。
您提供了一个"虚拟专用网关" - 这是AWS的设备"它终止了VPN;然后你宣布自己的"客户网关"使用其公共IP地址(您身边的设备,例如Cisco ASA);然后通过声明一个" VPN连接"将这两个实体绑定在一起。它们之间。就在" VPN连接"您可以在此处声明从VPC网络到公司网络的专用IP地址空间的静态路由。在本地设备中,将通过隧道的路由配置为将在VPC内使用的专用IP地址空间。
仍然在VPC配置中,您声明您的VPC的路由表,并在"路由传播,"您可以选择允许更新此路由表的虚拟专用网关。"这会将指向公司网络的路由(从VPN连接配置中发现)注入到VPC路由表中。
VPC中最大的混淆点之一是"公共子网"和#34;私有子网,"这意味着VPC中的其他内容与其他任何地方不同,因为VPC中的所有子网都位于专用IP地址空间。公共/私人的区别是:
VPC中的公有子网使用" Internet Gateway"作为其默认路由,而私有子网使用" NAT实例"或VPN隧道作为其默认路由。 Internet网关是一个虚拟对象,实际上只是一个没有实际配置的占位符,可以用于具有公共IP地址的EC2实例的Internet访问 - 并且只能由具有公共IP地址的实例访问。 NAT实例是运行自定义软件映像的EC2计算机,该映像将接受来自内部计算机的流量,这些计算机缺少自己的公共IP地址,并将流量伪装成源自其外部IP地址,以便可以通过Internet发送流量即使它是从没有公共IP地址的EC2实例内部发起的。来自Internet的返回流量将发送到NAT实例,然后重写标头并将数据包发送回发起请求的实例。
关于NAT实例的极端反直觉的事情是它必须在" public"子网,但它作为在" private"上配置的实例的默认网关。子网。传统上,您的默认网关位于您自己的子网上,但在VPC中,情况并非如此 - 仍然可以完美运行。
到目前为止,我所写的内容应该是你实际上并不需要"一个私人子网 - 但是 - 在您的VPC中,基于您正在尝试完成的内容,并基于什么是"私有"子网意味着在VPC中 - 虽然我建议使用向导设置一个,以便您以后可以使用它。您不需要私有子网的原因是私有子网是您配置不需要可以通过Internet访问的EC2实例的地方,并且您还没有提到需要在你的问题中。
例如,如果您的公司网络是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 Scenario 3"添加了NAT实例,您可以在VPC Scenario 2中看到。 NAT实例的原因是,如果您将服务器放置在"私有" VPC子网,方案3使他们无法在出站的基础上访问Internet(例如,用于获取软件更新),而不是通过路由回公司网络来访问Internet,这对我来说似乎是不必要的旅行,但这取决于你的安全理念。
另外要记住的是,如果您正在考虑使用Elastic Load Balancer,那么ELB需要在" public"上进行配置。子网,但服务于ELB的实例可以放在"私有"子网,因为在这种情况下,只需要从Internet直接访问ELB,并且如果安全组和VPC路由表允许,ELB可以访问VPC中任何子网上的实例。
在原始问题中描述的设置中,没有"私有"子网需要基于VPC定义的"私有"子网是。网络服务器进入公共"具有私有IP地址的子网,并使用来自公共地址空间的弹性IP,并且该网络可通过VPN直接路由到公司网络。
答案 1 :(得分:0)
我在我的linux盒子里使用stunnel。看起来似乎也支持Windows,请查看链接:
http://www.stunnel.org/downloads.html
有一个关于Windows配置的教程。您可以从此文档调整您的解决方案: http://home.arcor.de/lightsky/docs/stunnel_openssl_synergy.pdf