例如,运行wget https://www.dropbox.com会出现以下错误:

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

当前回答

在我的例子中,在树莓派3B上,时间是在未来(2025年),我需要使用ntpdate通过将时间传递到过去来更新到当前的本地时间,它解决了这个问题。

 $ sudo date +%Y%m%d -s "20210101"
 $ sudo ntpdate times1.mike.fi

其他回答

如果您不关心检查证书的有效性,只需在wget命令行上添加——no-check-certificate选项。这对我来说很有效。

注意:这将使您容易受到中间人(MitM)攻击,不建议在任何您关心安全性的情况下使用。

只做

apt-get install ca-certificate

We just had this same issue come up when we installed a newly minted certificate just this last week. I've also seen it two other times...yet I'm slow to learn. In all 3 cases I had to get the "intermediate certificates" and install them. In other words My cert was good but it's signer or it's signer's signer wasn't correctly installed. Make sure you go to your certificate provider's site and get the correct intermediate certificates and install them as well on your server and then this warning will go away.

可能不仅仅是上面的原因,也可能是客户没有更新列表……但我会确保这不仅仅是你没有完全安装正确的证书,然后再到客户端,并确保他们的列表更新。

我有类似的问题,并通过暂时禁用我的反病毒(卡巴斯基免费18.0.0.405)修复了它。该反病毒具有HTTPS拦截模块,自动自签名它在HTTPS响应中找到的所有证书。

来自Cygwin的Wget对AV根证书一无所知,所以当它发现网站的证书与不信任证书签署时,它会打印这个错误。

要在不禁用AV的情况下永久修复此问题,您应该将Windows证书存储中的AV根证书以.pem文件(base64编码)的形式复制到/etc/pki/ca-trust/source/anchors中,然后运行update-ca-trust

不是完全一样的问题。在docker上,我正在将我的主机文件系统挂载到/etc,其中已经安装了OpenSSL certs,这将被覆盖。

改变安装到不同的文件系统可以解决这个问题。