我需要在运行 CentOS 7 的 VPS 上升级 cURL。
我收到以下错误:
cURL Error(35): Cannot communicate securely with peer: no common encryption algorithm(s)
我之前曾使用过这里给出的答案:在 CentOS 6.3 上将 curl 升级到最新版本 但 RPM 文件的链接已经失效,我不知道该从yum-repo 页面。
非常感谢有关如何升级 curl 的帮助。
谢谢。
答案1
引用@Peps 的评论:
升级 cURL 7.42.1 之前曾帮助我解决了这个问题。这有效吗:
rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/rhel6/x86_64/city-fan.org-release-1-13.rhel6.noarch.rpm yum install libcurl
这将以安全的方式在 CentOS 6.7 上运行,并且应该是可接受的答案。基本上,它添加了一个第三方存储库,其中有人编译了 cURL 7.42 及其依赖项,保留了 CentOS 软件包名称,因此yum
将识别并安装它们作为旧版 curl 软件包的升级,而不会破坏任何依赖关系。
在 CentOS 6.7 服务器 + Plesk 12.5 上尝试过
答案2
Fedora 中有一个已知的 nss 错误,会导致 curl 出现类似的问题。请参阅 NSS 默认不启用 ECC 密码套件. 这是关于对 ECC 密码套件的一些默认支持。
检查你的 nss 版本是否也受到影响。然后你就可以升级了。
您可以按照帖子中的建议尝试:
curl -4svo/dev/null --ciphers ecdhe_ecdsa_aes_128_gcm_sha_256 https://www.example.org
或者简单地说,
curl --ciphers ecdhe_ecdsa_aes_256_sha https://www.example.org
另一个选择是升级到curl-7.43.0-1.el7
并尝试。RPM 可在此处获得:http://cbs.centos.org/koji/buildinfo?buildID=1408
进入链接并将 rpm 下载到本地硬盘。然后您可以使用
rpm
命令来升级或安装所需的软件包。- curl-7.43.0-1.el7.x86_64.rpm
- libcurl-7.43.0-1.el7.x86_64.rpm
- libcurl-devel-7.43.0-1.el7.x86_64.rpm
- curl-debuginfo-7.43.0-1.el7.x86_64.rpm
我自己还没有尝试过,所以请自行承担风险。
答案3
1)nano /etc/yum.repos.d/city-fan.repo
2)添加:
[CityFan]
name=City Fan Repo
baseurl=http://www.city-fan.org/ftp/contrib/yum-repo/rhel$releasever/$basearch/
enabled=1
gpgcheck=0
3)
yum clean all
yum install curl