curl证书过期_macos-如何修复curl:(60)SSL证书:无效的证书链

macos-如何修复curl:(60)SSL证书:无效的证书链

我在Mac OSX 10.9(Mavericks)上运行curl https://npmjs.org/install.sh | sh时遇到以下错误:

install npm@latest

curl: (60) SSL certificate problem: Invalid certificate chain

More details here: http://curl.haxx.se/docs/sslcerts.html

我该如何解决?

8个解决方案

66 votes

在Mac OS X 10.9(Mavericks)上使用Safari浏览器(不是Chrome,Firefox或Opera),请访问[https://registry.npmjs.org]

单击显示证书按钮,然后选中标记为始终信任的复选框。 然后单击继续,并根据需要输入密码。

现在,Curl应该可以正确使用该URL。

Lewis Buckley answered 2020-08-09T04:58:23Z

32 votes

首先,您应该警惕引发SSL错误的网址。 话虽如此,您可以使用以下命令抑制curl中的证书错误

curl -k https://insecure.url/content-i-really-really-trust

Steen answered 2020-08-09T04:58:43Z

18 votes

问题是到期的中间证书不再使用,必须删除。 这是Digicert的博客文章,解释了该问题及其解决方法。

[HTTPS://blog.dig ice RT.com/expired-intermediate-certificate/]

我看到了Github无法在Safari和命令行中通过git pull通过SSL加载的问题。 一旦我删除了旧的过期证书,一切都很好。

grempe answered 2020-08-09T04:59:13Z

8 votes

更新到OS X 10.9.2之后,我开始遇到Homebrew,Textmate,RVM和Github无效的SSL证书问题。

当我启动brew update时,出现以下错误:

fatal: unable to access 'https://github.com/Homebrew/homebrew/': SSL certificate problem: Invalid certificate chain

Error: Failure while executing: git pull -q origin refs/heads/master:refs/remotes/origin/master

通过禁用Git中的SSL验证,我能够缓解某些问题。 从控制台(又称外壳或终端):

git config --global http.sslVerify false

我很推荐这样做,因为它违反了SSL的目的,但这是我发现的唯一可行的建议。

我尝试了rvm osx-ssl-certs update all,内容为Already are up to date.

在Safari中,我访问了[https://github.com]并尝试手动设置证书,但是Safari并未提供信任证书的选项。

最终,我不得不重置Safari(Safari->重置Safari ...菜单)。 然后,随后访问github.com并选择证书,然后“始终信任”这感觉很不对,并删除了历史记录和存储的密码,但是它解决了我的SSL验证问题。 酸甜苦辣的胜利。

scarver2 answered 2020-08-09T05:00:00Z

8 votes

注意:此答案显然违背了SSL的目的,应尽量不要使用。

对于那些在脚本下载过程中遇到问题的脚本,这些脚本可以下载脚本并需要快速修复,请创建一个名为.curlrc的文件

与内容

--insecure

默认情况下,这将导致curl忽略SSL证书问题。

确保完成后删除文件。

更新

12天后,我收到关于此答案的反对的通知,这使我走了“嗯,我是否按照我自己的建议记得删除.curlrc?”,但发现我没有。 因此,这确实突显了遵循此方法使卷发不安全的容易程度。

ChristopherJ answered 2020-08-09T05:00:47Z

3 votes

造成此问题的另一个原因可能是您的KeyChain中的键重复。 我在两台Mac电脑上都看到了这个问题,其中有重复的“ DigiCert高保证EV根CA”。 一个在登录钥匙串中,另一个在系统中。 从登录钥匙串中删除证书解决了该问题。

这影响了Safari浏览器以及命令行上的git。

Matt Connolly answered 2020-08-09T05:01:12Z

1 votes

在优胜美地(10.10.1)上安装了最新的命令行工具更新(6.1)之后,我开始看到此错误。 在这种情况下,重新启动系统可修复错误(自更新以来,我尚未重新启动)。

提及这一点,以防遇到相同问题的任何人都遇到此页面,就像我一样。

zzamboni answered 2020-08-09T05:01:37Z

0 votes

在尝试了上述所有解决方案以消除“卷曲:(60)SSL证书问题:无法获取本地颁发者证书”错误之后,最终在OSX 10.9上对我有用的解决方案是:

找到curl证书PEM文件位置'curl-config --ca'-> /usr/local/etc/openssl/cert.pem

使用文件夹位置来识别PEM文件'cd / usr / local / etc / openssl'

创建cert.pem文件的备份'cp cert.pem cert pem.backup'

从curl网站下载更新的证书文件'sudo wget [http://curl.haxx.se/ca/cacert.pem']

复制下载的PEM文件以替换旧的PEM文件'cp cacert.pem cert.pem'

这是发布的解决方案的修改版本,用于更正以下Ubuntu中的相同问题:

[HTTPS://server fault.com/questions/151157/Ubuntu-10-04-curl-how-do-i-fix-update-他和-擦-bundle]

Pinnacle Systems Group answered 2020-08-09T05:02:28Z

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值