私はdebian squeeze標準のApacheインストール(2.2)を実行し、SSLClientCertificatesを利用してユーザーを認証します。これはこれまでのところうまくいきます。
しかし、いくつかの並列リクエストのスローダウンに気づき、自分SSLSessionCache
が機能しているかどうかを確認しようとしました。
そのため、localhost / server-statusを確認すると、次のようになります。
SSL/TLS Session Cache Status:
cache type: SHMCB, shared memory: 512000 bytes, current sessions: 0
subcaches: 32, indexes per subcache: 133
index usage: 0%, cache usage: 0%
total sessions stored since starting: 0
total sessions expired since starting: 0
total (pre-expiry) sessions scrolled out of the cache: 0
total retrieves since starting: 0 hit, 0 miss
total removes since starting: 0 hit, 0 miss
実行中のようですが、SSL要求を行っても、すべてのカウンターが0のままなので、セッションはキャッシュされません。
KeepAlive Off
すべてのリクエストが新しいSSL接続を確立できるようにを設定しようとしましたが、SSLSessionCache
ステータスにカウントアップが表示されません。
これは標準のdebianからのSSLSessionCache設定mods-enabled/ssl.conf
です:
SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
SSLSessionCacheTimeout 300
SSLMutex file:${APACHE_RUN_DIR}/ssl_mutex
私${APACHE_RUN_DIR}
には、ファイル、ssl_mutex、ssl_cacheファイルはまったく表示されません。に切り替えるSSLSessionCache
と
SSLSessionCache dbm:${APACHE_RUN_DIR}/ssl_scache
このディレクトリにファイルがありますが、ステータス番号はすべてゼロのままです。
LogLevelをデバッグに設定しようとしました。sslキャッシュについて私が受け取る唯一のメッセージは次のとおりです。
$ grep cache /var/log/apache2/error.log
ssl_scache_shmcb.c(253): shmcb_init allocated 512000 bytes of shared memory
ssl_scache_shmcb.c(272): for 511920 bytes (512000 including header), recommending 32 subcaches, 133 indexes each
ssl_scache_shmcb.c(306): shmcb_init_memory choices follow
ssl_scache_shmcb.c(308): subcache_num = 32
ssl_scache_shmcb.c(310): subcache_size = 15992
ssl_scache_shmcb.c(312): subcache_data_offset = 3208
ssl_scache_shmcb.c(314): subcache_data_size = 12784
ssl_scache_shmcb.c(316): index_num = 133
Shared memory session cache initialised
ssl_scache_shmcb.c(452): [client xyz] inside shmcb_status
ssl_scache_shmcb.c(512): [client xyz] leaving shmcb_status
(読みやすさのためにログレベルを削除、プライバシーのためにIPを置き換え)
だからここに私の質問があります:
- 与えられたディレクトリにミューテックスとセッションキャッシュのファイルがないことは正しいですか?
- はいの場合、SessionCacheが機能していることをどのように証明しますか?