【转载】来源:http://www.bkjia.com/xtzh/893669.html

【转载原因】:其他文章都是修改服务器端配置,但为了保证服务器端安全问题,一般情况下最好不要修改服务器端配置。因此采取修改客户机端配置。而只找到该篇文章有讲解修改客户机端配置方式。诚挚致谢!

现在连接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信息就可以看到连接到什么地方被耽搁了
比如会显示如下信息:
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文件

# vi /etc/resolv.conf

4.1、删除所有不使用的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

linux 可以PING通,但SSH连接不上,怎解决?

 

这个原因可能比较多,例如:被防火墙挡掉,ssh服务配置文件中的参数是否拒绝了连接等等。我说一种最可能出现的吧,清除/root/.ssh/known_hosts文件中和你所要连接的ip或者主机名有关的ssh加密Key。

Linux中解决SSH连接慢问题的更多相关文章

  1. linux中解决SSH连接慢问题 关键点GSSAPIAuthentication

    [root@ok 6FE5-D831]# ssh -v xxx.xxx.xxx.64 OpenSSH_5.3p1, OpenSSL Feb debug1: Reading configuration ...

  2. Putty等工具中解决SSH连接超时断开的问题

    转自:http://www.putty.ws/putty-chaoshi 1 在 linux下的ssh命令:vim /etc/ssh/ssh_config 然后找到里面的ServerAliveInte ...

  3. linux:解决SSH连接Linux超时自动断开

    用SSH登录到Linux的时候,由于默认的连接超时时间很短,经常断开! 1.修改文件 # vi /etc/ssh/sshd_config 2.重启sshd服务 # /etc/init.d/sshd r ...

  4. (转)CentOS/Linux 解决 SSH 连接慢

    CentOS/Linux 解决 SSH 连接慢 原文:http://blog.csdn.net/doiido/article/details/43793391 现在连接linux服务器一般都是使用SS ...

  5. 转载: CentOS/Linux 解决 SSH 连接慢

    CentOS/Linux 解决 SSH 连接慢 现在连接Linux服务器一般都是使用SSH远程连接的方式.最近新装了一台服务器,发现telnet时速度很快,ping时一切也正常,但SSH连接的时候却很 ...

  6. linux中的硬连接和软连接

    linux中的硬连接和软连接 linux中的硬连接和软连接 背景 连接 硬连接 软连接 example reference 背景 linux中的文件主要分3块, - 真正的数据 - 索引节点号(ino ...

  7. CentOS/Linux 解决 SSH 连接慢

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

  8. 解决SSH连接linux时长时间不操作自动断开

    最近重装Linux系统,但是这次ssh连接云服务区Linux系统时,经常出现一段时间不操作,连接自动中断,表现为光标还在闪动,但是却无法操作.只好关闭终端,重新连接,很是麻烦. 为此,通过网络查找,找 ...

  9. Windows命令行中使用SSH连接Linux

    转自 http://www.linuxidc.com/Linux/2014-02/96625.htm 1.下载: openssh for Winodws: 免费下载地址在 http://linux.l ...

随机推荐

  1. 正确使用TeamViewer VPN

    http://www.mcbbs.net/thread-222996-1-1.html

  2. BZOJ_1003_[ZJOI2006]_物流运输_(动态规划+最短路)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1003 m个码头,从1运货到m,n天每天运,其中有一些码头在特定的天里不能使用.运货的代价:在两 ...

  3. Gilde加载网络图片(一)

    前两天 一个朋友要在本地加载几M的大图 用于用户滚动查看.按照思路 是压缩后加载显示但是这样会不清晰, 其实gilde用来加载图片 很牛掰 于是了解一下 下面贴上两个工具类: package com. ...

  4. Python 实现网络爬虫小程序

    Python很简洁,也很强大,作为兴趣,值得一学!   下面这个程序实现的是从一个网站上下载图片,根据自己需要可以进行修改 import re import urllib def gethtml(ur ...

  5. 蓝桥杯--算法训练 区间k大数查询

                                                                                 算法训练 区间k大数查询   时间限制:1.0 ...

  6. Ubuntu下安装Apache2, php5 mysql

    不错的博文:http://blog.csdn.net/guaikai/article/details/6905781 1:首先安装apache:打开终端(ctrl+Alt+t), 输入命令:sudo ...

  7. JSP九大内置对象详解

    内置对象特点: 1.            由JSP规范提供,不用编写者实例化. 2.            通过Web容器实现和管理 3.            所有JSP页面均可使用 4.     ...

  8. java开发功能代码汇总

    多文件上传 http://smotive.iteye.com/blog/1903606 java 常用代码 Struts2 前后台(Action ,jsp)传值.取值 Action public Li ...

  9. Hadoop 配置好hive,第一次在conf能进入,第二次就不行了,怎么办?

    问题描述: 在 Hadoop 配置好 hive 数据仓库,在conf目录下通过hive命令进入hive数据仓库,非常顺利.  但关闭终端,第二次按这种方式却显示,无次命令. 怎么办? 解决办法: 在h ...

  10. MINA学习之体系介绍

    基于MINA应用程序结构图: 我们可以看出,MINA是应用程序(客户端或服务端)和底层基于TCP,UDP等通讯协议的网络层之间的粘合剂.而且各个模块之间是相互独立的,你只需要在MINA体 系基础上设计 ...