我有基于 ssh 密钥的登录工作正常。然后,我更改了计算机上的主机名,基于密钥的登录停止工作。似乎有道理。密钥可能依赖于我的旧主机名。因此,我删除了所有密钥和 ~/.ssh/ 中的所有文件并重新生成它们(并更改了我连接到的服务器上的 authorized_keys)
现在,任何时候我尝试 ssh 时,它都会在没有密码提示的情况下挂起,无论我尝试 ssh 到哪里——甚至是我没有设置基于密钥的登录设置的服务器。.ssh/config 中没有任何内容。
此外,当我 'su -' 到 root 时,ssh 工作得很好。完全没有问题。这仅发生在我的用户帐户上。
以下是来自 ssh 的一些调试信息
ssh -vv mylogin@myremoteserver.com OpenSSH_5.2p1,OpenSSL 0.9.8k 2009 年 3 月 25 日 debug1:读取配置数据/Users/myname/.ssh/config debug1:读取配置数据 /usr/etc/ssh_config ...... debug1:主机 'myremoteserver.com' 已知并且与 RSA 主机密钥匹配。 debug1:在 /Users/myname/.ssh/known_hosts:1 中找到密钥 debug2:位集:512/1024 debug1:ssh_rsa_verify:签名正确 调试 2:kex_derive_keys debug2:set_newkeys:模式 1 debug1: SSH2_MSG_NEWKEYS 发送 debug1:期待 SSH2_MSG_NEWKEYS debug2:set_newkeys:模式 0 debug1:收到 SSH2_MSG_NEWKEYS debug1: SSH2_MSG_SERVICE_REQUEST 发送 debug2: service_accept: ssh-userauth debug1:收到 SSH2_MSG_SERVICE_ACCEPT
然后它就挂在这里......
这是 dtruss(类似于 strace,但用于 OSX)在它挂起的末尾附近的输出:sudo dtruss ssh -vv mylogin@myremoteserver.com
选择(0x4,0x508200,0x0,0x0,0x0)= 1 0 …