web-dev-qa-db-ja.com

SSLピアは、許容可能なセキュリティパラメータのセットをネゴシエートできませんでした

このガイド のセクション1Bに従って証明書を作成し、自分で署名し、その証明書を使用するようにApacheを設定しましたが、Webサイトを安全に表示しようとすると、Firefoxが次のエラーを出力します。

安全な接続に失敗しました

Animuson.comへの接続中にエラーが発生しました。

SSLは、最大許容長を超えるレコードを受け取りました。

(エラーコード:ssl_error_rx_record_too_long)

最初は4096で試してみました。次に、ガイドにある4096を使用する代わりに、1028を使用しました(これは使用する通常のサイズだと思いました)。 CentOS 5でApache2を使用しています...

"/etc/httpd/conf/extra/httpd-ssl.conf"から(もちろん一緒に圧縮されます):

Listen 443
SSLEngine On
SSLCertificateFile "/etc/httpd/conf/ssl/server.crt"
SSLCertificateKeyFile "/etc/httpd/conf/ssl/server.key"

何か案は?

編集

私はマイルをデフォルトのssl.keyとssl.crtディレクトリから移動し、私が覚えていない何かを実行しましたが、うまくいったようです。 「例外の追加」ページが表示され始め、ルート証明書をブラウザにインストールすると、次のエラーが表示されます。

安全な接続に失敗しました

Animuson.comへの接続中にエラーが発生しました。

SSLピアは、許容可能なセキュリティパラメータのセットをネゴシエートできませんでした。

(エラーコード:ssl_error_handshake_failure_alert)

これが何を意味するのか、それを手助けするために必要な情報が何なのか、私にはわかりません。

7
animuson

すごい!明確にするために、あなたはエラーがSSL_ERROR_HANDSHAKE_FAILURE_ALERT。調査する1つの良い方法は

openssl s_client -state -debug -showcerts -verify 0 -connect example.com:443

(そしてあらゆる種類の便利なオプション)そしてあなたは実際のサーバー名を提供するのに十分に役に立ちました。

ハンドシェイクエラーは、SSL/TLS handshake 中のエラーによって引き起こされます。証明書は問題なく取得できました。そのため、サーバーからのCertificateRequestへの応答で問題が発生したか、暗号スイートにファンキーな問題が発生したと想定しました。後者の問題には独自のエラーメッセージのセットがあり、私はそれについてもっと考えています。 Firefoxの NSSおよびSSLエラーコード は、ここで便利です。

SSLVerifyClient require Apache構成では、クライアントがサーバーを認証するための有効な証明書を提示する必要がありますが、これは確認したとおりの問題でした。

4
medina

webサーバーはクライアントに認証を要求する可能性があります... Apacheサーバーではhttpd.confにあります... "SSLVerifyClient require"これはFirefoxに "Your Certificate"をロードする必要があります...そしてCA証明書チェーンをロードする必要があります同じように。

問題は、個人またはCAサーバー証明書

cAチェーン間で関連付けられていない可能性があります。期限切れの可能性があります。破損している可能性があります。

個人証明書を再インポートしようとします。個人証明書で参照されているすべてのCAを再インポートします

HOWTOツール、オプション、暗号化、証明書の表示証明書... PKCS12ファイルから証明書をインポート* .p12サーバー、インポート、証明書ファイル* .cerチェーンによっては、これらのいくつかが必要になる場合があります

1
stopher