web-dev-qa-db-ja.com

opensslエラー19:GoDaddyがキー入力すると「証明書チェーン内の自己署名証明書」

私のSSL証明書が適切にインストールされていることを確認する方法を理解してくれる人がいますか(または、インストールされていない理由をトラブルシューティングしてください)。

ApacheサーバーにGoDaddy SSL証明書をインストールしました。一部のユーザーはまだ問題を報告しており(IEの一部のバージョンでは、「このページは表示できません」とさらに説明なしで言う)、opensslはチェーンに「自己署名」証明書があると言います。これは自己署名証明書ではないことに注意してくださいGoDaddyによって署名されています。この記事には関連する回答がありませんでした: https://stackoverflow.com/a/4106224/1723405

これが私が取ったステップです:

ステップ1:秘密鍵を生成する

openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privateKey.key

ステップ2:GoDaddyに移動し、CSR.csrを貼り付けてキーを再生成します。

ステップ3:Apacheにcrtおよびbundleファイルをインストールして再起動します。

// In <VirtualHost>
SSLEngine on
SSLProtocol -ALL +SSLv3 +TLSv1
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
SSLVerifyClient none
SSLCertificateFile      /path/to/allthingsinsurance.net.crt
SSLCertificateKeyFile   /path/to/privateKey.key
SSLCertificateChainFile /path/to/Gd_bundle-g2.cr

% apachectl restart

手順4:複数のマシンのいずれかに移動し、opensslを使用した検証に失敗します。

% openssl s_client -connect allthingsinsurance.net:443 -showcerts -CApath /etc/ssl/certs

...lots of output, shows certs I installed...
Verify return code: 19 (self signed certificate in certificate chain)

ステップ5:オンラインSSL検証サービスにアクセスして、混合レポートを受信します。

  • whynopadlock.com:自己署名エラー
  • ssltest.net:自己署名エラー
  • ssllabs.com:ok
  • crossbrowsertesting.com:同様のエラー
6
Ben Allfree

Whynopadlock.comとssltest.netが証明書について不平を言っているのに、ssllabs.comが問題ないと言っている場合は、仮想ホストの構成を確認してください。 SSLLabs.comはSNIをサポートしていますが、なぜnopadlock.com、ssltest.net、およびIEの古いバージョンはサポートしていません。

SNIがクライアントでサポートされていない場合、Webサーバーはサーバー名を使用できなくなり、最初に一致した仮想ホストにフォールバックします。おそらく、メインWebサイトよりも優先される、テスト目的の別の仮想ホストがあるとします。

解決策は、この順序を変更するか、このホストの専用IPアドレスを使用することです。

4
Lekensteyn