Libcurl 7.70.0-错误:14094417:SSL例程:ssl3_read_bytes:sslv3警报非法参数

问题描述 投票:0回答:1

[我在使用libcurl 7.70.0完整日志的服务器上尝试ssl时收到以下错误:

  • 正在尝试:: 1:443 ...
  • 正在尝试127.0.0.1:443 ...
  • 已连接到localhost(127.0.0.1)端口443(#0)
  • ALPN,提供h2
  • ALPN,提供http / 1.1
  • 成功设置证书验证位置:
  • CAfile:../../certs.pemCApath:无
  • TLSv1.3(OUT),TLS握手,客户端问候(1):
  • TLSv1.3(IN),TLS握手,服务器问候(2):
  • TLSv1.0(IN),TLS握手,证书(11):
  • TLSv1.0(IN),TLS握手,服务器密钥交换(12):
  • TLSv1.0(IN),TLS握手,请求CERT(13):
  • TLSv1.0(IN),TLS握手,服务器已完成(14):
  • TLSv1.0(OUT),TLS握手,证书(11):
  • TLSv1.0(OUT),TLS握手,客户端密钥交换(16):
  • TLSv1.0(OUT),TLS握手,CERT验证(15):
  • TLSv1.0(OUT),TLS更改密码,更改密码规范(1):
  • TLSv1.0(OUT),TLS握手,已完成(20):
  • TLSv1.0(IN),TLS警报,非法参数(559):
  • 错误:14094417:SSL例程:ssl3_read_bytes:sslv3警报非法参数
  • 关闭连接0

任何想法,什么会引起问题?

ssl curl libcurl
1个回答
0
投票

可以如果您的curl使用的OpenSSL中存在错误,则会导致此问题,以便它发送无效的握手消息。上游OpenSSL中几乎不可能存在这样的错误,至少有数千个程序使用了该错误,并且可能由数十亿用户使用,但是如果您使用的是您自己构建的版本或其他非标准构建的版本,则可能已引入。

如果服务器中存在错误,并且错误地中止了握手,或者正确地中止了握手但使用了错误的警报代码,则会导致此错误。特别是服务器可能不喜欢您的客户端发送的证书(链),应该使用指示证书问题的多个警报代码之一,但是使用了invalid_parameter(47)。最好的办法是查看服务器日志,以查看问题所在,和/或由于它是本地调试,因此]。

© www.soinside.com 2019 - 2024. All rights reserved.