两个 EC2 实例之间的 SSH 和 SCP 超时

SSH & SCP between two EC2 instances times out

我想 transfer/tunnel 通过 sshscp 在两个 Amazon EC2 实例之间(从 A 到 B,如下所示)。

两个实例都是 运行 Ubuntu 18.04.

运行 在实例 A 上:

运行 在实例 B 上:

现在,从 A 到 B 进行测试:

ubuntu@ip-XX-XX-XX-XX:~$ ssh -T ubuntu@ec2-34-199-133-209.compute-1.amazonaws.com
ssh: connect to host ec2-34-199-133-209.compute-1.amazonaws.com port 22: Connection timed out

ubuntu@ip-XX-XX-XX-XX:~$ touch testfile.txt && \
>    scp testfile.txt ubuntu@ec2-34-199-133-209.compute-1.amazonaws.com:/home/ubuntu/
ssh: connect to host ec2-34-199-133-209.compute-1.amazonaws.com port 22: Connection timed out

我在这里错过了什么?我需要更改其他文件权限吗?

问题出在应用于实例集群的安全组上的入站规则。

解决方案:

  1. 在位于 https://console.aws.amazon.com/ec2/ 的 EC2 仪表板上,导航到左侧窗格中的安全组。
  2. Select 适用于实例 B 的安全组,即您要隧道连接到的实例。
  3. 在入站选项卡 > 编辑中添加入站规则。类型:SSH;端口:22,IP 地址:10.XX.XX.XX/32 其中 10.XX.XX.XX 是实例 A 的私有 IPv4。
  4. 保存规则并登录 out/log 实例 A,然后按上述方法重新测试。