使用ssh客户端(如:putty)链接Linux服务器,可能会等待10-30秒才有提示输入密码,严重影响工做效率。登陆很慢,登陆上去后速度正常,这种状况主要有两种可能的缘由:linux
1. DNS反向解析问题编程
OpenSSH在用户登陆的时候会验证IP,它根据用户的IP使用反向DNS找到主机名,再使用DNS找到IP地址,最后匹配一下登陆的IP是否合法。若是客户机的IP没有域名,或者DNS服务器很慢或不通,那么登陆就会很花时间。api
解决办法:安全
在目标服务器上修改sshd服务器端配置,并重启sshd服务器
vi /etc/ssh/sshd_config UseDNS no
2. 关闭ssh的gssapi认证网络
用ssh -v user@server 能够看到登陆时有以下信息:ssh
debug1: Next authentication method: gssapi-with-mic debug1: Unspecified GSS failure. Minor code may provide more information
注:ssh -vvv user@server 能够看到更细的debug信息ide
解决办法:学习
修改sshd服务器端配置.net
vi /etc/ssh/ssh_config GSSAPIAuthentication no
能够使用ssh -o GSSAPIAuthentication=no user@server登陆
GSSAPI ( Generic Security Services Application Programming Interface) 是一套相似Kerberos 5的通用网络安全系统接口,该接口是对各类不一样的客户端服务器安全机制的封装,以消除安全接口的不一样,下降编程难度,但该接口在目标机器无域名解析时会有问题,使用strace查看后发现,ssh在验证完key以后,进行authentication gssapi-with-mic,此时先去链接DNS服务器,在这以后会进行其余操做。
相关学习连接:http://www.linuxprobe.com/chapter-08/#83 |
免费提供最新Linux技术教程书籍,为开源技术爱好者努力作得更多更好:http://www.linuxprobe.com/