2017-02-09 50 views
3

我一直在这个问题上googling了一段时间,但我还没有找到一个解决方案的工作。 问题是SSH登录到我的服务器突然很慢。我可以看到它需要大约10秒的认证比之前的能继续下去,这是我的ssh详细日志:ssh缓慢认证可以继续

OpenSSH_7.3p1, LibreSSL 2.4.1 
debug1: Reading configuration data /etc/ssh/ssh_config 
debug1: /etc/ssh/ssh_config line 20: Applying options for * 
debug1: Connecting to 54.86.29.78 [54.86.29.78] port 22. 
debug1: Connection established. 
debug1: key_load_public: No such file or directory 
debug1: identity file .ssh/id_rsa type -1 
debug1: key_load_public: No such file or directory 
debug1: identity file .ssh/id_rsa-cert type -1 
debug1: Enabling compatibility mode for protocol 2.0 
debug1: Local version string SSH-2.0-OpenSSH_7.3 
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4 
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4 pat OpenSSH_6.6.1* compat 0x04000000 
debug1: Authenticating to 54.86.29.78:22 as 'perfeyhe' 
debug1: SSH2_MSG_KEXINIT sent 
debug1: SSH2_MSG_KEXINIT received 
debug1: kex: algorithm: [email protected] 
debug1: kex: host key algorithm: ecdsa-sha2-nistp256 
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none 
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none 
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY 
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:g/REeuiZutP7YHv6WJR/vhm4kROJQ+9e0ODdd1Tuvpc 
debug1: Host '54.86.29.78' is known and matches the ECDSA host key. 
debug1: Found key in /Users/admin/.ssh/known_hosts:3 
debug1: rekey after 134217728 blocks 
debug1: SSH2_MSG_NEWKEYS sent 
debug1: expecting SSH2_MSG_NEWKEYS 
debug1: rekey after 134217728 blocks 
debug1: SSH2_MSG_NEWKEYS received 
debug1: SSH2_MSG_SERVICE_ACCEPT received 
---------------------------------- 
takes about 10s 
---------------------------------- 
debug1: Authentications that can continue: publickey,password,keyboard-interactive 
debug1: Next authentication method: publickey 
debug1: Trying private key: .ssh/id_rsa 
debug1: Authentication succeeded (publickey). 
Authenticated to 54.86.29.78 ([54.86.29.78]:22). 
debug1: channel 0: new [client-session] 
debug1: Requesting [email protected] 
debug1: Entering interactive session. 
debug1: pledge: network 
debug1: Sending environment. 
debug1: Sending env LANG = zh_CN.UTF-8 
Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-74-generic x86_64) 

和附件是我从Wireshark的看到: enter image description here

回答

2

延迟是在服务器上,所以你不能看到任何重要的客户端日志或客户端wireshark转储。

有几种可能会导致这种情况,但最有可能的是在服务器sshd_config中启用UseDNS。尝试禁用它(将UseDNS no写入/etc/ssh/sshd_config),重新启动sshd服务(service sshd restart)并重试。

如果没有帮助,请在同一个文件中设置DEBUG3LogLevel,重新启动并查看服务器日志“挂起”的位置以及它的等待状态。

+0

yes,它确实有效,UseDNS默认为yes –

0

我解决了这个问题,如下所示:

systemctl restart systemd-logind 

由@HBruijn在这个线程的答案发现这一点:https://serverfault.com/questions/707377/slow-ssh-login-activation-of-org-freedesktop-login1-timed-out

+0

感谢您的回复,我使用的是UBUNTU 14.4,但没有名为systemd-logind的服务。 –

+0

但是我的网络可能有点问题,当我使用ssh -vvv的时候,我可以看到发送数据包的时间开销:类型50和接收数据包:类型51.我尝试了其他终端在不同的网络环境中,他们赢得了'成本如此之长。 –

+0

sudo restart systemd-logind –