【发布时间】:2016-09-22 17:55:19
【问题描述】:
不幸的是,3 小时的谷歌搜索并没有帮助我解决这个问题,我指望那里的某个人可以让一个'nix noob 完成这一切。
我的情况
几个月来,我一直在成功地从我的 mac SSH 连接到我的 AWS 实例。即使在今天它仍然有效。这从逻辑上消除了所有与设置相关的问题,例如确保我打开了端口 22、指向 0.0.0.0/0、拥有正确的用户名(它的 ubuntu 不是 ec2-user)、让我的 pem 文件正确获得许可等。
然后我的 mac 挂起,我重新启动 mac,突然我不能再 ssh。我什至无法通过直接从 aws 控制台启动的 java 客户端进行 ssh 登录。 aws 控制台上的利用率和其他状态检查看起来不错。
这是我的 -vvv 个人信息替换:
OpenSSH_6.9p1, LibreSSL 2.1.8
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to <myip> [<myip>] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /Users/<myfilepath>/ipythonswyx1.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/<myfilepath>/ipythonswyx1.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.9
ssh_exchange_identification: read: Operation timed out
我认为很明显 debug1: key_load_public: No such file or directory 是这里的问题。但是a)为什么这会突然停止工作? b) 即使我再次 chmodded pem 文件后,它仍然显示此错误?
我可以在网上找到的唯一其他解决方案是删除此实例并从头开始重新设置 - 我非常希望保留此实例。
你能建议我应该用谷歌搜索的东西或我可以运行的任何其他诊断吗?成为这样一个 n00b 的问题是,我什至不知道要问的正确问题或如何描述我的问题,除了“这个现在有效的东西不起作用而且我不知道为什么”。帮助。
【问题讨论】:
-
你有机会从另一台电脑上试试吗?复制您的密钥并尝试,这将消除选项密钥已损坏
-
ssh_exchange_identification: read: Operation timed out连接实际上失败了,因为您没有从远程服务器获取版本字符串,这是 ssh 协议的最开始。服务器可能出现故障,您可能连接到错误的服务器,或者可能有防火墙干扰了连接。 -
Kenster 是对的,你已经“建立连接”,然后你的本地找不到密钥,那么你应该得到“远程协议版本”(这不会发生) .我怀疑您的本地 Mac 上存在某种防火墙废话 - 因为问题是在重新启动后发生的。您可以尝试重新启动远程服务器。您可能还需要使用我的回答中的建议 - 因为找不到 Mac 上的本地密钥
-
非常感谢大家。 Frédéric,我尝试通过 putty 从同一台计算机上运行的 Windows 进行连接。仍然超时。 kenster - 对于服务器故障,我重新启动了实例,但无济于事。连接到错误的服务器 - 基于我的 ec2 控制台,我仍然拥有相同的 dns。 @vorsprung我如何解决这个“我本地mac上的防火墙废话”?这听起来像是最有可能的问题(我可以找到本地密钥 - 根据我在下面给您的回复)
-
@swyx 你明白了吗?我有同样的问题。即使使用我的 putty 连接(不使用来自 linux 服务器的 ssh 命令),我也无法连接。
标签: linux macos amazon-web-services ssh amazon-ec2