相信很多朋友在使用Linux系统的时候因为安全性的原因摒弃了telnet rlogin 或者 X-window,而把openssh作为自己默认的远程登录方式。
然而经常会遇到的一个情况是telnet到server速度很快,但是ssh连接的时候却很慢,大概要等半分钟甚至更久。ping的速度也非常好,让人误以为是ssh连接不上。
下面说下如何解决这样的问题,最为常见的原因是因为server的sshd会去DNS查找访问client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间。
1、在server上/etc/hosts文件中把你本机的ip和hostname加入
2、在server上/etc/ssh/sshd_config文件中修改或加入UseDNS=no,另外在authentication gssapi-with-mic也有可能出现问题,在server上/etc/ssh/sshd_config文件中修改GSSAPIAuthentication no
3、在server上/etc/nsswitch.conf中修改hosts: files dns为hosts: files
4、reboot server使配置生效/etc/init.d/sshd restart重启sshd进程使配置生效。
解决SSH连接慢的问题
本文介绍了当SSH连接速度缓慢时的解决办法。通常这可能是由于服务器的sshd尝试解析客户端IP地址导致的时间消耗。文中提供了四种解决方案:1. 在server的/etc/hosts文件中加入本机IP和hostname;2. 修改/etc/ssh/sshd_config文件设置UseDNS=no,并禁用GSSAPIAuthentication;3. 修改/etc/nsswitch.conf中的hosts配置;4. 重启sshd服务使更改生效。
1360

被折叠的 条评论
为什么被折叠?



