1

在 Live 服务器中,我们有perl 版本 5.6.1,最近我们启用了TLS 1.2,这导致错误“ 500 SSL 协商失败”。早些时候我们有 TLS 1.0,我们没有任何问题。启用 TLS 1.2 是不可避免的,这是强制性的。如何解决这个问题?

我搜索并发现必须安装 SOAP-LITE 模块才能解决上述问题,但 5.6.1 版不支持 SOAP-LITE 模块。它在活动 perl 5.8 及更高版本中可用。是否建议升级到 5.8 版本以安装soap::Lite?

我在这个项目中使用了模块MSSQL::DBLIB 和 MSSQL::SQLLIB,升级会支持这个模块吗?

4

1 回答 1

2

考虑到您的 Perl 版本有多旧,您的 OpenSSL 版本(最后用于 Perl 中的 SSL 连接)很可能也同样旧。2012 年发布的 OpenSSL 1.0.1 添加了对 TLS 1.2 的支持。Perl 5.6.1 于 2000 年发布,而在 2012 年我们已经有了 Perl 5.14。

而且,您的其他软件也不太可能过时、不受支持并且可能也不安全。

如何解决这个问题?

最后升级您长期不受支持的软件堆栈。您可以尝试仅更新 openssl 并重新构建Crypt::SSLeay(可能Net::SSLeay尚未使用)以使更改最小化,但我不确定这是否可行甚至编译。

于 2020-03-16T19:21:05.857 回答