本文介紹Linux系統的ECS實例中,SSH登錄或數據傳輸速度都很慢的問題原因和解決方案。
問題現象
在Linux系統的ECS實例中,通過外網或內網使用SSH服務登錄或數據傳輸時,速度很慢。
問題原因
該問題可能是ECS實例中,SSH服務配置文件/etc/ssh/sshd_config
中啟用了UseDNS特性導致。
說明
UseDNS特性是SSH服務的安全增強特性,默認未開啟。開啟后,服務端會先根據客戶端IP進行DNS PTR反向查詢,得到客戶端主機名。再根據得到的客戶端主機名進行DNS正向A記錄查詢,最后比對得到的IP與原始IP是否一致,用于防止客戶端欺騙。
通常情況下,客戶端使用的是動態IP,沒有相應的PTR記錄。所以,該特性開啟后,不僅無法用于信息比對,反而由于相關查詢操作增加了操作延遲,最終導致客戶端連接速度變慢。
解決方案
登錄Linux實例。
具體操作,請參見連接方式概述。
執行如下命令,查看sshd_config文件。
cat /etc/ssh/sshd_config
系統顯示類似如下,表示開啟了UseDNS特性。
UseDNS yes
修改SSH服務配置文件。
打開SSH配置文件。
vi /etc/ssh/sshd_config
根據業務需要,在該行配置前加
#
注釋掉該配置或將yes
修改為no
禁用UseDNS特性。# UseDNS no
按Esc鍵,輸入
:wq
保存修改。執行如下命令,重啟SSH服務。
systemctl restart sshd.service
文檔內容是否對您有幫助?