Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Curl 确定我的openssl库的最新受支持的SSL/TLS版本?_Curl_Ssl_Openssl - Fatal编程技术网

Curl 确定我的openssl库的最新受支持的SSL/TLS版本?

Curl 确定我的openssl库的最新受支持的SSL/TLS版本?,curl,ssl,openssl,Curl,Ssl,Openssl,我在Mac上使用openssl版本0.9.8x,当我尝试卷曲到HTTPS服务器时,我得到CURL error\35:不支持的SSL协议版本 接受连接的服务器是Apache,vhost有以下两条相关线路: SSLProtocol all -SSLv2 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW 我认为我的curl版本只支持SSLv2,可能是因为它太旧了,这就是Apache拒绝连接的原因。有没有办法验证SSL/

我在Mac上使用openssl版本0.9.8x,当我尝试卷曲到HTTPS服务器时,我得到
CURL error\35:不支持的SSL协议版本

接受连接的服务器是Apache,vhost有以下两条相关线路:

SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
我认为我的curl版本只支持SSLv2,可能是因为它太旧了,这就是Apache拒绝连接的原因。有没有办法验证SSL/TLS的最新版本是否真正受支持,这样我就可以停止猜测了

作为记录,我已经尝试强制我的本地curl命令使用SSLv3,但这并不重要,我仍然会得到错误,可能是因为SSLv3不可用


编辑:服务器的版本为
1.0.1e-fips
。我在想,当使用0.9.8到>1.0或其他什么连接到服务器时,可能会出现问题,因为我的一些谷歌搜索让我相信SSLv3确实在0.9.8中得到支持。不幸的是,我无法在这台机器上重新编译PHP以使用更新的openssl=/

您会遇到此错误,因为几乎所有地方的SSLv2和v3都已停止使用。 Firefox和Chrome也停止了SSLv3

可以找到非常有用的SSL/TLS Apache 2.4操作指南

为了获得最佳安全性,您可以设置

SSLProtocol -all +TLSv1.2
“-all”参数正在删除其他SSL/TLS协议(SSLv1、SSLv2、SSLv3和TLS1)

“+TLSv1.2”参数正在添加TLSv1.2

对于更广泛的浏览器兼容性,您可以使用

SSLProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
你的密码套件

SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
也应该更新。您可以使用:

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GC$
您可以调整和更改以上任何一行,以最适合您的需要


成功实现后,您可能会希望。

这是一个Curl错误。From:“感谢您的报告。这确实是一个bug,自提交4BB74005298BBB0C51以来,我们已经在Barry Abrahamson的git中修复了它。嗯,这意味着这是服务器版本的openssl的问题,而不是我的客户机的问题?”我在想,使用0.9.8到>1.0连接服务器时可能会出现问题如果遇到支持安全重新协商的现代服务器,某些0.9.8客户端将挂起。它被固定为OpenSSL 0.9.8m。也许Curl在macosx上使用的是一个坏掉的OpenSSL。如果你从MacPorts得到Curl,我建议首先升级到最新版本。