通过同一 VPC 内公共子网上的实例 ssh 到私有子网上的实例

问题描述 投票:0回答:1

我在一个 VPC 中有两个子网(例如“我的 VPC”):

  1. 公共子网 - 通过路由表
    0.0.0.0/0
    连接到互联网网关。我可以使用 pem 文件和 MobaXterm 从本地计算机连接到此子网上名为
    Public Instance
    的实例。此公共子网还有另一个与 VPC 关联的默认路由表 -
    My VPC
  2. 私有子网 - 它只有一个与
    My VPC
    关联的路由表。我在此私有子网上运行一个实例,名为
    Private Instance

我正在尝试从我的

Private Instance
ssh 到此
Public Instance
,因为这两个位于同一 VPC 中。我已将“私有实例”的密钥对复制到“公共实例”,并在通过 MobaXterm 登录“公共实例”时尝试使用 ssh 命令。

此图显示了我在 AWS 中的设置:

enter image description here

我可以使用 Mobaxterm 从本地计算机(笔记本电脑)连接到私有实例。

但是我无法从公共实例到私有实例进行 ssh,尽管它们位于同一 VPC 中。请求超时。

我已将私有实例的密钥对复制到我尝试执行 ssh 的公共实例。

我希望通过公共实例连接到私有实例。

谢谢您的帮助。

amazon-web-services networking amazon-ec2 amazon-vpc subnet
1个回答
0
投票

您需要将安全组附加到允许从公共实例访问的私有实例。

首选配置是:

  • 公共实例 (
    SG-Public
    ) 上的安全组,授予来自
    0.0.0.0/0
    的 SSH(端口 22)入站访问权限,并允许所有出站访问
  • 私有实例 (
    SG-Private
    ) 上的安全组,授予来自
    SG-Public
    的 SSH 入站访问权限并允许所有出站访问

也就是说,

SG-Private
应特别引用
SG-Public
。这样,与
SG-Public
安全组关联的任何实例都能够通过 SSH 连接到与
SG-Private
安全组关联的任何实例。

请注意,将两个实例“放入同一安全组”并不总是足够,因为安全组单独应用于实例。

© www.soinside.com 2019 - 2024. All rights reserved.