一.分析原因
1.SSH的反向DNS解析会消耗大量时间
2.GSS认证会消耗时间
二.解决办法
服务器端设置
编辑sshd_config
vim /etc/ssh/sshd_config #编辑配置文件
UseDNS no #关闭DNS解析
GSSAPIAuthentication no #关闭GSS认证
IgnoreRhosts yes #忽略以前登录过主机的记录
# /etc/init.d/sshd restart #重启服务使配置生效
编辑nsswitch.conf
# vim /etc/nsswitch.conf
hosts: files dns
#这一行含义是对于访问的主机进行域名解析的顺序,是先访问file,也就是/etc/hosts文件,如果hosts中没有记录域名,则访问dns,进行域名解析,如果dns也无法访问,就会等待访问超时后返回,因此等待时间比较长。这里去掉dns。
注意:如果SERVER需要通过域名访问其他服务器,则需要保留此行。
编辑resolv.conf文件
删除所有不用的ip
2.客户端设置
修改hosts文件
# vim /etc/hosts
192.168.1.5 www.域名.com
#将目标SERVER的IP和域名加上去,使得本机的DNS服务能解析目标地址。
修改客户端配置文件ssh_conf
# vim /etc/ssh/ssh_config
GSSAPIAuthentication no