我有一台一般工作正常的服务器,但试图连接SSL时卡住了20秒(SSH或HTTPS显示相同的模式)。
我尝试了各种不使用SSL的连接,例如telnet:
telnet server-name 80
input一个GET命令
GET http://server-name/ Host: server-name Accept: text/html, */* Accept-Language: en-us User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
答案是100%即时。
但是,当我尝试在浏览器中通过HTTPS连接到服务器,或者使用SSH连接到同一台服务器时,连接前大约需要20秒。
对于SSH,它将很好地工作(即不再缓慢)。 对于HTTPS,每次重新连接时都会很慢。 但是,没有closures的连接将继续快速运行。
我添加了在Firebug中出现的networking信息的屏幕截图。 正如我们所看到的,每次尝试新的连接时,20秒。 用htop来看服务器的使用情况,CPU是0%,当发生什么事情时,在1分钟内达到百分之零点一。 使用情况报告 所以服务器总体上并不是以任何方式挂钩的(例如,在这一点上它是一个testing服务器,我们也没有被别人点击)。
所以我的问题是:什么会导致这样的放缓?
我想也许可能是OpenSSL试图使用/ dev / random,但我从来没有听说过这样的问题。 随机设备在该VPS上根本不输出多less。 不过,/ dev / urandom工作得很好。 我可以在几秒钟内获得1Mb的随机数据。 我可以考虑什么来解决这个问题?
/etc/resolv.conf看起来像Google DNS。 应该快…
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 8.8.8.8 nameserver 8.8.4.4
请注意,Apache2设置本身不应该直接,因为它也发生在SSH …
另外我试着用ssh -vvv 。 连接是即时的。
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration data /home/alexis/.ssh/config debug1: /home/alexis/.ssh/config line 202: Applying options for do-nia2match debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Hostname has changed; re-reading configuration debug1: Reading configuration data /home/alexis/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to 178.62.213.172 [178.62.213.172] port 22. debug1: Connection established. ... debug1: SSH2_MSG_NEWKEYS received debug1: SSH2_MSG_SERVICE_REQUEST sent debug2: service_accept: ssh-userauth debug1: SSH2_MSG_SERVICE_ACCEPT received debug2: key: /home/alexis/.ssh/do-nia2match_rsa, explicit SUPER LONG PAUSE HAPPENS HERE (~20s) debug1: Authentications that can continue: publickey,password debug3: start over, passed a different list publickey,password debug3: preferred publickey,keyboard-interactive debug3: authmethod_lookup publickey ...
我不太确定为什么当发送密钥的SSH服务器将挂起20多个…