很多的Linux用户发现连Linux服务器的时候还要再等一下才能输入密码或者等一下才能连上,时间有些过长了,现在给大家分享一下如何解决ssh登陆慢的问题,希望对大家有所帮助 。
% \8 |6 m D6 D) m原理
. { B( j/ Z& `; ASSH 登录太慢可能是 DNS 解析的问题,默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。 ; z! l& I0 e( Q
如果这个时候 DNS 的反向解析不正确,sshd 就会等到 DNS 解析超时后才提供 ssh 连接,这样就造成连接时间过长、ssh 客户端等待的情况,一般为10-30秒左右。 $ r N- v2 \/ ~& i! |, p5 ~2 \
! b7 z6 w* G6 q( Y. ]. m. }& S
; g# ^4 k7 O+ `/ d! c4 t( c4 S
/ K1 ~' q. p6 m% \+ L0 S; s$ d+ _' e2 f* d/ G0 b, P
有个简单的解决办法就是在 sshd 的配置文件(sshd_config)里取消 sshd 的反向 DNS 解析。
: O' N% K0 m" G" a6 s
5 C: e& C8 b+ ?: q% n解决步骤
1 z& p9 l9 u1 H2 y2 I- t0 ]" j进入SSH配置,找到#UseDNS yes (i 进入编辑模式 ESC 退出编辑模式)
% u5 M9 Y- f3 v- # vim /etc/ssh/sshd_config0 x& b! o, x( }$ g, x
6 m9 D5 X6 P) C$ }. P4 u/ t7 Q! M
[color=rgb(51, 102, 153) !important]复制代码
' y1 b5 G8 }" r5 o$ D: Y! O& Z3 d$ D5 w, T
6 k3 D) P% n2 z, E$ }( P" k5 e0 ^1 [
1 J) i3 Q6 Q+ r+ d6 e
把前面的#号删掉,然后把yes 改为no即可! 6 y# n5 S3 S0 f7 E" J6 k" l; j
) F& Q. }3 q; V' e3 U, G+ f $ r7 o8 Q- s+ p! p- J! c2 D
( U8 o# L4 H) H! |) M/ [% S
8 @4 X- {- Z, W7 ]# U然后 :wq 保存退出,再重启下ssh服务或者服务器就可以了! ; p3 |' l9 G v3 L, c
; `- D m) _) p; S: t
只重启ssh服务:
# D3 D; z. x5 Z- N! B! |0 t- service sshd restart9 J X! ]1 Y4 ]1 S
. L9 q0 j; i# x( S% ~8 b/ ~
[color=rgb(51, 102, 153) !important]复制代码2 U5 @9 _! W& b B/ J: l! ~! q
6 Z( M4 I9 K, E6 ?9 c' G' f
& _9 E+ p; a' c( `! d6 X
重启服务器 5 p* H1 Y0 @/ ~" g1 w0 T7 [
- reboot3 d7 H6 J- W$ Z9 p6 q; b( o7 A
0 L7 |4 F; {# p) v
[color=rgb(51, 102, 153) !important]复制代码- D2 S, |; d3 n- K- O+ J
9 ]' N' N. U2 \ J7 e& ~6 T5 B, L/ Z% ?! u2 X3 A
一般只需要重启SSH服务即可,下面可以去试试了 4 s8 |& k5 F) v; s$ Z. m# i; j
|