如何修复“SSL 握手失败”和“Cloudflare 525”错误?

已发表: 2022-12-05

您想知道如何修复“ SSL 握手失败”和“Cloudflare 525”错误吗? 当您的 WordPress 站点上安装了安全套接字层 (SSL) 证书时,可以确保用户与使用 HTTPS 的站点之间的安全通信。

在验证 SSL 证书并在您的网站服务器和访问者的浏览器之间建立连接时,可能会出现一些问题。

如果您遇到“SSL 握手失败”错误消息并且不确定其含义,则无需担心。

这是一个常见错误,没有提供太多信息。 然而,虽然这可能令人沮丧,但可以通过遵循一个简单的过程来解决错误。

本文将解释 SSL 握手、SSL 握手步骤、SSL 握手失败错误及其原因。 然后它将为您提供七种纠正错误的方法。

什么是 SSL 握手?

在 SSL 握手期间,网络上的设备(例如浏览器和服务器)在交换数据之前交换加密算法、密钥和有关其连接的其他信息。

当浏览器和服务器执行握手时,它们可能会请求查看彼此的 SSL 证书以验证它们。

要建立安全连接,必须首先建立 SSL 握手,这就是为什么了解 SSL 握手是什么以及在它失败时该怎么做至关重要的原因。

当客户端和服务器设置用于安全通信以及交换和验证其数字证书的加密算法和密钥时,就会发生 SSL 握手。

在网络上运行的客户端和服务器可以借助 SSL 和 TLS 协议进行安全通信。 TLS 协议取代了 SSL,但 SSL 是一个更常用的术语。

SSL 握手步骤

在 SSL 握手中,具体步骤取决于客户端和服务器使用的 SSL 版本,但通常应遵循以下步骤:

  1. 来自客户端的问候:客户端问候”消息包含有关加密的信息,包括客户端与其服务器通信所使用的 SSL 版本。 它还详细说明了客户端支持的加密算法,称为“密码套件”。
  2. Hello 是服务器的响应:server hello ”消息包含重要信息,例如所选的加密套件和数字证书。 它还可能包括对客户端证书的请求。
  3. 客户端验证服务器的证书:此外,它发送几个字节,包括一个允许客户端和服务器计算一个密钥的字节,该密钥将用于加密后续消息和“完成的”消息。 向客户端发送证书请求的服务器还将发送加密的字节字符串及其私钥和数字证书。
  4. 服务器验证客户端的证书:必须执行客户端身份验证才能执行此步骤。
  5. “我完成了,”客户端声明:在这个“完成”消息中,客户端表示握手的一部分已经完成。
  6. 服务器说,“我也完成了”:通过发送“完成”消息,服务器表示它已经完成了握手的一部分。

使用在第三步中共享的相同密钥,服务器和客户端可以在会话的其余部分交换加密消息。 对称加密被称为此。

如果一切顺利,将执行上述步骤。 但是,如果没有呢? 在以下部分中,我们将解释什么是“SSL 握手失败”错误消息以及如何解决它。

什么是 SSL 握手失败?

当无法在客户端和服务器之间建立安全连接时,会出现 SSL 握手失败错误消息。

由于以下原因,可能会出现此错误:

  • 客户端使用的日期或时间不正确。
  • 客户端浏览器的配置导致错误。
  • 客户端的第三方正在拦截连接。
  • 客户端和服务器上的 SSL 版本不同。
  • 客户端和服务器使用不同的密码套件。
  • 客户端或服务器上的证书无效。

SSL 握手失败错误消息的显示方式因您的客户端应用程序或您尝试连接的服务器而异。

另一方面,如果您使用的是 Cloudflare,则 SSL 握手失败错误将显示为 Cloudflare 525 错误。

确定了 SSL 握手失败错误的一些原因后,我们将在下一节中讨论解决该错误的一些方法。

如何修复 SSL 握手失败?

有几个潜在原因可能会导致出现“SSL 握手失败”错误消息。 因此,不可能提供该问题的简单解决方案。

因此,您可以使用各种方法一步一步地探索和解决潜在问题。 可以使用七种方法来修复 SSL 握手失败错误:

方法 1:更新您的系统日期和时间

我们要解决的第一个问题是最不可能的原因之一。 尽管如此,如果您的计算机时钟有问题,纠正起来还是很简单的。

如果您的系统使用错误的日期和时间,则不正确的日期和时间可能会干扰 SSL 握手。

如果系统时钟设置与实际时间不同,比如时间太远,可能会干扰 SSL 证书的验证。

由于人为错误或设置故障,您计算机上的时钟可能设置不正确。

假设您遇到系统时间问题。 在这种情况下,最好确保它是准确的,并在必要时进行更新。

请按照以下步骤执行此操作:

  1. 转到 Windows 设置中的时间和语言
转到 Windows 设置中的时间和语言
  1. 转到日期和时间,单击立即同步,然后打开自动设置时间
转到日期和时间,单击立即同步,然后打开自动设置时间

如果您的时钟显示正确的信息,则可以安全地假设这不是“SSL 握手失败”错误消息的来源。

方法 2:检查您的 SSL 证书是否有效

SSL 证书具有到期日期,以确保其验证信息保持最新。 这些证书的有效期一般为六个月至两年。

浏览器会检测到已被吊销或过期的SSL证书,导致SSL握手无法完成。

当你网站上的SSL证书已经安装了一年多了,大概是时候重新签发了。

Qualys 等 SSL 证书检查工具可以查看您的 SSL 证书状态。

