Apacheを使用してFedoraでSSLをセットアップしようとしています。
私のvhostで...
SSLCertificateFile /your/path/to/crt.crt
SSLCertificateKeyFile /your/path/to/key.key
SSLCertificateChainFile /your/path/to/DigiCertCA.crt
自己署名キーで問題なく動作しましたが、DigiCertCA crtで動作しません。
私が走るとき
service httpd restart
起動に失敗します。これは私がログで得るものです...
[Sat Jan 29 07:57:13 2011] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suex$
[Sat Jan 29 07:57:13 2011] [error] Failed to configure CA certificate chain!
どんな援助でも本当にいただければ幸いです!
ありがとう
チェーンに欠落している証明書がないことを確認します。SSLCertificateChainFile
ファイルには、最初にCAからすべての証明書があり、次にCRTの署名に使用された中間証明書まであります。それ以外の場合は、エラーを取得します。
中間証明書がない場合(Digicertページを見ると、何もないようです http://www.digicert.com/ssl-certificate-installation-Apache-ensim.htm )あなた代わりにSSLCACertificateFile
を使用する必要があります
古いスレッドへの更新...
これは、中間およびルート.crt
ファイルを新しい.ca-bundle
ファイルにまとめてCAチェーンファイルを作成したときに発生しました。問題は、最初の証明書ファイルが改行で終わっていないため、「END」行と次のBEGIN
行が次のように結合されていたことです。
-----END CERTIFICATE----------BEGIN CERTIFICATE-----
私はファイルを編集して改行を入れました。
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
そしてそれはうまくいった。
上記の修正は役立つかもしれませんが、私にとっての修正はこれでした:
リンクが行く場合:
この場合のフォーマットはp7b(PCKS#7)です。 Apacheで証明書を使用するには、これを変換する必要があります。
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
結果の.cerファイル内で、関連するCA証明書にバンドルされたx.509証明書をファイルし、これらを関連する.crtおよびca.crtファイルに分割して、通常どおりApacheにロードします。
これは元々@lynxmanへのコメントでしたが、長すぎました。
Arch LinuxでLet's Encrypt証明書を使用してこの問題が発生しました。数か月後の最初の再起動後の起動時に、httpd
サービスは次のエラーで失敗しました:
AH01903: Failed to configure CA certificate chain!
証明書は簡単で無料なので、最初に更新を試みました。私のSSLCertificateChainFile
には、2つ(?)ではなく1つの証明書がリストされていました。だから私はその行をコメントアウトしました:
#SSLCertificateChainFile "/etc/letsencrypt/live/mywebsite.com/chain.pem"
出来上がり!順調にスタートしました。 ¯_(ツ)_ /¯
証明書の保存中にdigicert中間証明書をコピーしたときに同様の問題があり、誤って証明書ファイルにいくつかの文字を入力しましたが、Apacheを再起動できませんでしたが、文字を削除してサーバーを再起動すると機能しました。