修复 wget 证书

修复 wget 证书

基本上,我正在测试不同版本的 OpenSSL,并且在此过程中的某个地方破坏了 wget 的证书路径。

wget https://www.google.com 

目前结果为:

ERROR: cannot verify www.google.com's certificate, issued by 'CN=Google Internet Authority G2,O=Google Inc,C=US':
Unable to locally verify the issuer's authority.
To connect to www.google.com insecurely, use `--no-check-certificate'.

这让我认为 wget 不知道在哪里寻找证书,因为ca-certificates已经安装了,如果我设置了export SSL_CERT_DIR=/etc/ssl/certs一切,直到重新启动。

我该如何永久修复此问题?我想恢复到原始状态,其中 wget 自动知道在哪里检查证书。

我可能可以在启动时设置此导出,但它的正确位置在哪里?它最初在哪里?

编辑:

在另一台服务器上,我检查了一下,环境中没有SSL_CERT_DIR变量,但 wget 工作正常。wget 如何知道在哪里查找证书?

答案1

通常,发行版会在全局wgetrc文件中指定这一点。例如,Arch Linux 在以下文件中指定了此项/etc/wgetrc

ca_certificate=/etc/ssl/certs/ca-certificates.crt

因此,只需找到您的证书所在的位置,然后将其传递给 wgetrc。

答案2

./configure它由选项在时间上设置--openssldir。wget 将在该目录中查找证书。

您可以在这里找到更多相关信息:https://unix.stackexchange.com/a/200058/39382

答案3

在 macOS 上,你可以使用以下命令wget指向该文件:cert.pem

wget --ca-certificate=/etc/ssl/cert.pem

或者在你的.wgetrc

ca-certificate = /etc/ssl/cert.pem

这适用于 macOS 10.14;文件位于同一位置的其他版本表面上应该也可以工作。

答案4

解决方案这里解决了我的问题。

基本上,您使用包管理器来安装/升级您的 ca 证书。

sudo yum install ca-certificate

相关内容