前提:
一直在用ssh远程连接,也一直好好的,都没有出现过这种问题,每次连接等待的时间太慢了,于是特地去百度了一下,寻找解决的方法.
问题原因:
最为常见的原因是因为server的sshd会去DNS查找访问
client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间
解决方法:
-
在server上/etc/hosts文件中把你本机的ip和hostname加入(亲测没什么用)
-
在server上/etc/ssh/sshd_config文件中修改或加入UseDNS=no
虽然配置文件中[UseDNS yes]被注释点,但默认开关就是yes...(SSH服务默认启用了DNS反向解析的功能) -
在server上/etc/ssh/sshd_config文件中修改GSSAPIAuthentication yes -> GSSAPIAuthentication no
-
注释掉server上/etc/resolv.conf中所有行(关于这个方法:亲测有效,但注释了之后网络就可能有问题了,这个方法也好用,但慎用)
- 修改了server端的/etc/ssh/sshd_config文件后重启,systemctl restart sshd
转载于:https://blog.51cto.com/12191098/2352009