僅透過無線方式從 Ubuntu SSH 和 Windows Putty 用戶端進行 SSH 登入和打字速度較慢

僅透過無線方式從 Ubuntu SSH 和 Windows Putty 用戶端進行 SSH 登入和打字速度較慢

我有一個由 3 個 Raspberry Pi 組成的 Raspberry Pi 集群,每個都在我的家庭網路 (192.168.0.n) 上運行 Ubuntu Server 20.04。每個 Raspberry Pi 都有一個透過 Netplan 設定分配的靜態 IP。

當嘗試從我的 Ubuntu Desktop 20.04 透過 SSH 連接到任何 Raspberry Pi 時,SSH 登入要么需要很長時間,要么最終登錄,但輸入速度非常慢或無回應。

我在同一網路上使用 PuTTYy 的 Windows 筆記型電腦上嘗試執行此操作,並看到相同的行為最終導致以下錯誤:

網路錯誤:軟體導致連線中止

在每個執行 SSHD 的 Pi 上,我已在 中進行了設定UseDNS no並進行了註釋,基本上遵循此網站上定義的步驟:session optional pam_systemd.so/etc/pam.d/common-sessionhttps://jrs-s.net/2017/07/01/slow-ssh-logins/

我的路由器由我的 ISP 提供;英國天空電視台。

奇怪的是,我在 Android 手機上下載了 JuiceSSH,並且可以連接到每個 Pi 並成功運行命令。

我完全被難住了。任何有關如何進一步排除故障的幫助或指導將不勝感激。

答案1

您可以增加 ssh 指令的詳細程度來ssh -vvv user@host找出延遲的根源。

該問題是由多個配置引起的。首先,檢查host文件:

sudo nano /etc/hosts

其中會有一行 127.0.0.1 ,確保其前面的主機名稱正確。如果您沒有,只需添加:

127.0.0.1 hostname

如果您不確定主機名,可以使用以下命令找到它:

echo $HOSTNAME

儲存後,無需重新啟動任何服務,即可看到速度提升。如果沒有嘗試第二次改變。

nano /etc/ssh/sshd_config

該文件包含 SSH 服務配置,預設有一些參數可能不是您的最佳情況。這樣你就可以修改它,記得使用 sudo ;)

X11Forwarding會減慢資料傳輸速度,但通常保留它就可以了yes。同樣,PasswordAuthentication這使得連接更加容易和安全。修改並設定它們no以進行測試並保存文件。然後使用以下命令重新啟動服務:

sudo service sshd restart

有一種情況,你的命令執行速度很快,但 ssh 登入速度很慢,這時就會出現身份驗證問題。檢查文件中的兩個常見情況是UseDNS和。要檢查它們,請嘗試:UsePAMsshd_config

nano /etc/ssh/sshd_config

然後添加或編輯它們(如果存在):

UsePAM no
UseDNS no

同時停用兩者以檢查它們的效果,並且不要忘記ssh儲存後重置服務。

如果您沒有實現任何改進,則將其反轉,並檢查htop是否有任何可疑進程正在運行。檢查CPU和記憶體的使用情況,也許你可以殺死它們。

我不會把它寫得更長,所以遺憾的是,如果問題仍然存在,請回覆此以獲得更多想法。

答案2

我終於弄清楚了是什麼導致從我的 Ubuntu 20.04 筆記型電腦到我的 Raspberry Pi 叢集(影響所有 3 個叢集)的 SSH 會話透過無線方式掛起。關閉無線設備的電源管理。首先列出網路設備狀態:

sudo iwconfig

如果電源管理已打開,請將以下文件中的 3 變更為 2 來關閉:

cat /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf 

[connection]
wifi.powersave = 2

更改後我必須重新啟動筆記型電腦。

相關內容