现在连接linux服务器一般都是使用SSH远程连接的方式。最近新装了一台服务器,发现telnet时速度很快,ping时一切也正常,但SSH连接的时候却很慢。经过网上资料查询,大致是有以下几种原因:

1、SERVER的SSHD会去DNS查找访问的CLIENT IP的HOSTNAME,如果DNS不可用或者没有相关记录,就会消耗一段时间。
2、在authentication gssapi-with-mic有时候也会消耗一段时间

一、测试查找具体原因:
1、使用ssh -v host进行debug
# ssh -v 192.168.100.10
然后就会输出一大堆debug,通过debug信息就可以看到连接到什么地方被耽搁了
比如会显示如下信息:
[html] view plain copy
debug1: Next authentication method: gssapi-with-mic  
debug1: Unspecified GSS failure. Minor code may provide more information  
No credentials cache found

2、检测连接时间
# time ssh root@192.168.100.10 exit

二、解决方法(建议一个个设置,因为每个人连接慢的原因都不一样):

注意:修改之后记得重启sshd服务
# service sshd restart

1、关闭DNS反向解析
在linux中,默认就是开启了SSH的反向DNS解析,这个会消耗大量时间,因此需要关闭。
# vi /etc/ssh/sshd_config
UseDNS=no

在配置文件中,虽然UseDNS yes是被注释的,但默认开关就是yes

2、关闭SERVER上的GSS认证
在authentication gssapi-with-mic有很大的可能出现问题,因此关闭GSS认证可以提高ssh连接速度。
# vi /etc/ssh/sshd_config
GSSAPIAuthentication no

3、修改server上nsswitch.conf文件
# vi /etc/nsswitch.conf
找到
hosts: files dns
改为
hosts:files

hosts: files dns这一行含义是对于访问的主机进行域名解析的顺序,是先访问file,也就是/etc/hosts文件,如果hosts中没有记录域名,则访问dns,进行域名解析,如果dns也无法访问,就会等待访问超时后返回,因此等待时间比较长。
注意:如果SERVER需要通过域名访问其他服务器,则需要保留此行。

4、修改SERVER上resolv.conf文件
4.1、删除/etc/resolv.conf中所有不使用的IP。
4.2、把nameserver全部删除,问题也能解决,但是服务器就无法上网了。
4.3、如果SERVER曾经配置过双网卡,则在该文件中会有一行目前不使用的IP地址,删除该行即可。

5、修改SERVER上hosts文件
在SERVER上/etc/hosts文件中把客户端的IP和HOSTNAME加入

6、打开SERVER上的IgnoreRhosts参数
IgnoreRhosts参数可以忽略以前登录过主机的记录,设置为yes后可以极大的提高连接速度
# vi /etc/ssh/sshd_config
IgnoreRhosts yes

--------------------以上的均在SERVER上设置,以下的均在CLIENT上设置-----------------------

7、修改客户端的hosts文件
将目标SERVER的IP和域名加上去,使得本机的DNS服务能解析目标地址。
# vi /etc/hosts
192.168.100.11  doiido.com

注:hosts文件格式为'目标SERVER_IP 目标SERVER_NAME'。但是使用这个方法有一个弊端,如果需要给每台SERVER都添加一个域名解析。

8、修改客户端配置文件ssh_conf(注意,不是sshd_conf)
# vi /etc/ssh/ssh_conf
找到
GSSAPIAuthentication yes
改为
GSSAPIAuthentication no

