Linux SSH 登录慢主要因服务端默认启用 DNS 反向解析(UseDNS yes)和 GSSAPI 认证(GSSAPIAuthentication yes),关闭这两项即可将登录从秒级降至毫秒级;需修改 /etc/ssh/sshd_config 并重启 sshd。

Linux 通过 SSH 登录慢,多数情况不是网络或服务器负载问题,而是 SSH 服务端在连接建立初期做了不必要的 DNS 反向解析或 GSSAPI 认证等操作。只要关掉这些默认开启但实际用不到的功能,登录速度通常能从几秒降到毫秒级。
OpenSSH 默认启用 UseDNS yes,意味着每次新连接进来,sshd 都会尝试对客户端 IP 做反向 DNS 查询(即查 PTR 记录),查不到或超时就会明显拖慢登录。尤其在内网、云主机、没有配置 DNS 的环境里,这步几乎必等超时。
sudo sshd -T | grep usedns,输出 usedns yes 即表示启用/etc/ssh/sshd_config,添加或修改为 UseDNS no
sudo systemctl restart sshd(或 sudo service ssh restart)GSSAPI(如 Kerberos)在普通 Linux 环境中极少使用,但 OpenSSH 默认开启 GSSAPIAuthentication yes,会导致客户端和服务端额外协商,尤其在 DNS 不通或域控不可达时显著延迟。
sudo sshd -T | grep gssapiauthentication
/etc/ssh/sshd_config 中设为 GSSAPIAuthentication no
GSSAPICleanupCredentials no(可选,减少清理开销)服务端改完还不够,部分延迟也可能来自客户端行为,比如自动尝试多种认证方式、等待密钥代理响应等。
ssh -o GSSAPIAuthentication=no -o AddressFamily=inet user@host
ssh -o VerifyHostKeyDNS=no user@host
ssh -o StrictHostKeyChecking=accept-new user@host(仅调试用)有些情况看似是 SSH 慢,实则是底层机制或系统配置引发:
127.0.0.1 缺失),sshd 可能卡在本地域名解析/etc/pam.d/sshd 是否加载了 require_network 或自定义模块,可临时注释测试haveged 或 rng-tools 可缓解不复杂但容易忽略。重点先改 UseDNS no 和 GSSAPIAuthentication no,90% 的“SSH 登录慢”问题当场解决。
以上就是LinuxSSH登录慢怎么排查_DNS与配置优化解析【教程】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号