如何解决“错误:1408F10B:SSL例程:ssl3_get_record:版本号错误”?

Tah*_*ram 21 ssl

我是 HTTP 新手。在我们与另一个系统集成的应用程序中,我们获得了 HTTPs URL 及其证书。我们的团队在测试存储中添加了这些证书。现在,当我们在这些 URL 上发送请求时,我们会收到 \xe2\x80\x9cUnsupported 或 unrecognized SSL message\xe2\x80\x9d。

\n

如果我在该 URL 上执行curl -v,则会收到错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误。\n在此输入图像描述\n这是我们这边的问题还是需要由与我们共享这些 URL 的其他系统来修复。

\n

这两个错误是由于同一原因造成的吗?

\n

Ste*_*ich 19

服务器很可能根本不支持 TLS。

客户端将从 TLS 握手开始,服务器将使用一些非 TLS 响应来回复此握手。不过,客户端希望服务器完成其 TLS 握手的部分。因此,它会尝试将服务器的响应解释为 TLS。这将导致奇怪的错误消息,具体取决于客户端使用的 TLS 堆栈。

对于基于 OpenSSL 的堆栈,通常会导致wrong version number,因为尝试提取预期 TLS 记录的 TLS 版本号并得到一些意外结果,因为服务器实际上并未发送 TLS 记录。

这是我们这边的问题还是需要由与我们共享这些 URL 的其他系统来解决。

如果这正是您应该使用的 URL(即不只是在您的网站上更改为http://https://,那么很可能是服务器端问题。但这也可能是服务器网络路径中某些中间件或软件的问题,例如某些防病毒软件、防火墙或强制门户劫持您的数据并拒绝访问远程系统并显示错误消息。


Rob*_*lli 5

就我而言,我在 apache2 上有另一个配置错误的虚拟主机。在另一个错误的虚拟主机上,端口 443 上有一个http虚拟服务器!

第二个虚拟主机是正确的,但 apache 不能在同一端口上为不同的虚拟主机使用不同的协议。

删除端口 443 上的 http 配置后,所有其他 https 主机均正常工作并出现错误

error:1408F10B:SSL routines:ssl3_get_record:wrong version number"

消失了