SSH连接慢问题解决相关推荐

  1. ssh连接超时问题解决

    我们在ssh远程linux的时候 ,是不是总是自动被断开.?还需要从连.很麻烦,是吧 ? ssh连接超时问题解决方案: 修改server端的etc/ssh/sshd_config ClientAliv ...

  2. 阿里云ECS使用SSH连接CentOS 6.9经常断线的问题解决:OperationTimedOut

    阿里云ECS使用SSH连接CentOS 6.9经常断线的问题解决:OperationTimedOut 参考文章: (1)阿里云ECS使用SSH连接CentOS 6.9经常断线的问题解决:Operati ...

  3. SecureCRT使用SSH连接很慢问题解决

    刚刚装完虚拟机,而且用NAT方式使虚拟机能够上网,但是很快发现ssh连接特别慢,以下是解决方法: 1.在ssh服务端上更改/etc/ssh/sshd_config 文件中的配置为如下内容: UseDN ...

  4. SSH连接服务器自动断开问题解决

    使用ssh连接远程服务器的时候,如果长时间没有操作,远程连接就有可能中断.正在执行的程序和vim等缓冲区数据都会丢失. windows系统 使用SecureCRT连接远程服务器,在会话选项 -> ...

  5. SSH连接不上Linux的解决方法

    SSH连接不上Linux的解决方法: 连续弄了几次,今天早上终于把SSH连接虚拟机连接不通的问题解决了. 先简单说下概要: 主机装的是XP系统,虚拟机用的是red hat Linux. 我用的是nat ...

  6. ssh连接虚拟机中mysql_用SSH连接Vmware redhat虚拟机

    我在winxp的虚拟机上装了一个redhat Enterpirse Linux 4的系统,winxp的ip为192.168.10.1,redhat的ip为192.168.10.130,使用NAT方式连 ...

  7. linux ssh连接慢

    最近发现ssh连接的时候却很慢,ping的速度非常好,让人误以为是ssh连接不上. 分析结果,主要原因为:DNS的解析IP导致,可分别使用以下几种分析处理方式 1.在server上/etc/hosts ...

  8. coreelec ssh访问被拒绝_GitLab官网在线仓库SSH连接故障排查和经验总结实例

    GitLab官网在线仓库SSH连接故障排查和经验总结实例学习 GitLab在线仓库服务是世界上最大的Git仓库之一(github.gitlab和Bitbucket).那么GitLab的工程师是如何定位 ...

  9. ssh连接失败,排错经验

    ssh连接失败,排错经验 一.场景描述 ssh连接服务器,发现连接失败,但是对应服务器的ip能够ping通. 场景: [root@yl-web ~]# ssh root@10.1.101.35 ssh ...

最新文章

  1. java 负数变正数 +
  2. STM32核心板电路分析
  3. 苹果iphone手机上input的button按钮颜色显示有问题,安卓却没问题
  4. [Google Guava] 排序: Guava强大的”流畅风格比较器”
  5. Tomcat优化之配置线程池
  6. 通过常用监控命令快速发现性能问题
  7. 会员编号生成规则_单据编号规则浅析
  8. springmvc的作用:
  9. atmega328 48手动解锁 擦除
  10. 对称与非对称密钥加密
  11. 华为计算机怎么算根号,华为手机计算器的根号是什?
  12. win10DCH驱动卸载后无法安装标准驱动的问题(与首选图形处理器拒绝访问)
  13. asp 遇到过的问题集锦,附加asp语句添加数据库和生成表,asp命令更改指定文件的文件名,asp值传递的应用091116小结...
  14. Jmeter 压测分析
  15. 蓝牙耳机哪款好用?2020高性能低延迟游戏蓝牙耳机推荐
  16. 服务器 硬盘 2.5改3.5,2.5寸将取代3.5寸硬盘
  17. JBoot框架定时任务一个注解轻松带你实现
  18. 英国电信收入大增 收购EE效应初步显现
  19. 计算机二级ppt云计算,2021年全国计算机等级考试二级officeppt演示文稿题目.docx
  20. ResNet 论文概览与精读

热门文章

  1. 联想存储8GB缓存00MJ101大量现货做工精细
  2. 快玩未转变者连不了服务器,快玩游戏未转变者怎么联机 详解 | 手游网游页游攻略大全...
  3. HTTP学习笔记(适合初学)
  4. 什么是root?我来告诉你为什么它叫root
  5. SpringBoot实现zip文件下载
  6. 20190512 XTCPC游记
  7. java socket解决半包、粘包问题
  8. 什么是星际文件系统(IPFS)
  9. 利用telnet SMTP给QQ邮箱发邮件
  10. 使用MDB查看变量的值(2)