如何解决错误 SSL23_GET_SERVER_HELLO:sslv3 警报握手失败

Posted

技术标签:

【中文标题】如何解决错误 SSL23_GET_SERVER_HELLO:sslv3 警报握手失败【英文标题】:how to solve error SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure 【发布时间】:2015-04-21 18:04:14 【问题描述】:

community/AW_Blog:错误:14077410:SSL 例程:SSL23_GET_SERVER_HELLO:sslv3 在 magento 博客提前安装中警告握手失败

【问题讨论】:

AheadWorks 3rd 方模块有多古老?听起来 curl 事务被硬编码为使用 SSL V3,而不是协商兼容的连接。听起来您需要联系他们进行升级。 我已经升级了版本,我在 magento 连接管理器中安装任何扩展时发现错误,如果你有解决方案请帮助我 抱歉,没有将“AheadWork 安装”与 Magento Connect 连接。相关问题在这里:***.com/questions/26759383/… Magento 是否计划解决此服务器端问题?显然成为一个普遍的问题。不确定它是否只影响 1.9.1.0 或其他版本,但我现在已经体验过两次了,在两个不同的环境中有两个不同的扩展。 magento.stackexchange.com/questions/58421/… 【参考方案1】:

Magento 似乎终于解决了 Poodle 问题并在 Magento Connect 上禁用了 SSLV3。但是在左手,右手断开类型的事情中,忘记了他们提供的downloader/ 软件在它使用的一些 curl 请求中存在 SSLV3 问题并且没有提供补丁。

downloader/lib/Mage/HTTP/Client/Curl.php 是受影响的文件,需要修改 curl 请求以请求 TLS。这些线条看起来像这样:

$this->curlOption(CURLOPT_URL, $uri);
$this->curlOption(CURLOPT_SSL_VERIFYPEER, FALSE);
$this->curlOption(CURLOPT_SSL_VERIFYHOST, 2);

为 TLSV1 添加您自己的 curl 选项,如下所示:

$this->curlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');

请注意,这不在app/corelib 中,而是在downloader/lib

【讨论】:

所以如果有人知道如何编写模块来修补downloader\lib 中的内容,请随时解释它,而不是无用的“不要修改核心文件”评论。此外,“不要使用连接”不是有效的注释,因为某些模块只能通过命令行mage 供我下载它们以进行手动安装【参考方案2】:

这是与 Magento Connect 更新其服务器以不允许 SSLV3 相关的错误,但 Magento 仍在尝试使用它进行连接。我刚刚建立了一个修复程序。你可以在这里下载:https://www.dwdonline.com/blog/fix-magento-error14077410ssl-routinesssl23_get_server_hellosslv3-alert-handshake-failure.html。希望对您有所帮助!

【讨论】:

【参考方案3】:

我有一个在 Windows Server 2003 上运行 PHP 5.4 的客户端,在撰写本文时它使用 OpenSSL 0.9.8zf。我通过下载最新文件并替换 PHP 根目录中的 libeay32.dll 和 ssleay32.dll 升级到 OpenSSL 1.0.1p。这似乎解决了我的特定问题。

【讨论】:

他已经接受了一个答案,所以发布这个没有意义 只是分享信息,希望其他人觉得有用。这篇文章是这些关键字的热门搜索结果,但他的答案对我不起作用。【参考方案4】:

在我的情况下,我有 OPENSSL 0.9.8 附带的 PHP 5.3.5,我也遇到了同样的问题。 升级到 PHP 7,附带更新版本的 OPENSSL 解决了这个问题。

【讨论】:

以上是关于如何解决错误 SSL23_GET_SERVER_HELLO:sslv3 警报握手失败的主要内容,如果未能解决你的问题,请参考以下文章

Node.js使用https请求时,出现“SSL23_GET_SERVER_HELLO”错误

另一个 Paypal Curl / SSL v3 握手错误 - SSL23_GET_SERVER_HELLO:sslv3 警报握手失败

SSL库中的Firebase Firestore后端失败,通常是协议错误错误:140740B5:SSL例程:SSL23_CLIENT_HELLO:无密码

错误:错误:14077410:SSL 例程:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败

问题与解决Github 上传代码报错(error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

贝宝错误:14077410:SSL 例程:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败在 laravel