原文地址::解决Ubuntu SSH登录时过慢的问题_ubuntu desktop ssh很慢-CSDN博客
1、SSH 连接Ubuntu反应慢解决----SSH 连接Ubuntu反应慢解决_ubuntu ssh时慢-CSDN博客
作为服务器的Ubuntu,需要使用SSH进行远程访问。可是每次打开putty,输入用户名后,都要等上半天才提示输入密码,Google一下,发现大概有两种解决方法:
第一种方法:修改SSH配置文件
打开/etc/ssh/ssh_config文件,将其中的
GSSAPIAuthentication yes
改为
GSSAPIAuthentication no
或者将这两行注释掉。可是通过测试发现,这个方法并不奏效。
第二种方法:修改nsswitch.conf文件
将其中的一行:
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
改为
hosts: files dns [NOTFOUND=return]
重新使用putty测试,效果立即显现。
还提到一种方法,就是在/etc/hosts中加入客户端的IP地址和域名,个人认为这种方法,对于大家都访问的服务器不太契合实际,就没有测试。
在前面虽然解决了问题,但是心中总感觉还是有什么堵着的,只知其然,不知其所以然,所以继续Google就发现以下内容。
先给出两个参考的网址:
http://tech.waltco.biz/2008/02/02/ssh-slow-to-connect-in-ubuntu-710-gutsy-gibbon/
http://netbsd.gw.com/cgi-bin/man-cgi?nsswitch.conf+5+NetBSD-current
我这里也是借花献佛,把其中的内容大致翻译一下。
另外两种解决方法(经过测试都可以用):
第一种方法修改nsswitch.conf,只需要把hosts后面的mdns4去掉就行了。看来就是mdns4花费掉了大部分的时间。至于mdns4是什么还没有找到相关的内容。
第二种方法是修改sshd_config文件,在其中加上一行
UseDNS no
保存,然后使用命令:
/etc/init.d/ssh restart
重启ssh服务(一定要重启),就可以了。
nsswitch.conf是一个名称服务交换配置(name-service switch configuration)文件。对于hosts这一行,它指定了如何去查找dns主机,file dns是其默认值,而[notfound=return]([status=action])指定了不同状态时的操作,这里指没有找到就返回。
原网址: http://yhqlzz.blog.51cto.com/2557314/864683