0

OCSP レスポンダーの前でキャッシング プロキシとして nginx を使用したいと考えています。「POST メソッドを使用する OCSP 要求は次のように構成されます。Content-Type ヘッダーの値は "application/ocsp-request" ですが、メッセージの本文は OCSPRequest の DER エンコードのバイナリ値です。」(RFC2560より)

したがって、nginx を次のように構成しました。

proxy_cache_path  /tmp/nginx/cache levels=1:2 keys_zone=my-cache:8m max_size=1000m inactive=600m;
server {
        # Make site accessible from http://localhost/
        server_name localhost;
        location / {
                proxy_pass  http://213.154.225.237:80; #ocsp.cacert.org
                proxy_cache my-cache;
                proxy_cache_methods    POST;
                proxy_cache_valid  200 302  60m;
                proxy_cache_valid  404      1m;
                proxy_cache_key        "$uri$request_body";
                expires off;
                proxy_set_header        Host            $host;
                proxy_set_header        X-Real-IP       $remote_addr;
        }
)

nginx を介して OCSP レスポンダーにアクセスでき、応答は期待どおりに受信されます - 問題ありません。問題は、nginx が応答をキャッシュしないことです。ノンスはリクエストの一部として送信されていません。Wireshark を使用して、すべてのリクエストが (HTTP レイヤーで) 同一であることを確認しました。応答をキャッシュするように nginx を構成するにはどうすればよいですか?

注、テストには次のコマンドを使用します。

openssl ocsp -issuer cacert.crt -no_nonce -CAfile CAbundle.crt -url http://localhost/ -serial <SERIAL>
4

3 に答える 3

1

OCSP 応答をキャッシュすることには、応答を構成する DER をキャッシュするだけではありません。軽量 OCSP プロファイルを調べて、レスポンダーが必要なヘッダーをレスポンスに含めていることを確認してください。

特別に構築された OCSP プロキシ キャッシュを使用することをお勧めします。たとえば、Axway の Validation Authority Repeater は適切な選択です。

于 2013-05-17T22:08:45.863 に答える