ubuntu 伺服器,ssh,寫入失敗:管道損壞
我在我們的兩台新伺服器(都是全新安裝的)上使用 Ubuntu Server 10.04 64 位出現了一些奇怪的行為。我在 4-5 台其他伺服器上部署了 ubuntu 伺服器(相同版本),沒有這個問題。
最初,我無法通過 ssh 進入全新的伺服器安裝,直到手動設置 ssh 伺服器在 /etc/ssh/sshd_config 中偵聽的地址。連接後,我似乎被隨機踢出並出現以下錯誤:
寫入失敗:管道損壞
使用“ssh -vv”不會顯示任何其他資訊。當我以這種方式被踢出時,我無法在另一個看似隨機的時間段內重新連接。有時幾秒鐘,有時幾分鐘。如果我執行“netstat -nap|grep :22”,我可以看到在寫入失敗錯誤後我的連接仍然存在。在連接斷開之前,我似乎無法重新連接。
在其中一個錯誤之後,如果我從控制台跳到伺服器,ssh 到另一台機器,然後嘗試 ssh 回到伺服器,一切正常。
使用“-o TCPKeepAlive=yes”客戶端似乎沒有任何影響。我已經在伺服器上禁用了 iptables 和 ufw。AppArmor 沒有顯示任何強製配置文件,也沒有安裝 SELinux。
我的日誌沒有報告任何錯誤,也沒有任何自定義配置。這是一個盒裝安裝。請注意,當我嘗試在損壞的管道錯誤後重新進入時,這是我得到的錯誤:
ssh:連接到主機 172.22.50.92 埠 22:連接被拒絕
nmap 不再顯示埠 22 處於打開狀態,儘管伺服器上的 netstat 表示它仍在偵聽埠 22。
編輯 - 我不確定這是否意味著什麼,但我已經在這些主機上安裝了 KVM,我可以毫無問題地通過 ssh 進入來賓(ubuntu 伺服器 64 位)。
更新 - 我已經嘗試清除 openssh 並使用 apt 重新安裝。我還從原始碼中清除並安裝了openssh,但沒有運氣。traceroutes 和 ping 通宵顯示沒有任何封包遺失。
另一個更新 - 戴爾似乎認為我們的伺服器主機板壞了。更換它以查看是否可以解決問題。
這篇文章解決了問題: 伺服器上線時大量丟包
使用 mtr 檢查網路。嘗試類似的命令
mtr -i 15 remotehost
。讓它在視窗中執行,或使用螢幕,以便您可以分離。它應該可以擷取網路的任何問題。在我的大多數係統上,丟包率通常為 0%。
arp -n
編輯:在 ssh 下降之前和之後,您的 IP 地址的顯示輸出是什麼。您可能想在同一子網的另一台伺服器上嘗試此操作。IP 地址應該只有一個硬體地址,並且不能更改。如果是,則說明 IP 地址衝突。