我使用 ssh 到遠端伺服器(沒有 rsa 金鑰,只有密碼)。
現在伺服器不再接受連接並向我拋出此錯誤:
ssh_exchange_identification: Connection closed by remote host
雖然我可以用谷歌搜尋一下來找到修復程序,但我無法弄清楚出了什麼問題,因為自上次登入以來我沒有碰過機器上的任何東西。
你能幫我找出原因嗎?
編輯:檢查日誌我發現了這些:
/var/auth.log
/var/log/auth.log:Dec 26 16:40:32 vps sshd[15567]: error: fork: Cannot allocate memory
/var/log/auth.log:Dec 26 16:41:05 vps sshd[15567]: error: fork: Cannot allocate memory
/var/log/auth.log:Dec 26 16:43:47 vps sshd[15567]: error: fork: Cannot allocate memory
/var/log/auth.log:Dec 27 03:20:06 vps sshd[15567]: error: fork: Cannot allocate memory
/var/log/auth.log:Dec 27 16:15:02 vps sshd[15567]: error: fork: Cannot allocate memory
在同一時段我還發現很多這些:
/var/log/auth.log:Dec 26 13:00:01 vps CRON[1716]: PAM unable to dlopen(/lib/security/pam_unix.so): libcrypt.so.1: cannot map zero-fill pages: Cannot allocate memory
/var/log/auth.log:Dec 26 13:00:01 vps CRON[1716]: PAM adding faulty module: /lib/security/pam_unix.so
這些是什麼?
答案1
我在公共 ssh 伺服器上執行 DenyHosts,這就是當 IP 新增到 /etc/hosts.deny 時看到的錯誤訊息。
您的 SSHd 周圍有類似的 TCP 包裝服務嗎?您是否有連接到該盒子的 KVM 或串行控制台?或者您可以從另一台具有不同 IP 的伺服器進行 SSH 登入嗎?