Debian 系统通过 SSH 登录慢,通常是以下几个常见原因导致的。你可以按顺序排查:
SSH 服务端默认会尝试对客户端 IP 做 反向 DNS 解析(PTR),如果 DNS 服务器响应慢或不可用,就会卡住几秒到几十秒。
编辑 SSH 服务端配置:
sudo nano /etc/ssh/sshd_config
找到或添加:
UseDNS no
然后重启 SSH:
sudo systemctl restart ssh
✅ 通常这一步就能明显提速。
SSH 会尝试 GSSAPI 认证(常用于 Kerberos),在没配置时也会拖慢登录。
在 sshd_config 中:
GSSAPIAuthentication no
重启 SSH 服务。
某些 PAM 模块在登录时执行慢,尤其是:
/var 磁盘满journalctl -u ssh
或临时测试:
ssh -v user@host
看卡在哪一步。
如果是 第一次连接慢,可能是:
客户端也可禁用 GSSAPI:
# ~/.ssh/config
Host *
GSSAPIAuthentication no
老旧虚拟机或容器环境,随机数生成慢,可能影响密钥交换。
cat /proc/sys/kernel/random/entropy_avail
如果长期很低,可考虑安装 haveged(不推荐在新系统长期使用)。
可用:
time ssh user@host echo ok
对比本地和远程差异。
UseDNS no
GSSAPIAuthentication no
然后:
sudo systemctl restart ssh
如果你愿意,可以贴一下:
ssh -v 的输出我可以更精确地帮你定位。