217 votes

Comment corriger les erreurs de certificat lors de l'exécution de wget sur une URL HTTPS dans Cygwin ?

Par exemple, en exécutant wget https://www.dropbox.com donne lieu aux 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.

294voto

DH4 Points 1896

Si vous ne vous souciez pas de vérifier la validité du certificat, ajoutez simplement l'option --no-check-certificate sur la ligne de commande wget. Cela a bien fonctionné pour moi.

REMARQUE : Cette méthode vous expose à des attaques de type "man-in-the-middle" (MitM) et n'est pas recommandée pour tout ce qui concerne la sécurité.

3 votes

Cela a marché pour moi. Les autres solutions concernant l'installation et la mise à jour des certificats n'ont pas résolu le problème. Dans mon cas particulier, il n'y a pas de problème de sécurité.

148voto

Shnatsel Points 1114

En regardant les solutions bidon actuelles ici, je sens que je dois décrire une solution correcte après tout.

D'abord, vous devez installer le paquet cygwin ca-certificates via le setup.exe de Cygwin pour obtenir les certificats.

N'utilisez PAS curl ou des astuces similaires pour télécharger des certificats (comme le conseille une réponse voisine) car qui est fondamentalement non 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 la ligne de commande --ca-directory=/usr/ssl/certs (le mieux pour les scripts du shell) ou en ajoutant ca_directory = /usr/ssl/certs a ~/.wgetrc fichier.

Vous pouvez également corriger cela en exécutant ln -sT /usr/ssl /etc/ssl comme indiqué dans une autre réponse, mais cela fonctionnera uniquement si vous avez un accès administratif au système. Les autres solutions que j'ai décrites ne nécessitent pas cela.

5 votes

Merci pour cette réponse, et surtout pour le rappel concernant le fichier ~/.wgetrc. En tant qu'utilisateur de MacPorts, mes certificats sont situés dans /opt/local/etc/openssl, un fait qui, je l'espère, sera utile à quelqu'un.

3 votes

Et pour fink, ils se trouvent dans /sw/etc/ssl/certs/ca-bundle.crt qui fait partie du fichier ca-bundle paquet -- comme décrit aquí .

0 votes

Je ne sais pas si c'est une erreur de frappe, mais ln -s /etc/ssl /usr/ssl a fonctionné pour moi.

124voto

cguenther Points 520

Si le problème est l'absence d'une autorité de certification racine connue et que vous utilisez ubuntu ou debian, vous pouvez résoudre le problème avec cette seule ligne :

sudo apt-get install ca-certificates

3 votes

Apt-get est sur cygwin ? apt-get est sur redgat ? ;)

9 votes

Ca-certificats était déjà installé sur mon ordinateur. Exécution de update-ca-certificates a résolu le problème.

0 votes

Cela a également fonctionné sur mon Synology DS215j avec Debian chroot.

12voto

Russell Davis Points 2949

Tout d'abord, les certificats SSL doivent être installés. Les 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 réparer curl mais wget nécessite un lien symbolique supplémentaire :

ln -sT /usr/ssl /etc/ssl

6 votes

N'est-ce pas dangereux d'installer des autorités de certification racine à partir d'un site web aléatoire, surtout avec haxx dans le nom ?

6 votes

@Chloe curl.haxx.se qui est le site de développement de cURL. Des gens plutôt dignes de confiance.

0 votes

Comment le fixer sans friser ?

-6voto

Saiful Points 1

Si vous utilisez Windows, il suffit d'aller dans le panneau de configuration, de cliquer sur les mises à jour automatiques, puis de cliquer sur le lien Windows Update Web Site. Suivez simplement l'étape. En tout cas, cela fonctionne pour moi, il n'y a plus de problème de certificats, c'est-à-dire que chaque fois que je me rends à https://www.dropbox.com comme avant.

0 votes

Ce n'est pas lié à Cygwin

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X