sky_cheng

导航

 

一、问题

登录ssh输入用户名后,等待很长时间20-30秒左右才显示输入密码提示框,从而导致通过jumpserver堡垒机登录主机时,报错:Authentication timeout

Opt> 3

开始连接到 root@XXXXXXXXXXX 10.0
Authentication timeout.

Opt> 

 

二、原因

在网上查了大量的资料得知可能是由于DNS解析的问题导致的,具体为server的sshd会去DNS查找访问client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间。

正常情况下默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。如果这个时候 DNS 的反向解析不正确,sshd 就会等到 DNS 解析超时后才提供 ssh 连接,这样就造成连接时间过长、ssh 客户端等待的情况,一般为10-30秒左右。有个简单的解决办法就是在 sshd 的配置文件(sshd_config)里取消 sshd 的反向 DNS 解析

 

三、解决

登录主机修改/etc/ssh/sshd_config

[root@localhost ~]# vim /etc/ssh/sshd_config

查找:UseDNS

#ShowPatchLevel no
#UseDNS yes
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Accept locale-related environment variables
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
/UseDNS          

默认是yes,使用dns解析,我们把它修改为no,禁用dns解析

#UseDNS yes
UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Accept locale-related environment variables
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

保存退出,重启sshd服务

[root@localhost ~]# systemctl restart sshd

再次通过堡垒机登录主机

Opt> 3

开始连接到 root@xxxxxxxxxxxx 10.0
Authentication timeout.

Opt> 3

开始连接到 root@xxxxxxxxxx1.2
Last login: Wed Jun 19 11:18:52 2019 from xxx.xxx.xxx.xxx
[root@localhost ~]# 

连接成功

posted on 2019-06-19 11:35  sky_cheng  阅读(5633)  评论(0编辑  收藏  举报