0

当我尝试从 dl.google.com 下载时,我收到此错误:

ERROR: The certificate of `dl.google.com' is not trusted.
ERROR: The certificate of `dl.google.com' hasn't got a known issuer.

这是整个命令输出

$ curl https://dl.google.com/dl/cloudsdk/release/install_google_cloud_sdk.bash
| bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3607  100  3607    0     0   2820      0  0:00:01  0:00:01 --:--:--  3125
bash: line 77: [: Files: binary operator expected
wget -O - https://dl.google.com/dl/cloudsdk/release/google-cloud-sdk.tar.gz > tm
p.4wwaU246zk/google-cloud-sdk.tar.gz
--2013-12-12 11:05:41--  https://dl.google.com/dl/cloudsdk/release/google-cloud-
sdk.tar.gz
Resolving my.proxy.com my.proxy.com)... x.x.x.x
Connecting to my.proxy.com (my.proxy.com)|x.x.x.x|:1234... conne
cted.
ERROR: The certificate of `dl.google.com' is not trusted.
ERROR: The certificate of `dl.google.com' hasn't got a known issuer.

阅读这个问题:如何在 Cygwin 的 HTTPS URL 上运行 wget 时修复证书错误?一个选项是“在 wget 命令行上添加 --no-check-certificate 选项”,但由于我使用 curl 而不是 wget,上述命令是否有类似的选项?

更新:我试过了

curl -k https://dl.google.com/dl/cloudsdk/release/install_google_cloud_sdk.ba
sh | bash

但同样的错误,代理/防火墙会阻止连接吗?

4

1 回答 1

2

原答案

您正在搜索-k或(长) --insecure.. 手册页是您的朋友;):

-k, --insecure (SSL) 此选项明确允许 curl 执行“不安全”的 SSL 连接和传输。尝试使用默认安装的 CA 证书包来确保所有 SSL 连接的安全。这使得所有被认为是“不安全”的连接都失败,除非使用 -k, --insecure。有关详细信息,请参阅此在线资源:http: //curl.haxx.se/docs/sslcerts.html

更新问题后编辑:

您表明您已经在-k此处使用该选项。我对您的代码和要完成的任务进行了更深入的研究:

您正在尝试从 google 服务器下载 shell 脚本。他们拥有受信任的证书,这意味着您需要删除它,-k因为它不安全(如名称)。

下载后直接将脚本通过管道传输到bash. 那么第一个问题是:脚本下载成功了吗?(您可以将脚本发布到某个pastebin,以便可以为我验证这一点吗?)将在回答完这些问题后继续解释

于 2013-12-12T11:31:32.760 回答