一般的には問題なく動作するサーバーがありますが、SSLで接続しようとすると20秒間停止します(SSHまたはHTTPSのどちらでも同じパターンが表示されます)。
Telnetなど、SSLを使用しないさまざまな接続を試しました。
telnet server-name 80
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の場合、再接続するたびに遅くなります。ただし、閉じられない接続は引き続き高速で機能します。
Firebugに表示されるネット情報のスクリーンショットを追加しています。ご覧のとおり、新しい接続が試行されるたびに、20秒です。 htopを使用したサーバーの使用状況を見ると、CPUは0%であり、何かが発生すると、1分間で0.01%のフーピーになります。使用レポート。したがって、サーバー全体はまったくペグされていません(つまり、この時点ではテストサーバーであり、他のユーザーからのヒットはまだありません)。
だから私の質問は:何がそのような減速を引き起こす可能性がありますか?
OpenSSLが/ dev/randomを使おうとしているのではないかと思ったのですが、そのような問題について聞いたことがありません。ランダムデバイスは、そのVPSではまったく出力しません。ただし、/ 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
SSH2でも発生するため、Apache2の設定自体は直接問題にはなりません。
また、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秒間ハングする理由がよくわかりません...
127.0.0.1アドレスを除くすべての127.0.0.0をブロックしていることがわかりました(さかのぼります-コメントを参照)。
Debian、つまりUbuntuは、ドメイン名を使用して、127.0.1.1の/etc/hosts
にエントリを定義します。 /etc/hosts
ファイルの先頭に次のようなものが表示されます。
127.0.1.1 hostname.example.com hostname
ファイアウォールを確認する必要があり、実際にはすべて127.x.x.xを開くことにしました。すべてがプライベートネットワークの一部であり、これらはすべて安全なIPだからです。