https 電話/サーバー ハンドシェイクに httpd を使用して Apache の VirtualHost に 2 つの CA を含める

https 電話/サーバー ハンドシェイクに httpd を使用して Apache の VirtualHost に 2 つの CA を含める

私は godaddy からサーバー証明書をロードしようとしているので、xxxxxxx.crt と bundle.crt があり、証明書の作成に使用したキー/csr を作成しました。現在、使用している電話がサーバーとハンドシェイクする必要があるため、別の証明書をロードしようとしています。その後、安全にプロビジョニングするために製造元の CA を検出できればと思っています。

私の初期設定は次のようになりました:

<VirtualHost ip.ip.ip.ip:443>
    JkMount /* worker1
    JkMount / worker1

    ServerAdmin [email protected]
    ServerName identifier.server.domain.co.uk

    SSLEngine on
    SSLVerifyClient require

    SSLCertificateFile /path/path/XXXXXXXXxxxxxxx.crt
    SSLCACertificateFile /path/path/gd_bundle-g2.crt
    SSLCertificateKeyFile /path/path/polycom.key

    SSLCertificateFile /path/path/Polycom_Root_CA.crt

    SSLVerifyDepth 10
    SSLOptions +ExportCertData

    ErrorLog logs/identifier.server.domain.co.uk-error_log
    CustomLog logs/identifier.server.domain.co.uk-access_log common
</VirtualHost>

Polycom 証明書をコメント アウトすると、エラーなしで httpd を再起動できますが、これを含めようとすると再起動が中断されます。非常に愚かなことをしているのでしょうか、それとも証明書を連結する必要があるのでしょうか。

答え1

1つの仮想ホストに2つの証明書をロードすることはできません。意味がありません

ルールは、仮想ホストごとに 1 つの x509 証明書です。

証明書に署名したチェーンに CA を追加する場合は、それらを 1 つの SSLCACertificateFile に追加するだけです。

また、2.4 では SSLCACertificateFile をスキップして、SSLCertificateFile 内のすべての証明書チェーンをリーフからルートまで追加できることにも留意してください。

答え2

Polycom CA ファイルを DER ではなく PEM としてフォーマットし、これを SSLCACertificateFile にして変更を加えることで、認識していた問題を修正しました。

SSLCertificateChainFile /path/path/gd_bundle-g2.crt

これで、電話からサーバーへのポジティブ ハンドシェイクが確立され、安全なパケットが配信されるようになりました。

関連情報