Par exemple, l'exécution wget https://www.dropbox.com
entraîne les erreurs suivantes:
ERROR: The certificate of `www.dropbox.com' is not trusted.
ERROR: The certificate of `www.dropbox.com' hasn't got a known issuer.
Par exemple, l'exécution wget https://www.dropbox.com
entraîne les erreurs suivantes:
ERROR: The certificate of `www.dropbox.com' is not trusted.
ERROR: The certificate of `www.dropbox.com' hasn't got a known issuer.
Réponses:
En regardant les solutions hacky actuelles ici, je sens que je dois décrire une solution appropriée après tout.
Tout d'abord, vous devez installer le package cygwin ca-certificates
via setup.exe de Cygwin pour obtenir les certificats.
N'utilisez PAS curl ou des hacks similaires pour télécharger des certificats (comme le conseille une réponse voisine) car cela n'est fondamentalement pas sécurisé et peut compromettre le système.
Deuxièmement, vous devez indiquer à wget où se trouvent vos certificats, car il ne les récupère pas par défaut dans l'environnement Cygwin. Si vous pouvez le faire soit avec le paramètre de ligne de commande --ca-directory=/usr/ssl/certs
(idéal pour les scripts shell), soit en ajoutant ca_directory = /usr/ssl/certs
au ~/.wgetrc
fichier.
Vous pouvez également résoudre ce problème en exécutant ln -sT /usr/ssl /etc/ssl
comme indiqué dans une autre réponse, mais cela ne fonctionnera que si vous avez un accès administratif au système. D'autres solutions que j'ai décrites n'exigent pas cela.
ln -s /etc/ssl /usr/ssl
fonctionné pour moi.
Si vous ne vous souciez pas de vérifier la validité du certificat, ajoutez simplement l' --no-check-certificate
option sur la ligne de commande wget. Cela a bien fonctionné pour moi.
REMARQUE: cela vous ouvre aux attaques man-in-the-middle (MitM) et n'est pas recommandé pour tout ce qui vous préoccupe de la sécurité.
Si le problème est qu'une autorité de certification racine connue est manquante et que vous utilisez ubuntu ou debian, vous pouvez résoudre le problème avec cette seule ligne:
sudo apt-get install ca-certificates
update-ca-certificates
résolu le problème.
update-ca-certificates
est une commande ubuntu, non disponible dans Debian.
Tout d'abord, les certificats SSL doivent être installés. Instructions (basées sur https://stackoverflow.com/a/4454754/278488 ):
pushd /usr/ssl/certs
curl http://curl.haxx.se/ca/cacert.pem | awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}'
c_rehash
Ce qui précède est suffisant pour corriger curl
, mais wget
nécessite un lien symbolique supplémentaire:
ln -sT /usr/ssl /etc/ssl
Peut-être que cela aidera:
wget --no-check-certificate https://blah-blah.tld/path/filename
J'ai le même problème et je l'ai résolu en désactivant temporairement mon antivirus (Kaspersky Free 18.0.0.405). Cet antivirus dispose d'un module d'interception HTTPS qui signe automatiquement tous les certificats qu'il trouve dans les réponses HTTPS.
Wget de Cygwin ne sait rien sur le certificat racine AV, donc quand il trouve que le certificat de ce site Web a été signé avec un certificat de non-confiance, il imprime cette erreur.
Pour résoudre ce problème de manière permanente sans désactiver AV, vous devez copier le certificat racine AV du magasin de certificats Windows vers un /etc/pki/ca-trust/source/anchors
fichier .pem (encodage base64) et exécuterupdate-ca-trust
Si vous utilisez Windows, accédez simplement au panneau de configuration, cliquez sur les mises à jour automatiques, puis sur le lien du site Web Windows Update. Suivez simplement les étapes. Au moins cela fonctionne pour moi, plus aucun problème de certificats, c'est-à-dire chaque fois que je vais sur https://www.dropbox.com comme avant.