解决SSH服务连接缓慢、超时等问题(How to fix ssh connection slow and timeout)

笔者有一台CentOS 7系统的Linux服务器,在通过ssh远程连接的时候,一直存在两个问题。
一是连通速度缓慢,ping服务器速度很快,但是SSH连接的响应非常慢。
再有就是连接一段时间,客户端这边如果没有操作和输入,服务器就会自动断开,每次都要重新连,很麻烦。

昨天晚上仔细检查了一下CentOS 7 sshd的配置,终于解决了这两个问题。其实很easy,修改CentOS默认的sshd配置就行了。

针对第一个ssh连接响应缓慢的问题,在/etc/passwd文件里这样配置就行了:

大概是在第129行的位置,找到UseDNS选项,取消前面的注释,将yes改为no即可:

1
2
3
4
5
6
7
127 #ClientAliveCountMax 3
128 #ShowPatchLevel no
129 UseDNS no
130 #PidFile /var/run/sshd.pid
131 #MaxStartups 10:30:100
132 #PermitTunnel no
133 #ChrootDirectory none

针对第二个连接超时timeout的问题,同样是修改sshd配置,大概在第126行的位置,找到选项ClientAliveInterval,将其值修改为30:

1
2
3
4
5
6
123 UsePrivilegeSeparation sandbox          # Default for new installations.
124 #PermitUserEnvironment no
125 #Compression delayed
126 ClientAliveInterval 30
127 #ClientAliveCountMax 3
128 #ShowPatchLevel no

这样ssh服务器就会每隔30秒判断一次客户端是否超时,由于30秒一般是不会超时的,所以连接就能持续。
而第127行的选项也可以关注一下,它代表的是最大的超时次数。

完美修复文章开头提到的两个问题。

解决MongoDB在NUMA架构服务器中的告警(Fix MongoDB NUMA WARNING) 乌江杂记
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×