web-dev-qa-db-ja.com

リロード/再起動時にNginxを自動的にOCSPステープル証明書にすることはできますか?

構成が再ロードまたは再起動されるたびに、NginxをプロアクティブにOCSPステープル証明書にする方法はありますか?または、ステープルされた証明書を破棄せずにリロードまたは再起動で保存するようにNginxを設定できますか? Nginxをリロードまたは再起動すると、キャッシュされたOCSPのホチキス止めの証明書がすべてクリアされたように見えます。

OSCPステープリングをテストし、Nginx1.11.4を実行して CertbotのOCSP Must-Staple TLS機能拡張を使用するUbuntu16.04.1サーバーで動作しています。私の問題は、Nginxのリロードまたは再起動時に、ステープルされた応答が保存されず、最初の訪問者に代わりにエラーページが表示されることです(これは、サーバーによってまだステープルされていない「ステープルする必要がある」証明書の予想される結果です)。

サーバーによってホストされている各Webサイトにアクセスし、Nginxが自動的にOCSPで証明書をホチキス止めしている間に、それらを数回リロードする必要があります。その後、次の再起動まですべてが再び機能し始めます。このステップを自動化するか、完全に回避したいと思います。

5
Tom Brossman

その記事はそれを行う1つの方法を説明しています: https://matthiasadler.info/blog/ocsp-stapling-on-nginx-with-comodo-ssl/

アイデアは、OCSP応答を手動でフェッチし、ssl_stapling_fileディレクティブを使用することです。

https://unmitigatedrisk.com/?p=241 詳細に説明しています:

URL = $(openssl x509 -in $ SERVER_CER -text | grep“ OCSP – URI:” | cut -d:-f2,3)

openssl ocsp -noverify -no_nonce -respout ocsp.resp -issuer\$ ISSUER_CER -cert $ SERVER_CER -url $ URL

ここで、「ocsp.resp」は、「ssl_stapling_file」用にNginxで構成したファイルです。

4
Tom