物理服务器与 VPC 中的私有 EC2 实例之间的连接

物理服务器与 VPC 中的私有 EC2 实例之间的连接

我有 2 台服务器:一台是物理服务器,另一台是 AWS 上 VPC 中的私有 EC2 实例。我需要配置此 EC2 实例以允许物理服务器通过端口 27017(Mongo 的默认端口)连接到它。以下是我目前所做的:

  1. 将 Ec2 实例的域添加到物理服务器的解析器,以便进行 DNS 解析。
  2. 将物理服务器的公共 IP 添加至私有 Ec2 实例的 SG。

完成此操作后,物理服务器现在可以使用其内部 IP(Ec2 实例)解析主机,但我无法通过 telnet 连接到 27017 上的主机,因为它超时了。我假设我必须进行某种形式的路由。因此,以下是此私有实例的设置方式:

私有实例位于一个私有子网中,并附有 NAT 网关。它确实可以访问互联网,而且公共子网显然可以与其通信。

为了实现物理服务器和私有 EC2 实例之间的连接,我还需要考虑什么?我将尽可能详细地解释这一点:

VPC-----------------------                   
|                        |
IGW                     NATd Instance
|                         | 
Pub Sub (3 pub subnets)   Priv Subnet- (3 private subnets)
|                         |
Bastion host              3 Mongo Servers one on each subnet

答案1

听起来您在私有子网中有一个 EC2 服务器,通过 NAT 网关进行传出互联网访问。根据这些组件的设计,这不提供任何入站访问。也可能您在 VPC 中有一个公有子网,但您的问题含糊不清。

假设您已打开适当的防火墙/安全组,您的 EC2 实例是否可以 ping 物理服务器?我认为可以,因为它具有传出互联网访问权限。

为了解决这个问题,您需要将您的 EC2 实例放入具有附加互联网网关的公共子网中,或者在可公开寻址的公共子网中放入某种代理。

如果您可以澄清您的配置,最好同时扩展您的问题和图表,我可能会提供更多指导。

相关内容