使用货物构建箱子时无效的SSL证书

时间:2015-05-21 08:09:19

标签: ssl github rust ssl-certificate rust-cargo

在定义依赖项(rand="0.3.0")后尝试教程(猜谜游戏)中的示例时,我得到了这个:

$ cargo build --verbose
    Updating registry `https://github.com/rust-lang/crates.io-index`
Unable to update registry https://github.com/rust-lang/crates.io-index

Caused by:
  failed to fetch `https://github.com/rust-lang/crates.io-index`

Caused by:
  [16] The SSL certificate is invalid

将此添加到货物注册表git repo,但没有成功:

[http]
    sslVerify = false

在哪里挖?

2 个答案:

答案 0 :(得分:0)

如评论中所述,这可能是您与Github之间的某人修改您的通信(MITM)或您的系统上的配置错误(如缺少证书)。 (Github方面的问题不大可能。)

首先尝试使用普通git:git clone https://github.com/rust-lang/crates.io-index.git

进行调试

要详细了解使用openssl s_client -debug -showcerts -connect github.com:443的确切失败的原因,以及它是否自行退出(因为连接工作),请按CTRL-C退出。输出包含有关遥控器提供的证书以及验证方式或验证失败的信息。

如果有人在修改您的通讯,请发布此输出以及traceroute github.com或等效的内容,以便其他人可以避开该提供商。

答案 1 :(得分:0)

我今天遇到了同样的问题,发现我的$HOME/.gitconfig有这个:

[url "git@github.com:"]
    insteadOf = https://github.com/

我添加了这个以使go get通过SSH进行私有回购。评论这个解决了错误。