我已经多次尝试使用 putty 终端为用户 root@host 建立 SSH-connecton。这样做时,我多次指定了错误的凭据,然后我正确指定了它们,然后在接受凭据后,ssh会话中断
“服务器意外关闭网络连接”。
putty终端报此错误。当尝试从本地控制台 ssh root@localhost - 它工作正常。当我从其他主机 ssh otheruser@host 时,它也可以正常工作。所以网络连接问题是无罪的。我想到的唯一错误是:“用户 root 的身份验证失败太多”,尽管 putty 报告了一个不同的错误。
问题是:如何从这种错误情况中恢复并让 putty 再次登录?重新启动 sshd 似乎没有帮助
"Too many Authentication Failures for user root" 表示 Your SSH server's MaxAuthTries limit was exceeded。发生这种情况是因为您的客户端正在尝试使用存储在 /home/USER/.ssh/ 中的所有可能的密钥进行身份验证。
这种情况可以通过以下方式解决:
配置文件中的单个主机应如下所示:
您还可以设置用户,这样您就不需要在命令行中输入它,也可以缩短长 FQDN,请参见以下示例:
然后,您使用以下命令连接到 real-long-domain.example.com 服务器:
注意:如果您选择仅使用第二个选项,并尝试使用 ssh example.com,您仍然会收到错误(如果那是把您带到这里的原因),短版不会给出错误,您也可以同时使用选项,以便您可以 ssh [email protected] 没有错误。
如果您收到以下 SSH 错误:
如果您的
.ssh
目录中存储了(我的系统上的默认设置)五个或更多 DSA/RSA 身份文件,则可能会发生这种情况。在这种情况下,如果-i
未在命令行中指定该选项,ssh 客户端将首先尝试使用每个身份(私钥)登录,然后提示进行密码验证。但是,sshd 在五次错误登录尝试后断开连接(同样默认值可能会有所不同)。因此,如果您的 .ssh 目录中有许多私钥,您可以使用可选参数
Public Key Authentication
在命令行中禁用。-o
例如:
在远程机器上打开 /etc/sshd_config 并更改值
当您安装了多个密钥或打开多个连接时,这是典型的问题。服务器逐步检查每个密钥,如果 MaxAuthTries 设置为 3,则在第 3 次尝试后将断开您的连接。典型的 ssh 安全性。
我建议您在连接远程机器时使用详细模式来分析问题。
像这个论坛上的大多数人一样猜测是错误的,而且是在浪费时间。首先尝试分析问题,收集信息,然后询问。
玩得开心。
对我来说,这个问题是通过为我要连接的主机创建下面的 ssh_config 来解决的。
(~/.ssh/config)
出现问题是因为我的
~/.ssh
文件夹中有太多 ssh 密钥,比如 16 个左右。如果在配置中没有这两个IdentityFile
ANDIdentitiesOnly
指令,我的机器显然~/.ssh
在尝试正确的 IdentityFile 之前尝试所有的键并达到最大尝试次数。您确定允许 root 登录到 ssh 吗?
检查 sshd_config 并验证是否允许 root 登录。如果设置更改,则需要重新启动 sshd。
这是不好的做法。只需在远程机器上拥有一个普通用户并使用它通过 ssh 连接,然后使用 su/sudo 获得 root 访问权限。
要暂时解决此问题,直到可以完全解决问题,如其他地方所述,您可以重置用户的 PAM 计数,以便他们可以重试:
我建议您,正如上面的 Anon 发布的那样,使用另一个用户获得 ssh 访问权限,然后使用
su
命令获得root
访问权限。还要确保在服务器上
PermitRootLogin
的/etc/ssh/sshd_config
文件中启用。我也面临同样的问题。如果您使用Pageant并且其中加载了大量密钥,则很容易发生这种情况,因为这些服务器将每次提供的公钥都计为一次身份验证尝试。
(此建议取自此处。)
我通过运行以下命令在我的系统中解决了这个问题:
然后在远程机器上尝试 ssh