我得到以下错误使用卷曲:

curl: (77) error setting certificate verify locations:
  CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: none

如何设置证书验证位置?


当前回答

我还安装了最新版本的ca-certificates,但仍然出现错误:

curl: (77) error setting certificate verify locations:
  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none

问题是curl希望证书位于/etc/pki/tls/certs/ca-bundle.路径下但是无法找到它,因为它位于/etc/ssl/certs/ca-certificates.crt路径下。

通过运行将我的证书复制到预期的目的地

sudo cp /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt

为我工作。如果目标目的地不存在文件夹,则需要运行命令为其创建文件夹

sudo mkdir -p /etc/pki/tls/certs

如果需要,修改上面的命令,使目标文件名与curl期望的路径匹配,即替换/etc/pki/tls/certs/ca-bundle.在错误消息中使用“CAfile:”后面的路径。

其他回答

视窗:-

证书从https://curl.se/docs/caextract.html下载 重命名cacert。Pem到curl-ca-bundle.crt 将文件添加到以下任何位置

查看详情https://curl.se/docs/sslcerts.html

我还安装了最新版本的ca-certificates,但仍然出现错误:

curl: (77) error setting certificate verify locations:
  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none

问题是curl希望证书位于/etc/pki/tls/certs/ca-bundle.路径下但是无法找到它,因为它位于/etc/ssl/certs/ca-certificates.crt路径下。

通过运行将我的证书复制到预期的目的地

sudo cp /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt

为我工作。如果目标目的地不存在文件夹,则需要运行命令为其创建文件夹

sudo mkdir -p /etc/pki/tls/certs

如果需要,修改上面的命令,使目标文件名与curl期望的路径匹配,即替换/etc/pki/tls/certs/ca-bundle.在错误消息中使用“CAfile:”后面的路径。

只要找到适合我的解决方案。

echo’cacert = / etc / ssl / certs / ca-certificates。欧洲委员会

我从这里找到了解

在git bash中运行以下命令,这对我来说很好

git config --global http.sslverify "false"

我也有同样的问题。事实证明,我的/etc/ssl/certs/ca-certificates。CRT文件格式不正确。最后一个条目是这样的:

-----BEGIN CERTIFICATE-----
MIIEDTCCAvWgAwIBAgIJAN..lots of certificate text....AwIBAgIJAN-----END CERTIFICATE-----

在-----END CERTIFICATE-----前添加换行符后,curl就可以处理证书文件了。

这是非常恼人的发现,因为我的update-ca-certificates命令没有给我任何警告。

这可能是也可能不是一个特定版本的curl问题,所以这里是我的版本,只是为了完整性:

curl --version
# curl 7.51.0 (x86_64-alpine-linux-musl) libcurl/7.51.0 OpenSSL/1.0.2j zlib/1.2.8 libssh2/1.7.0
# Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp 
# Features: IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets