Nginx で ECC 証明書と RSA 証明書の両方を有効にすると、Nginx サーバーは重複した中間証明書を返します。

Nginx で ECC 証明書と RSA 証明書の両方を有効にすると、Nginx サーバーは重複した中間証明書を返します。

ハイブリッド モードで ECC 証明書と RSA 証明書の両方をサポートするように Nginx を構成しました。

有効にした後、以下のコマンドを使用してサーバーから完全なチェーン証明書を取得します。

openssl s_client -showcerts -connect server:443 -servername server-sni

その後、3 つの証明書、1 つのリーフ、2 つの重複した中間証明書 (中間証明書は 1 つだけのはず) を取得しました。

nginxの設定に問題は見つかりませんでした

    #rsa
    ssl_certificate /path/server_rsa-cert.pem;
    ssl_certificate_key /path/server_rsa-key.pem;
    # ecc
    ssl_certificate /path/server_ecc-cert.pem;
    ssl_certificate_key /path/server_ecc-key.pem;

次に、ECC 証明書または RSA 証明書を削除し、openssl コマンドを実行しましたが、その後は重複する中間証明書は存在しません。

したがって、中間証明書の重複は、Nginx がハイブリッド証明書モードの場合にのみ発生するようです。

これについて何か考えはありますか?

答え1

さて、いろいろ調べてみた結果、これらすべての問題は私が使用していた古い libressl バージョンが原因であることが分かりました。libressl バージョンを 2.9.2 にアップグレードし、Nginx をコンパイルすると、この問題は修正されました。

関連情報