用ssh連其他linux機器,會等待10-30秒才有提示輸入密碼,嚴重影響工作效率。登入很慢,登入上去後速度正常,這種情況主要有兩種可能的原因:
注:ssh -v user@server
可以看到debug資訊,能夠獲知當前阻塞在哪.
openssh在使用者登入的時候會驗證ip,它根據使用者的ip使用反向dns找到主機名,再使用dns找到ip位址,最後匹配一下登入的ip是否合法。如果客戶機的ip沒有網域名稱,或者dns伺服器很慢或不通,那麼登入就會很花時間。
在目標伺服器上修改sshd伺服器端配置,並重啟sshd
vi /etc/ssh/sshd_config
,設定usedns為no即可
當然也可以通過提供dns正確反向解析的方法解決,有如下兩種思路:
在server上/etc/hosts檔案中把常用的ip和hostname加入,然後在/etc/nsswitch.conf看看程式是否先查詢hosts檔案(一般預設是這樣)。
修改server上的hosts檔案,將目標機器的ip和網域名稱加上去。或者讓本機的dns 伺服器能解析目標位址。
vi /etc/hosts
192.168.12.16 ourdev
其格式是「目標機器ip 目標機器名稱」這種方法促效。沒有延遲就連上了。不過如果給每台都加乙個網域名稱解析,挺辛苦的。但在windows下用putty或secure-crt時可以採用這種方法。
起一台dns伺服器(可以是本機),加入反向解析,把這個dns伺服器加入到/etc/resolv.conf
中。
用ssh -v user@server 可以看到登入時有如下資訊:
debug1: next authentication method: gssapi-with-mic在客戶端上修改ssh客戶端配置(注意不是sshd_conf)debug1: unspecified gss failure. minor code may provide more information
vi /etc/ssh/ssh_config
,設定gssapiauthentication no 並重啟sshd
使用strace檢視後發現,ssh在驗證完key之後,進行authentication gssapi-with-mic
,此時先去連線dns伺服器,在這之後會進行其他操作。
SSH登入很慢問題的解決
用ssh連其他linux機器,會等待10 30秒才有提示輸入密碼。嚴重影響工作效率。登入很慢,登入上去後速度正常,這種情況主要有兩種可能的原因 1.dns反向解析的問題 openssh在使用者登入的時候會驗證ip,它根據使用者的ip使用反向dns找到主機名,再使用dns找到ip位址,最後匹配一下登入...
SSH登入很慢問題的解決
用ssh連其他linux機器,會等待10 30秒才有提示輸入密碼。嚴重影響工作效率。登入很慢,登入上去後速度正常,這種情況主要有兩種可能的原因 1.dns反向解析的問題 openssh在使用者登入的時候會驗證ip,它根據使用者的ip使用反向dns找到主機名,再使用dns找到ip位址,最後匹配一下登入...
SSH登入緩慢解決方法
最近幾天通過ssh登入區域網內的一台機器時,在輸入使用者名稱後,得等10多秒後才會有響應回來,很慢,但ping的時候ttl時間很快,那機器負載也蠻小的。這個小問題存在了幾天,一直沒顧上解決,今天在網上查了些資料,終於知道的這個問題產生的原因。原因之一是因為linux系統的乙個檔案 etc nsswi...