Ubuntu 12.04で動作するApache 2.2.22があります。
SSLが構成されて有効になり、次のディレクティブが/etc/Apache2/mods-enabled/ssl.conf
に含まれます。
SSLSessionCache shm:/var/www/Apache-ssl-cache/ssl_scache(512000)
SSLSessionCacheTimeout 300
SSLMutex file:/var/www/Apache-ssl-cache/ssl_mutex
SSLは機能しているようです。 Windows XPのIE8でも、HTTPSを介してサイトにアクセスできます。ただし、SSLセッションキャッシュが実際に正しく機能しているかどうかはわかりません。
仮想ホストのログにこれらのINFOレベルのメッセージが多数表示されます。
[info] [client <censored>] (70007)The timeout specified has expired: SSL input filter read failed.
または
[info] [client <censored>] (70014)End of file found: SSL input filter read failed.
または
[info] [client <censored>] (70014)End of file found: SSL handshake interrupted by system [Hint: Stop button pressed in browser?!]
PRNGシードも頻繁に発生するようです。残念ながら、フォークされたApache子プロセスにPRNGがシードされていることを確実に判断することは不可能に思われます。
[info] Seeding PRNG with 656 bytes of entropy
これらのメッセージは、SSLセッションキャッシュが機能していないことを示していますか(フォークされたApache子プロセス全体で)?
[〜#〜]編集[〜#〜]
SSLセッションキャッシュをテストするためのopenssl s_client -reconnect
またはgnutls-cli -Vr
の使用について言及しているさまざまなサイトを見つけました。私は彼らが質問の一部にしか答えないと信じています:両方のプログラムdisconnectが再接続するので、SSLセッションがキャッシュされ、再利用できることのみを確認しますsequentially、ただし、キャッシュされたSSLセッションが使用できるかどうかはチェックされませんconcurrently同じクライアントに対して、複数の分岐したサーバーによって。これは実際には、HTTPS Webサイトからリソースをプルするときの最新のブラウザーでの典型的な使用シナリオです。
キャッシュされたSSLセッションを同時に使用できることを確認するには、同じSSLセッションID /キーを使用して次の接続を開く前に、最初のテスト接続を閉じないでください。残念ながら、どちらのユーティリティにもそのようなオプションはないようです。
SSL分析サイトのいずれかを使用して、確実に確認できます(例: QualysのSSLサーバーテスト )。 「セッション再開テスト」の結果を探します。「はい」と表示されれば、セッションキャッシングは機能しています。