很多的Linux用户发现连Linux服务器的时候还要再等一下才能输入密码或者等一下才能连上,时间有些过长了,现在给大家分享一下如何解决ssh登陆慢的问题,希望对大家有所帮助 。
: X" Q5 X$ Y2 E" O7 h3 }# v4 f原理 ' _6 n; R# X1 G
SSH 登录太慢可能是 DNS 解析的问题,默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。
6 O: ]! K/ F3 }: [如果这个时候 DNS 的反向解析不正确,sshd 就会等到 DNS 解析超时后才提供 ssh 连接,这样就造成连接时间过长、ssh 客户端等待的情况,一般为10-30秒左右。 # `% W4 J) x' e* M( V8 A- l8 }
! i" V4 H) ^$ \+ ^
/ N( S2 Q1 T7 S6 y% u
( A& T" Q+ M. B: u. Q/ f) t9 F# @
7 A" F# E/ [5 C: m有个简单的解决办法就是在 sshd 的配置文件(sshd_config)里取消 sshd 的反向 DNS 解析。
% c# t+ A6 t. J2 ]6 J# p( y
p! G/ [+ X& R" K% h% n# T3 }解决步骤 % `, g" r; E1 M) v, t
进入SSH配置,找到#UseDNS yes (i 进入编辑模式 ESC 退出编辑模式)
. M3 _ h+ [# p; Z/ [, D- # vim /etc/ssh/sshd_config
0 y; M j! s' L3 H7 T6 d2 h
# n1 v2 f [/ y# f, w/ m* {[color=rgb(51, 102, 153) !important]复制代码
# E$ G/ A7 y* l, A; f4 x# y" K B' q9 o' T: L [7 @
6 G. _1 |7 _& [
3 ~- J8 a0 {8 K% h6 c3 @- `6 o
% A# X+ V+ r/ N+ z/ J) m w/ p把前面的#号删掉,然后把yes 改为no即可! ) E4 j* q6 F, e& s* b3 M7 @- F
: O' e1 P8 @+ M4 g5 X7 F( X- |
) O/ P" ~ W7 W, t( E t6 C
" u7 j- X3 _2 F0 R8 p9 o J9 m e* t! `# t
然后 :wq 保存退出,再重启下ssh服务或者服务器就可以了!
|2 r) c l8 m! ]* N+ C+ E1 k
9 B. ]! r( i4 U! ?8 P只重启ssh服务:
( f8 |7 S; T2 `' V4 ]% I; o# \- service sshd restart1 t$ U/ x7 X: e9 K
+ o+ U6 f) p% M' J( z[color=rgb(51, 102, 153) !important]复制代码
% K, x1 a7 S( L4 |& |
. ?" \3 `& ]0 {- Z0 K/ t& x7 u- p, i8 H; a) m! `, h
重启服务器
# D* J# C- f- d, J- reboot# S( {: X9 w3 P$ u2 j% j) n
" \0 H9 w7 H+ O- T ^6 z1 n" X4 ?[color=rgb(51, 102, 153) !important]复制代码3 r8 D% G( u$ n% ] ]- K
B4 c n& a% Q' ]4 P" _1 f, o
7 _! n' v. A! U2 L一般只需要重启SSH服务即可,下面可以去试试了 7 g' ^0 ~/ j# g* f2 y1 L j' K
|