• linux ssh登录时间长


    在ssh到linux的时候发现 输入完  ssh xx@xxx.xxx.xxx.xxx之后,需要等待很长时间才能输入密码之类的东西。

    以下摘自网络

    近几天通过SSH登录局域网内的一台机器时,在输入用户名后,得等10多秒后才会有响应回来,很慢,但PING的时候TTL时间很快,那机器负载也蛮小的。这个小问题存在了几天,一直没顾上解决,今天在网上查了些资料,终于知道的这个问题产生的原因。


    原因之一是因为LINUX系统的一个文件/etc/nsswitch.conf ,在这里面有如下一行
    hosts: files dns
    这行的含义是对于访问的主机进行域名解析的顺序,是先访问file,也就是/etc/hosts文件,如果hosts中没有记录域名,则访问dns,进行域名解析,如果dns也无法访问,就会等待访问超时后返回,因此等待时间比较长。
    解决这个问题有以下几个方法:

      1. 在server上/etc/hosts文件中把你本机的ip和hostname加入,改后便可生效;

      2. 在server上/etc/ssh/sshd_config文件中修改或加入UseDNS=no,然后/etc/init.d/ssh restart使配置生效;

      3. 修改server上/etc/nsswitch.conf中hosts为hosts: files,改后便可生效; #我访问慢的原因就是因为上边这个原因,通过上边几个方法都能解决掉

    另外一个原因可能是
    authentication gssapi-with-mic出现问题,在server上/etc/ssh/sshd_config文件中修改GSSAPIAuthentication no.

    /etc/init.d/sshd restart重启sshd进程使配置生效。 如果以上两招还不能解决问题,善于使用DEBUG MODE ssh -v来查看log,找到停滞时间最长的步骤,然后针对性的修改配置解决。


    之前是在centos下尝试的,最近使用Ubuntu 12.04.2 LTS,也发现了这个问题,通过3能够解决,但是上网的时候,导致dns无法解析的副作用,又尝试了一下,发现在文件 /etc/ssh/ssh_config 中屏蔽

    #    GSSAPIAuthentication yes
    #    GSSAPIDelegateCredentials no

    也能就能解决问题了。

  • 相关阅读:
    稳定性「三十六计」- 无状态化
    设置默认的超时和重试是一个基础设施的基本素养
    「前任的50种死法」开发踩坑案例--慢就是错
    稳定性「三十六计」- 配额管控
    编写代码的「八荣八耻」- 以开关上线为荣,以自信编码为耻
    Kubernetes的DaemonSet(下篇)
    使用Elasticsearch的动态索引和索引优化
    Kubernetes的DaemonSet(上篇)
    程序媛的人生观
    Kubernetes的污点和容忍(下篇)
  • 原文地址:https://www.cnblogs.com/cyttina/p/2939259.html
Copyright © 2020-2023  润新知