Ssh

如何從“使用者 root 的身份驗證失敗太多”中恢復

  • January 12, 2022

我已經多次嘗試使用 putty 終端為使用者 root@host 建立 SSH-connecton。這樣做時,我多次指定了錯誤的憑據,然後我正確指定了它們,然後在接受憑據後,ssh會話中斷

“伺服器意外關閉網路連接”。

putty終端報此錯誤。當嘗試從本地控制台 ssh root@localhost - 它工作正常。當我從其他主機 ssh otheruser@host 時,它也可以正常工作。所以網路連接問題是無罪的。我想到的唯一錯誤是:*“使用者 root 的身份驗證失敗太多”,*儘管 putty 報告了一個不同的錯誤。

問題是:**如何從這種錯誤情況中恢復並讓 putty 再次登錄?**重新啟動 sshd 似乎沒有幫助

您確定允許 root 登錄到 ssh 嗎?

檢查 sshd_config 並驗證是否允許 root 登錄。如果設置更改,則需要重新啟動 sshd。

“Too many Authentication Failures for user root” 表示 Your SSH server’s MaxAuthTries limit was exceeded。發生這種情況是因為您的客戶端正在嘗試使用儲存在 /home/USER/.ssh/ 中的所有可能的密鑰進行身份驗證。

這種情況可以通過以下方式解決:

  1. ssh -i /path/to/id_rsa root@host
  2. 在/home/USER/.ssh/config中指定Host/IdentityFile

配置文件中的單個主機應如下所示:

Host example.com
 IdentityFile /home/USER/.ssh/id_rsa

您還可以設置使用者,這樣您就不需要在命令行中輸入它,也可以縮短長 FQDN,請參見以下範例:

host short
 IdentityFile /home/USER/.ssh/id_rsa
 User someuser
 HostName really-long-domain.example.com

然後,您使用以下命令連接到 real-long-domain.example.com 伺服器:

ssh short

注意:如果您選擇僅使用第二個選項,並嘗試使用 ssh example.com,您仍然會收到錯誤(如果那是把您帶到這裡的原因),簡短版本不會給出錯誤,您也可以同時使用選項,以便您可以 ssh anyuser@example.com 沒有錯誤。

  1. 在/etc/ssh/sshd_config中增加SSH 伺服器上的MaxAuthTries值(不推薦)。

引用自:https://serverfault.com/questions/36291