Gil*_*il' 149
有几件事可能会出错。添加-vvv
使 ssh 打印其正在执行的操作的详细跟踪,并查看其暂停的位置。
问题可能出在客户端或服务器上。
服务器上的一个常见问题是,如果您从反向 DNS 查找超时的客户端进行连接。(“反向 DNS 查找”意味着从客户端机器的 IP 地址返回到主机名。它对安全性没有真正的帮助,只是对从日志条目中诊断入侵尝试略有帮助,但无论如何默认配置都会这样做。)要关闭反向 DNS 查找,请添加UseDNS no
到/etc/ssh/sshd_config
(您需要在服务器上是 root;之后记得重新启动 SSH 服务)。
另一件可能出错的事情是GSSAPI身份验证超时。如果你不知道那是什么,你可能不会依赖它;您可以通过将行添加GSSAPIAuthentication no
到/etc/ssh/ssh_config
or ~/.ssh/config
(在客户端)来关闭它。
小智 16
让登录过程计时,看看需要多长时间:
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m45.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
Run Code Online (Sandbox Code Playgroud)
见上图 登录大约需要 45 秒 -------- 非常慢
以 root 身份登录后,编辑 sshd_config 文件并更改 UseDNS 条目,如下所示。这里我使用 sed 而不是编辑文件。
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
#UseDNS yes
[root@ISSLABNTL01 ~]# sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
UseDNS no
[root@ISSLABNTL01 ~]# service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
[root@ISSLABNTL01 ~]# exit
Run Code Online (Sandbox Code Playgroud)
让我们为登录过程计时,看看需要多长时间。
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m6.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
Run Code Online (Sandbox Code Playgroud)
看到现在花了 6 秒,我输入密码的时间。