请按照以下步骤使用此工具:

  1. 主机名字段中输入您的域名。
  2. 单击提交按钮。
在主机名字段中输入您的域名,然后单击提交按钮

在检查器分析了您站点的 SSL 配置后,您将收到一些结果。 使用结果页面,您可以确定证书是否仍然有效以及它是否已因任何原因被吊销。

您必须更新您的 SSL 证书以解决握手错误并确保您的网站和 WooCommerce 商店的安全。

方法 3:为最新的 SSL/TLS 协议支持配置您的浏览器

“SSL 握手失败”错误可能是浏览器配置错误的结果。 如果某个特定浏览器出现问题,请尝试切换到另一个浏览器。

无论如何,这可以作为缩小问题范围的起点。 此外,您可以尝试禁用所有插件并将浏览器重置为默认设置。

协议不匹配是另一个可能与浏览器相关的问题。 对于只能支持TLS 1.2的服务器和只能支持TLS 1.0的浏览器,没有相互支持的协议。 因此,SSL 握手将不可避免地失败。

为确保您的浏览器支持最新的 SSL/TLS 协议,您应该对其进行配置。 请按照以下步骤执行此操作:

  1. 单击控制面板中的Internet 选项以打开Internet 属性
单击控制面板中的 Internet 选项以打开 Internet 属性
  1. 转到“高级”选项卡。
  2. 选中使用 TLS 1.2旁边的框。

注意:通常,不建议选中使用 SSL 2.0使用 SSL 3.0旁边的框。

  1. 单击“应用”按钮,然后单击“确定”按钮以保存更改。
转到“高级”选项卡,选中“使用 TLS 1.2”旁边的框,单击“应用”按钮,然后单击“确定”按钮
  1. 检查错误是否已解决。

方法 4:停用最近安装的插件或扩展

浏览器扩展和插件很可能包含恶意代码,因为通常是不知名的开发人员开发它们。

因此,如果您最近安装了其中一个并且遇到 SSL 握手错误,您应该首先卸载它并清除缓存和 cookie。

完成后,重新连接到同一网站并验证您是否可以建立安全连接。

请按照以下步骤在 Chrome 中卸载扩展程序:

  1. 单击浏览器右上角的菜单图标
  2. 单击设置
单击菜单图标,然后单击设置
  1. 单击扩展选项。
点击扩展选项
  1. 选择您最近安装的扩展,然后单击删除
选择您最近安装的扩展,然后单击删除

方法 5:协议不匹配

SSL 握手问题通常可归因于客户端和服务器之间的协议不匹配。

为使握手成功,Web 服务器和浏览器必须支持 SSL/TLS 协议的确切版本。

当服务器运行的协议版本比客户端的版本高得多时,有时会发生 SSL 握手错误。

如果服务器使用 TLS 1.3 而浏览器使用 TLS 1.1,则 SSL 握手可能会失败,因为服务器不支持旧版本的 TLS。

要解决此问题,您应该将浏览器重置为默认设置并在没有任何扩展的情况下使用它。 请按照以下步骤在 Chrome 浏览器上执行此操作:

  1. 单击浏览器右上角的菜单图标
  2. 单击设置
点击设置
  1. 单击重置并清理选项。
点击系统选项
  1. 单击将设置恢复为原始默认值选项。
单击将设置恢复为原始默认值选项

方法 6:暂停 Cloudflare 以测试您的 SSL 证书

如果您使用的是 Cloudflare,“SSL 握手失败”错误可能是由它与您的网站之间的连接问题引起的。 暂时禁用它是最方便的测试方法。

幸运的是,Cloudflare 提供了一个“暂停”功能,可以随时使用它来暂时禁用该服务。

建议您在执行此操作后清除浏览器的缓存以重新访问您的网站。

您应该联系 Cloudflare 以确定 SSL 握手错误的原因以及问题是否已解决。

在您等待响应时,请确保 CDN 已禁用,以便其他用户也可以访问您的网站。

或者,如果 SSL 错误仍然存​​在,则问题可能是由于服务器上的配置错误造成的。

方法 7:确保密码套件匹配

如果您仍未确定 SSL 握手失败的原因,则可能与密码套件之间的不匹配有关。

简而言之,密码套件是一组用于保护 SSL 和 TLS 网络连接的算法,包括用于加密密钥交换数据、批量加密和消息身份验证的算法。

如果服务器的密码套件与 Cloudflare 使用的密码套件不兼容,这可能会导致出现“SSL 握手失败”消息。

再一次,Qualys 的 SSL 服务器测试是确定密码套件之间是否存在不匹配的宝贵工具。

请按照以下步骤使用此工具:

  1. 主机名字段中输入您的域名。
  2. 单击提交按钮。
在主机名字段中输入您的域名,然后单击提交按钮

之后,您将看到一个摘要分析页面。 在密码套件部分下,您可以找到密码信息。

使用此页面,您可以确定服务器支持哪些密码和协议。 您应该特别注意那些处于“弱”状态的人。 本节还详细描述了构成密码套件的算法。

要解决此问题,您可以使用 Qualys SSL/TLS Capabilities of Your Browser 工具将结果与浏览器的支持进行比较。

结论

本文已经解释了什么是 SSL 握手、什么是 SSL 握手步骤、什么是 SSL 握手失败错误以及导致它的原因。 然后它将为您提供七种纠正错误的方法。

请接受我们真诚的感谢您抽出时间阅读本文。 欢迎大家在评论区提出问题和意见。

如果您关注我们的 Facebook 和 Twitter 页面,您将能够收到我们最新文章的通知。