最近在写一个服务器监控服务,发现使用 Python 连接 Linux 时非常慢,总是要停顿等待一会儿才能连接上,主要是因为 OpenSSH 服务器有一个 DNS 查找选项 UseDNS 默认情况下是打开的,本文就介绍一下如何通过关闭 UseDNS 加速 SSH 登录。
1、编辑sshd_config
文件
vi /etc/ssh/sshd_config
2、把UseDNS
和GSSAPIAuthentication
的值修改为no
UseDNS no
## GSSAPI options
GSSAPIAuthentication no
3、重启sshd
服务生效
service sshd restart
UseDNS 选项打开状态下,当通过终端登录 SSH 服务器时,服务器端先根据客户端的 IP 地址进行 DNS PTR 反向查询出客户端的主机名,然后根据查询出的客户端主机名进行 DNS 正向 A 记录查询,验证与其原始 IP 地址是否一致,这是防止客户端欺骗的一种措施,但一般我们的是动态 IP 不会有 PTR 记录,打开这个选项没什么用,不如关闭。
GSSAPI ( Generic Security Services Application Programming Interface) 是一套类似 Kerberos 5 的通用网络安全系统接口。该接口是对各种不同的客户端服务器安全机制的封装,以消除安全接口的不同,降低编程难度。但该接口在目标机器无域名解析时会有问题。