Linuxbrew curl证书问题

gr8qqesn  于 2023-06-06  发布在  Linux
关注(0)|答案(1)|浏览(228)

我在服务器上安装了Linuxbrew。然而,当我尝试运行任何命令时,我都会遇到curl(brew用于获取其更新)的问题。通常当其他类似的工具遇到这种问题时,它们会提供一个标志来取消证书检查,而curl本身使用-k标志为您提供了这种可能性。
但是在brew的文档中我没有找到这样的标志。因此,我的第二个猜测是设置标志insecure n放在我家的.curlrc文件设置为默认值,curl不检查SSL证书。
下面是我运行bew时的输出示例:

-bash-4.1$ brew update
==> Installing dependencies for curl: patchelf, zlib, binutils, linux-headers, glibc, m4, gmp, mpfr, libmpc, isl@0.18, gcc, pkg-config and openssl
==> Installing curl dependency: patchelf
==> Downloading https://linuxbrew.bintray.com/bottles/patchelf-0.10.x86_64_linux.bottle.tar.gz

curl: (60) Peer certificate cannot be authenticated with known CA certificates
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
Error: Failed to download resource "patchelf"
Download failed: https://linuxbrew.bintray.com/bottles/patchelf-0.10.x86_64_linux.bottle.tar.gz
mhd8tkvw

mhd8tkvw1#

为了让Homebrew接受.curlrc文件中指定的选项,需要设置一个标志。
根据文件:

HOMEBREW_CURLRC

如果设置了,在调用curl(1)时不要传递--disable,这会禁用curlrc的使用。
因此,只需运行此脚本,以使homebrew忽略SSL证书验证:

echo insecure >> ~/.curlrc
HOMEBREW_CURLRC=1
export HOMEBREW_CURLRC
brew install …

相关问题