本文目录:
- 1、关闭UseDNS和GSSAPIAuthentication选项,解决ssh登录慢问题
- 2、解决Centos ssh 连接慢的问题
- 3、虚拟机器ssh登陆很慢问题解决办法
- 4、ssh 登录缓慢或者systemd-login进程cpu 100%
- 5、如何解决SSH连接Linux服务器变慢的问题
关闭UseDNS和GSSAPIAuthentication选项,解决ssh登录慢问题
编辑配置文件”/etc/ssh/sshd_config”
vim /etc/ssh/sshd_config
找到UseDNS选项,如果没有注释,将其注释
#UseDNS yes
添加
UseDNS no
找到GSSAPIAuthentication选项,如果没有注释,将其注释
#GSSAPIAuthentication yes
添加
GSSAPIAuthentication no
保存配置文件
重启OpenSSH服务器
service sshd restart
解决Centos ssh 连接慢的问题
sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
sed -i '/UseDNS yes/ a UseDNS no' /etc/ssh/sshd_config
systemctl restart sshd
GSSAPIAuthentication 当这个参数开启( GSSAPIAuthentication yes )的时候,通过SSH登陆服务器时候会有些会很慢,但有的服务器又不慢,这个问题是什么造成的 ??
还有就是在登陆慢的服务器上,修改这个 (GSSAPIAuthentication no )为关闭的时候,慢得就恢复正常。
据说是这作用 : 是否允许使用基于 GSSAPI 的用户认证。默认值为"no"。仅用于SSH-2
服务器端启用了GSSAPI。登陆的时候客户端需要对服务器端的IP地址进行反解析,如果服务器的IP地址没有配置PTR记录,那么就容易在这里卡住了。
1.UseDNS选项基本上是无用的
UseDNS选项基本上是无用的。如果客户端计算机在Internet上,则很有可能它们没有任何反向DNS,它们的反向DNS无法解析转发,或者它们的DNS除了IP地址已经告诉您的“属于此ISP”之外,不提供任何信息。
2.DNS仅用于日志记录。它可以用于身份验证
在典型配置中,DNS仅用于日志记录。它可以用于身份验证,但仅当在sshd配置中指定IgnoreRhosts no时。这是为了与使用rsh的旧安装兼容,在rsh中,您可以说“名为darkstar的计算机上名为bob的用户可以作为alice登录,而不显示任何凭据”(通过在~alice/.rhosts中写入darkstar bob)。只有信任所有可能连接到ssh服务器的计算机,才是安全的。换言之,这是非常罕见的可用的安全方式。
根据本人测试 只需要修改/etc/ssh/sshd_config的 UseDNS no 就不会缓慢了。
虚拟机器ssh登陆很慢问题解决办法
在本地虚拟机安装了linux,虚拟机器ssh登陆很慢,
经过排查发现是服务器内ssh的配置文件设置导致(默认是开启的,即使注释掉,需要开启然后按如下修改)。
/etc/ssh/sshd_config
配置文件中的UseDNS设置为yes,修改为no。
然后重启sshd服务即可。
ssh 登录缓慢或者systemd-login进程cpu 100%
项目上经常会遇到某些机器ssh登录缓慢的情况,特别是运行几年的机器。
由于systemd的低版本(42.17e)一次不能处理太多的会话(session),时间长了,会耗尽主机内存,并导致org.freedesktop.logind and org.freedesktop.systemd模块崩溃。
如何解决SSH连接Linux服务器变慢的问题
大致是有以下几种原因:
1、SERVER的SSHD会去DNS查找访问的CLIENT IP的HOSTNAME,如果DNS不可用或者没有相关记录,就会消耗一段时间。
2、在authentication gssapi-with-mic有时候也会消耗一段时间
一、测试查找具体原因:
1、使用ssh -v host进行debug
span # ssh -v 192.168.100.10/span
然后就会输出一大堆debug,通过debug信息就可以看到连接到什么地方被耽搁了
比如会显示如下信息:
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
2、检测连接时间
span # time ssh root@192.168.100.10 exit/span
二、解决方法(建议一个个设置,因为每个人连接慢的原因都不一样):
注意:修改之后记得重启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连接很慢】的内容来源于互联网,如引用不当,请联系我们修改。
网友留言: