SSL 对等方无法协商可接受的安全参数集

ani*_*son 8 ssl httpd centos ssl-certificate apache-2.2

我按照本指南的第 1B 部分创建了一个证书并自行签署并设置 Apache 以使用该证书,但是每当我尝试安全地查看我的网站时,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"
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

编辑

我从他们默认的 ssl.key 和 ssl.crt 目录中移动了英里,我做了一些我不记得的事情,这似乎有效。它开始显示“添加例外”页面,我通过根证书安装到我的浏览器,现在它显示以下错误:

安全连接失败

连接到 animuson.com 时发生错误。

SSL 对等方无法协商可接受的安全参数集。

(错误代码:ssl_error_handshake_failure_alert)

我不知道这意味着什么,或者你可能需要什么信息来帮助我解决这个问题。

med*_*ina 5

伟大的!所以只是要清楚,你是在错误的地方SSL_ERROR_HANDSHAKE_FAILURE_ALERT。一种很好的调查方法是

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

(以及各种有用的选项)并且您提供了实际的服务器名称非常有帮助。

握手错误是由 SSL / TLS握手期间的错误引起的。我们得到的证书很好,这让我假设问题要么是CertificateRequest服务器响应失败,要么是密码套件有问题。后一个问题有它自己的一组错误消息,现在我更多地考虑它。Firefox 的NSS 和 SSL 错误代码在这里很方便。

SSLVerifyClient require 在 Apache 配置中确实需要客户端提供一个有效的证书来向服务器进行身份验证,这是您确认的问题。