【问题标题】:AWS Instance SSH Connection trouble occurs when you reusing elastic IP [closed]重用弹性 IP 时出现 AWS Instance SSH 连接问题 [关闭]
【发布时间】:2016-03-30 02:11:06
【问题描述】:

重建

  1. 创建实例

  2. 为您创建的实例分配并关联一个新的弹性 IP

  3. 通过 ssh 连接到实例,方法是寻址您在第 2 步中与您的实例关联的弹性 IP,以查看您已建立没有问题的连接

    $ ssh -i "YouKey.pem" openvpnas@192.168.0.1

  4. 关闭与您的实例的连接

  5. 终止您的实例

  6. 创建一个具有相同堆栈和配置的新实例

  7. 关联您在第 2 步中创建的弹性 IP

  8. 通过寻址您在步骤 7 中与新实例关联的弹性 IP,尝试通过 ssh 连接您在步骤 6 中创建的实例

  9. 您将收到主机密钥验证失败,例如:

    $ ssh -i "YourKey.pem" openvpnas@192.168.0.1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ @警告:远程主机标识已更改! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ 可能有人在做一些讨厌的事情! 有人现在可能正在窃听您(中间​​人攻击)! 主机密钥也可能刚刚更改。 远程主机发送的 RSA 密钥的指纹是 ff:01:ff:01:ff:01:ff:01:ff:01:ff:01:ff:01:ff:01。 请联系您的系统管理员。 在 'Path-To-Your-Host-Key'/known_hosts 中添加正确的主机密钥以消除此消息。 'Path-To-Your-Host-Key'/known_hosts:14 中的违规 RSA 密钥 192.168.0.1 的 RSA 主机密钥已更改,您已请求严格检查。 主机密钥验证失败。

*仅供参考:* 我想按照你的指示在server fault 上发布,但我会保持原样 已经有一段时间了,似乎人们可以访问这篇文章。 我认为这可能是一个很好的例子,不要做??

【问题讨论】:

  • 整个过程有点混乱,有更简单的方法可以做类似的事情,这就是你最终遇到服务器指纹问题的原因。答案是通过更深入的问题分析来重建流程,同时考虑为动态服务器实例环境自动配置 ssh 的好方法。

标签: linux amazon-web-services ssh amazon-ec2 openvpn


【解决方案1】:

原因 此问题是由与您的旧实例相关联的弹性 IP 冲突引起的。 在您的 known_hosts 文件中,您的主机地址已与来自主机的指纹相关联。 您的客户拒绝了您的请求,因为您的新主机为您的客户提供了新指纹。

解决方案 有几种方法可以解决此问题并与您的实例建立连接,如下所示: A. 分配一个新的弹性 IP 并将其与您的新实例关联 或者 B. 从“known_hosts”文件中删除旧主机密钥 192.168.0.1 ssh-rsa "##################### 你很长(1024 位或更多)的 RSA 密钥字符串 ######## ##############"

跟进 如果您遇到了这个问题并最终阅读了本文,那么您刚刚了解了身份验证如何与您的 ssh 客户端和 Mac OS X 终端上的实例一起工作。 当您解决了这个问题并通过 SSH 建立了良好的连接后,现在您了解警告“警告:将 '192.168.0.1' (RSA) 永久添加到已知主机列表。”的含义。

$ ssh -i "YourKey.pem" openvpnas@192.168.0.1
The authenticity of host '192.168.0.1 (192.168.0.1)' can't be established.
RSA key fingerprint is ff:01:ff:01:ff:01:ff:01:ff:01:ff:01:ff:01:ff:01.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.1' (RSA) to the list of known hosts.
Welcome to OpenVPN Access Server Appliance 2.0.25


The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
..

【讨论】:

  • 根据环境,ssh -o KnownHostsFile=/dev/null -o StrictHostKeyChecking=no user@host 是一种有用的解决方法。主机密钥永远不会在 /dev/null 中找到,因此每次连接时它都会“附加”到它(ha,ha)。只有在主机被入侵的低风险证明禁用此机制是合理的环境中才是好的。
  • 嗨,我在更改 ip 以修复它时遇到了类似的问题,但我看到我仍然可以访问 ftp。在这种情况下,我将删除哪个文件以使其与旧 IP 一起使用。
  • @masa,谢谢,你拯救了我的一天。
  • 确定@Imiguelvargasf!