例如,运行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.
例如,运行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.
当前回答
不是完全一样的问题。在docker上,我正在将我的主机文件系统挂载到/etc,其中已经安装了OpenSSL certs,这将被覆盖。
改变安装到不同的文件系统可以解决这个问题。
其他回答
看看目前的解决方案在这里,我觉得我必须描述一个合适的解决方案。
首先,您需要通过cygwin的setup.exe安装cygwin包ca-certificates以获得证书。
不要使用curl或类似的黑客来下载证书(作为相邻的回答建议),因为这从根本上是不安全的,可能会危及系统。
其次,您需要告诉wget证书的位置,因为在Cygwin环境中,默认情况下wget不会获取证书。如果您可以使用命令行参数——ca-directory=/usr/ssl/certs(最适合shell脚本)或将ca_directory =/usr/ssl/certs添加到~/,则可以这样做。wgetrc文件。
您也可以通过运行ln -sT /usr/ssl /etc/ssl来解决这个问题,这在另一个答案中指出,但只有当您对系统有管理访问权限时才会起作用。我描述的其他解决方案不需要这样做。
只做
apt-get install ca-certificate
如果您不关心检查证书的有效性,只需在wget命令行上添加——no-check-certificate选项。这对我来说很有效。
注意:这将使您容易受到中间人(MitM)攻击,不建议在任何您关心安全性的情况下使用。
多亏了丹尼斯·巴哈列夫,我破案了。
如果有人有Cygwin wget不工作,因为“证书不受信任”,并安装了ca-certificate,并拥有自动自签名所有证书的反病毒,它在HTTPS响应中发现,那么你需要:
从你的AV中获取根证书(我用浏览器获得了我的证书:打开任何https网站,检查它的证书,去证书路径选项卡,点击根证书。然后点击查看证书按钮,进入详细信息页签,点击复制到文件…按钮。在*中保存证书可以使用默认设置。cer文件)。 转换*。Cer到*.crt。可以通过以下命令使用Cygwin的OpenSSL:
openssl x509 -通知DER -in <your *. .Cer证书文件> -out <new cert>.crt . out . out
移动新*。CRT文件到ca-directory(在我的例子中是/etc/pki/tls/certs/)。
这足以让我开始工作了。
我也遇到过类似的问题,在安装新的SSL证书后,wget到我自己的实时网站返回错误。我已经检查了几个浏览器,他们没有报告任何错误:
wget——no-cache - o- "https://example.com/…"错误:' example.com '的证书不受信任。错误:' example.com '的证书没有已知的颁发者。
问题是我安装了错误的证书颁发机构。pem/。来自发行者的CRT文件。通常他们会将SSL证书和CA文件打包成zip文件,但DigiCert会将证书通过电子邮件发送给您,您必须自己找出匹配的CA。https://www.digicert.com/help/有一个SSL证书检查器,它列出了SSL权威和希望匹配的CA,如果他们同意,一个漂亮的蓝色链接图形:
SSL Cert: Issuer GeoTrust TLS DV RSA Mixed SHA256 2020 CA-1
CA: Subject GeoTrust TLS DV RSA Mixed SHA256 2020 CA-1 有效期为2020年7月16日至2023年5月31日 颁发者DigiCert全球根CA '