web-dev-qa-db-ja.com

エンタープライズルートCAおよびFirefoxのみのSEC_ERROR_UNKNOWN_ISSUERエラー

そこで、社内WebアプリでSSLを有効にできるように、ドメインにエンタープライズCAを設定する方法を試しました。私のテストベースでは、WindowsでXAMPPと.local FQDNを使用しています。 CAにMicrosoft Active Directory証明書サービスを使用しています。

(多くの)試練と苦難の後、私はほとんど機能する例を手に入れました。したがって、WebアプリはIE、Edge、Chromeで動作しますが、Firefoxでは動作しません。

Firefoxエラーは次のとおりです。

警告:潜在的なセキュリティリスクアヘッドエラーコード:

SEC_ERROR_UNKNOWN_ISSUER

発行者が不明なため、この証明書を確認できませんでした

これを複数のワークステーションでテストしたところ、同じ結果が得られました。 Firefoxが最新バージョンです。

Opensslに証明書をロードしてもエラーは発生しません。

openssl x509 -in "C:\xampp\Apache\conf\ssl.crt\certname.crt"

実行すると、以下の2つのエラーが発生します。

openssl s_client -connect server.local:443 

検証エラー:num = 20:ローカル発行者証明書を取得できません

検証エラー:num = 21:最初の証明書を検証できません

CAから「証明書チェーン」をダウンロードするオプションがありますが、これは.p7b形式で提供されます。この内容は単一の証明書です。

ファイルを.crtに変換したり、httpd-xampp.confで.p7bを使用したりしても、その後Apacheが起動しません。以下のエントリがなくても問題ありません。

SSLCertificateChainFile "conf/ssl.crt/chain-cert.crt"

何か案は?

2
James

Mozillaのドキュメントによると、FF64以降、証明書をインストールするための推奨される方法は、エンタープライズポリシーを使用することです。 (現在)開いているバグのため、ルートだけでなくすべての中間証明書を手動でインストールする必要があります。

Firefox GPOテンプレートはこちらからダウンロードできます: https://github.com/mozilla/policy-templates/tree/master/windows

About:configで「security.enterprise_roots.enabled」設定をtrueに設定することで、個別にテストできます。

より詳細な情報はここにあります: https://wiki.mozilla.org/CA/AddRootToFirefox

2
RobbieCrash