我们有许多第三方系统不属于我们的AWS账户而且不在我们的控制之下,每个系统都有一个内部iis服务器设置了dns,只能从本地计算机上获得。这个iis服务器拥有一个我们希望能够从我们的EC2实例中使用的API。
我的想法是在ec2实例和第三方系统之间建立某种类型的VPN连接,以便ec2实例可以使用相同的内部dns来调用api。
AWS提供直接连接,是否正确路径才能执行此操作?如果是的话,任何人都可以提供任何关于如何前进的帮助,如果不是,那么这是正确的途径是什么?
基本上我们有第三方系统,在这个第三方系统上运行一些包含API的软件的IIS服务器。所以从本地机器我可以运行http://<domain>/api/get
并返回JSON代码。但是,为了进入第三方系统,我们通过VPN连接到个人笔记本电脑上。我们需要AWS中的EC2实例才能访问此API,因此需要通过相同的VPN连接连接到第三方。所以我认为我需要在AWS中单独使用一个VPC。
答案 0 :(得分:3)
最佳答案取决于您的预算,带宽和安全要求。
直接连接非常好。此服务提供从您的存在点到亚马逊的专用物理网络连接。配置Direct Connect并运行后,将通过此连接配置VPN(IPSEC)。负面:安装光纤的交付周期较长且相对昂贵。积极,高安全性和可预测的网络性能。
根据您的情况,您可能需要考虑在公共互联网上设置VPN。根据您的要求,我建议在通过VPN链接的两端安装Windows Server。如果您具备Windows网络技能,这将为您提供易于维护的系统。
另一个不错的选择是在两个Linux系统上安装OpenSwan。 OpenSwan提供网络之间的VPN和路由。
Windows或Linux(OpenSwan)的安装时间很简单。您可以在一两天内配置所有内容。
Windows和OpenSwan都支持集线器架构。您的VPC中有一个系统,每个数据中心都有一个系统。
根据每个数据中心中安装的路由器,您可以使用AWS虚拟专用网关。路由器在每个数据中心设置有连接信息,然后将虚拟专用网关连接到路由器。如果您在数据中心安装了正确的硬件(例如亚马逊支持的路由器,这是很多),这实际上是一个非常好的设置。
注意:您可能无法使用VPN客户端,因为客户端不会将两个网络路由到一起,只需将一个系统路由到网络。
您可能需要在VPC中设置DNS转发器,以便与您的私人DNS服务器进行通信。
答案 1 :(得分:1)
也许sshuttle可以做到,你需要什么。从技术上讲,您可以在EC2和远程ssh主机之间打开ssh隧道。它还可以处理远程端的DNS解析请求。这不是完美的解决方案,因为典型的VPN已经过故障转移,但您可以将其作为起点。之后,可能会像以后一样,或用于测试目的。