web-dev-qa-db-ja.com

nginx:ssl_stapling_verify:正確に何が検証されていますか?

正確にssl_stapling_verifyディレクティブ?回答の署名が正しいかどうかをチェックしますか?公式のnginxドキュメントはこれを説明するのが非常に曖昧です:

https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_stapling_verify

サーバーによるOCSP応答の検証を有効または無効にします。

検証を機能させるには、サーバー証明書発行者の証明書、ルート証明書、およびすべての中間証明書を、ssl_trusted_certificateディレクティブを使用して信頼できるものとして構成する必要があります。

9
Bratwurstmobil

Nginxのソースコードで見つけました。ファイル ngx_event_openssl_stapling.c#L66

OCSP_basic_verify(basic, chain, store,staple->verify ? OCSP_TRUSTOTHER :OCSP_NOVERIFY

それから、私は OCSP_basic_verify 関数をopenssl libarayで見つけました、それは言った:

次に、フラグにOCSP_NOVERIFYが含まれている場合、または署名者証明書が証明書で見つかり、フラグにOCSP_TRUSTOTHERが含まれている場合、関数はすでに成功を返します。

詳細はこちら: https://meto.cc/article/what-exactly-did-ssl_stapling_verify-verify

3
DailyiOS

ウィキペディアは 、「正式にはTLS証明書ステータス要求拡張として知られているOCSPステープリングは、X.509デジタル証明書の失効ステータスをチェックするためのオンライン証明書ステータスプロトコル(OCSP)の代替アプローチです。 CAによって署名されたタイムスタンプ付きOCSP応答を初期TLSハンドシェイクに付加(「ステープル」)することにより、OCSP応答の提供に伴うリソースコストを証明書のプレゼンターが負担できるようにし、クライアントがCAに連絡する必要がある ".

強調が追加されました。

ディレクティブは、OCSPステープリングのこの「代替アプローチ」をオンまたはオフにします。デフォルトでは、OCSPステープリングは有効になっていません。あなたはそれを有効にすることができます

ssl_stapling_verify   on;
0