【问题标题】:How to ssh into AWS Ubuntu instance from different machine?如何从不同的机器 ssh 进入 AWS Ubuntu 实例?
【发布时间】:2015-07-14 19:44:49
【问题描述】:

我已经设置了一个亚马逊实例 (ubuntu)。我有两台机器。

在第一台机器上,我设置了我的帐户,我可以像往常一样通过 ssh 进入我的实例:

  • 我创建了密钥对,并保存了pem文件等,然后使用访问服务器 ssh -i <pem file> <instance-name>@<instance-ip>

然后,我尝试从我的第二台机器 ssh。我再次创建一个密钥对,我也这样做:将 pem 文件保存在已知位置,确保权限为chmod 400,然后我尝试像以前一样连接:

ssh -i <new path to pem file> <instance-name>@<instance-ip>

但是,我一直收到connection timed out 错误。

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to <IP> [<IP>] port 22.
debug1: connect to address <IP> port 22: Operation timed out
ssh: connect to host <IP> port 22: Operation timed out

我按照here 的说明进行操作,但无济于事。

这是入站规则的屏幕截图:

在 CIDR 表示法中,这意味着所有网络。

问题是什么,我该如何解决?

谢谢。

【问题讨论】:

  • 检查输出:ssh -vvv -i @
  • 我确实尝试过更详细的输出。我已经更新了我的问题。感谢您的建议

标签: ubuntu amazon-web-services ssh pem


【解决方案1】:

连接超时表示SSH根本无法打开远程系统的连接,因此不是文件权限问题。你能做到nc -v -z &lt;instance-ip&gt; 22并成功连接吗?如果没有,请检查您的 EC2 实例的安全组是否允许来自您的第二台计算机的端口 22。

【讨论】:

  • 是的,这个超时了:ec2-&lt;IP&gt;.us-west-2.compute.amazonaws.com [&lt;IP&gt;] 22 (ssh): Operation timed out所以你认为这是一个端口问题?
  • 检查您的 EC2 安全组并确保您的第二台计算机允许使用端口 22。例如,在第二台机器上运行curl icanhazip.com,并确保安全组中的端口 22 允许 IP。
  • 在入站连接下,它在 "port range" 下列出了端口 22。所以,我认为该实例允许端口 22。它还允许所有端口用于出站连接。
  • 它是否允许所有 IP 地址使用端口 22?发布您的安全组的传入规则的屏幕截图。还要检查您的实例上是否存在 iptables 规则,并确保您可以在第二台计算机的端口 22 上建立出站连接。
  • 我更新了我的问题。在 CIDR 表示法中,它表明它应该允许来自所有 IP 地址的入站连接。我的机器似乎允许端口 22 上的出站连接。我尝试了nc -v &lt;website&gt; 22,它连接没有问题。
【解决方案2】:

如果安全组配置正确,下一个可能的罪魁祸首是防火墙。您可以在远程计算机上运行防火墙,或者在本地计算机或公司网络中运行客户端防火墙(这比您想象的更常见)

尝试 ssh 到第一台机器,然后从那里 ssh 到第二台。如果失败,则可能是第二台机器配置错误。如果成功,则可能是防火墙出了问题。

【讨论】:

    猜你喜欢
    • 2018-08-23
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    • 1970-01-01
    • 2020-05-18
    • 2018-07-14
    • 1970-01-01
    • 2021-09-09
    相关资源
    最近更新 更多