解决 ssh 创建连接极慢的问题
[ 2010/10/22 11:55 | by selboo ]
做 Web 开发的工作经常需要 ssh 或者 scp 连接一堆远程主机,同样是 Linux 主机,其中一些创建 ssh 连接速度特别慢,连接建立之后执行操作速度却很正常,看来应该不是网络原因。
Google 了一下,这位老兄也遇到类似的问题,看完他描述的问题才知道可以用 ssh -v 来查看详细的连接建立过程,马上用一台建立连接很慢的主机试了一下,在一大堆输出信息中发现在这里停留最久:
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
debug1: Unspecified GSS failure. Minor code may provide more information
No credentials cache found
debug1: Unspecified GSS failure. Minor code may provide more information
debug1: Next authentication method: publickey
原来是因为尝试了个没有意义而且会失败的 gssapi-with-mic 认证方式浪费了时间,打开 /etc/ssh/ssh_config 把里面的 GSSAPIAuthentication yes 改成 no 关掉它,即可让 ssh 直接尝试美妙的 publickey 认证方式。
禁用 GSSAPIAuthentication 前后建立 ssh 连接时间的对比:
view plaincopy to clipboardprint?
rainux@mutalisk:~$ time ssh root@selboo.com.cn exit
real 0m18.488s
user 0m0.004s
sys 0m0.008s
rainux@mutalisk:~$ time ssh root@selboo.com.cn exit
real 0m3.531s
user 0m0.016s
sys 0m0.000s
rainux@mutalisk:~$ time ssh root@selboo.com.cn exit
real 0m18.488s
user 0m0.004s
sys 0m0.008s
rainux@mutalisk:~$ time ssh root@selboo.com.cn exit
real 0m3.531s
user 0m0.016s
sys 0m0.000s