首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl Webservice SSL协商失败

Perl Webservice SSL协商失败
EN

Stack Overflow用户
提问于 2017-02-17 12:40:05
回答 1查看 294关注 0票数 0

我正在尝试使用ssl调用一个web服务。它会产生以下错误:

500 SSL协商失败:

我在论坛上搜索并应用了提供的方法,但没有一种方法有效。

我所采用的2种方法如下:

1)在调用前设置环境:

$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;

2-)将参数ssl_opts => SSL_verify_mode => 0传递给代理:

代码语言:javascript
复制
my $soap = SOAP::Lite    
     -> on_action( .... )
     -> uri($uri)
     -> proxy($proxy, ssl_opts => [ SSL_verify_mode => 0 ])    
     -> ns("http://schemas.xmlsoap.org/soap/envelope/","soapenv")
     -> ns("http://tempuri.org/","tem");
$soap->serializer()->encodingStyle(undef);

有什么解决办法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-02-17 13:18:27

..。点对点在/usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi/Net‌​/SSL.pm线路145处重置连接

您正在运行一个非常旧的Perl版本(从2004年开始)和一个旧版本的SSL库(即Crypt::SSLeay,而不是IO::Socket::SSL),我的猜测是,这与使用一个非常旧版本的OpenSSL库来支持TLS相结合。这种组合意味着不支持SNI,不支持TLS 1.2,也不支持ECDHE密码。许多现代服务器至少需要支持其中的一种。但是connection reset by peer也可能意味着某些防火墙阻塞连接,或者没有服务器监听您指定的端点。或者,这可能意味着服务器期望您使用客户端证书进行授权。很难说,但是通过数据包捕获连接,您可能会提供更多的信息。而且,如果URL是可公开访问的发布,它也将有助于调试问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42298218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档