连接linux服务器一般都是使用SSH远程连接的方式。有时,SSH连接速度很慢,但是ping时一切正常。大致是有以下几种原因:
server
的sshd
会去DNS
查找访问的client ip
的hostname
,如果DNS
不可用或者没有相关记录,就会消耗一段时间。- 在
authentication gssapi-with-mic
有时候也会消耗一段时间
测试查找具体原因:
- 使用
ssh -v host
进行debug
ssh -v IP
然后就会输出一大堆debug,通过debug信息就可以看到连接到什么地方被耽搁了
比如会显示如下信息:
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
- 检测连接时间
time ssh root@IP exit
解决方法
注意:修改之后记得重启sshd服务
service sshd restart
- 关闭DNS反向解析
在linux中,默认就是开启了SSH的反向DNS解析,这个会消耗大量时间,因此需要关闭。
vim /etc/ssh/sshd_config
UseDNS=no
在配置文件中,虽然UseDNS yes是被注释的,但默认开关就是yes
- 关闭
server
上的GSS认证
在authentication gssapi-with-mic
有很大的可能出现问题,因此关闭GSS认证可以提高ssh连接速度。
vim /etc/ssh/sshd_config
GSSAPIAuthentication no
标签:GSS,sshd,SSH,DNS,连接,ssh
From: https://www.cnblogs.com/fh-d/p/17725781.html