服务器设置和教程 · 9 10 月, 2024

解決 SSH 遠程鏈接超時斷開的方法

解決 SSH 遠程鏈接超時斷開的方法

在使用 SSH(Secure Shell)進行遠程管理時,經常會遇到鏈接超時斷開的問題。這不僅影響工作效率,還可能導致未保存的數據丟失。本文將探討導致 SSH 連接超時的原因及其解決方法,幫助用戶更好地管理其伺服器。

SSH 連接超時的原因

SSH 連接超時的原因有多種,主要包括以下幾個方面:

  • 網絡不穩定:如果網絡連接不穩定,可能會導致 SSH 連接中斷。
  • 伺服器配置:伺服器的 SSH 配置可能設置了較短的超時時間。
  • 防火牆設置:防火牆可能會阻止 SSH 連接,導致超時。
  • 客戶端設置:客戶端的 SSH 設置也可能影響連接的穩定性。

解決方法

1. 調整伺服器的 SSH 配置

伺服器的 SSH 配置文件通常位於 /etc/ssh/sshd_config。可以通過以下步驟調整超時設置:

sudo nano /etc/ssh/sshd_config

在配置文件中,查找以下參數並進行調整:

  • ClientAliveInterval: 設置伺服器向客戶端發送保持活動消息的時間間隔(以秒為單位)。例如,設置為 60 秒:
  • ClientAliveInterval 60
  • ClientAliveCountMax: 設置伺服器在斷開連接之前可以發送的保持活動消息的最大次數。例如,設置為 3:
  • ClientAliveCountMax 3

完成後,保存並退出編輯器,然後重啟 SSH 服務:

sudo systemctl restart sshd

2. 調整客戶端的 SSH 配置

客戶端的 SSH 配置文件通常位於 ~/.ssh/config。可以通過以下步驟進行調整:

nano ~/.ssh/config

在文件中添加以下行:

  • ServerAliveInterval: 設置客戶端向伺服器發送保持活動消息的時間間隔(以秒為單位)。例如,設置為 60 秒:
  • ServerAliveInterval 60
  • ServerAliveCountMax: 設置客戶端在斷開連接之前可以發送的保持活動消息的最大次數。例如,設置為 3:
  • ServerAliveCountMax 3

保存並退出編輯器後,重新連接 SSH。

3. 檢查防火牆設置

確保防火牆允許 SSH 流量。可以使用以下命令檢查防火牆狀態:

sudo ufw status

如果 SSH 被阻止,可以使用以下命令允許 SSH 流量:

sudo ufw allow ssh

4. 使用持久化連接

可以使用 tmuxscreen 等工具來保持會話持久化,即使 SSH 連接中斷,仍然可以重新連接並恢復會話。

tmux new -s mysession

當需要重新連接時,可以使用以下命令:

tmux attach -t mysession

總結

SSH 遠程鏈接超時斷開的問題可以通過調整伺服器和客戶端的配置、檢查防火牆設置以及使用持久化工具來解決。這些方法不僅能提高連接的穩定性,還能提升工作效率。如果您需要穩定的 香港VPS 服務,請考慮選擇合適的方案以滿足您的需求。