很多的Linux用户发现连Linux服务器的时候还要再等一下才能输入密码或者等一下才能连上,时间有些过长了,现在给大家分享一下如何解决ssh登陆慢的问题,希望对大家有所帮助 。
, R( A, s7 K4 D" ~+ g* @原理 * G- ^5 _' m- V; V
SSH 登录太慢可能是 DNS 解析的问题,默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。 $ h+ V+ _: J* _' W! A" O
如果这个时候 DNS 的反向解析不正确,sshd 就会等到 DNS 解析超时后才提供 ssh 连接,这样就造成连接时间过长、ssh 客户端等待的情况,一般为10-30秒左右。 * C( c! d* q: [& W; t! ?
3 q* }4 E5 h7 E0 T. s% G8 n
" P2 R. S3 x' t( P
0 [& I; ^6 }. |' z7 A- j! H5 k+ o% s
( I$ o0 x8 p- r- L" E y有个简单的解决办法就是在 sshd 的配置文件(sshd_config)里取消 sshd 的反向 DNS 解析。
0 d2 ]6 _8 g/ M6 i$ i1 E0 Z" O( n; K4 V3 A9 T" W
解决步骤
4 l; Y* @8 W7 M3 D' [# S4 m7 Q进入SSH配置,找到#UseDNS yes (i 进入编辑模式 ESC 退出编辑模式) ( O3 M3 E5 x w* j
- # vim /etc/ssh/sshd_config5 K* q* U' P7 S7 I5 n1 }
( h/ z+ {. p8 \3 w7 G: O[color=rgb(51, 102, 153) !important]复制代码
9 t4 |- {' M8 ~7 u, g0 ^+ l6 @9 F+ {* h
3 U b5 p+ x! }; \$ A! d# p: o' [8 b: s7 G; ]5 g
2 d. o/ y5 z6 B5 ]" n [
把前面的#号删掉,然后把yes 改为no即可! 1 [2 ]$ K2 O; e: n) s$ Q
' a% [2 H; k1 g/ D
. G/ @+ e) r, h7 C; |
: o( x e, L* n' V$ W, o D! L& _
. s2 b/ k- E4 C% E2 L$ i) R然后 :wq 保存退出,再重启下ssh服务或者服务器就可以了!
; K+ \! O: [# x' v* q# M8 u2 {8 O- W# c9 S
只重启ssh服务:
# r5 [, ^9 a7 o T. c% ?- service sshd restart
$ w/ X, Y1 }/ I) Z. i& o
3 R4 c% P. y: j% C! s) w[color=rgb(51, 102, 153) !important]复制代码2 j+ n: m4 W1 ?9 ?! S" p b! P
) }8 B2 V* V+ f( R6 f
* ?2 Q& C, H- M+ R. w: A0 h7 z: X
重启服务器 % N6 H/ s* X* T% g* p% g+ s
; M# I/ H( z$ Z& i: m' m
[color=rgb(51, 102, 153) !important]复制代码- [9 J2 L5 f0 M8 R& [9 ?1 a
; [& h! m* H! u7 y* d3 \
$ F" p, G6 b+ H- D) H4 u一般只需要重启SSH服务即可,下面可以去试试了
: H, b! z1 m% k" l' }" L' Z |