Linux
解決我的 SSH 會話掛起幾秒鐘的問題
我通過 SSH(在我的筆記型電腦上使用 PuTTY)登錄到我的開發框,並且會話會定期掛起幾秒鐘,然後再次響應。我無法縮小範圍。
網路設置:伺服器和筆記型電腦連接到同一個路由器。
包裝盒上的服務:
- 阿帕奇
- 杯子
- 失敗2禁令
- mysqld
- 桑巴
- sendmail(用於帶有 dkim-filter 的 SMTP)
- SSH(如前所述)
最高輸出:
這是在掛斷發生後的幾分鐘。
top - 02:16:14 up 15 days, 1:11, 1 user, load average: 0.00, 0.03, 0.07 Tasks: 125 total, 1 running, 124 sleeping, 0 stopped, 0 zombie Cpu(s): 3.3%us, 1.5%sy, 0.0%ni, 92.5%id, 2.6%wa, 0.0%hi, 0.1%si, 0.0%st Mem: 1017408k total, 950744k used, 66664k free, 359728k buffers Swap: 4194300k total, 14012k used, 4180288k free, 191344k cached
解決這個問題的提示?
我猜:
SSHv2 客戶端在每 X 分鐘和/或 Y 字節傳輸後啟動一次密鑰重新交換(對於 PuTTY,預設值為 60 分鐘和 1 GB)。重新生成密鑰應該只需要 1-3 秒,但在完成之前,不能通過 SSH 連接傳輸其他數據。
在 PuTTY 的事件日誌中查找“Initiating key re-exchange ( reason )”。(
Ctrl
Right Click
在終端視窗上。)如果確實是這個原因,您可以:
- 在Connection → SSH → Kex中將特定算法(例如 DH group 14)移動到“組交換”上方
- 增加同一頁面的重新交換超時