J'utilise Ubuntu 14.04. Lorsque j'utilise curl, j'obtiens l'erreur suivante:
curl: (77) error setting certificate verify locations: CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath:
D'après ce que je comprends de la recherche sur Google, l'emplacement CAfile qu'il recherche n'est pas correct pour Ubuntu (et il n'existe pas sur mon ordinateur), /etc/ssl/certs/ca-certificates.crt
est l'emplacement approprié.
La plupart des solutions impliquaient de définir la variable d'environnement CURL_CA_BUNDLE
à l'emplacement approprié ou d'ajouter cacert=/etc/ssl/certs/ca-certificates.crt
au .curlrc
fichier (nouvellement créé) dans mon répertoire personnel. J'ai essayé les deux, et aucun ne résout complètement le problème. curl trouve cet emplacement, mais cela ne fonctionne toujours pas, ce qui donne l'erreur:
curl: (60) SSL certificate problem: self signed certificate in certificate chain
J'ai également essayé de désinstaller et de réinstaller curl dans Ubuntu et de mettre à jour mes certificats CA avec $ sudo update-ca-certificates --fresh
lesquels ils ont mis à jour les certificats, mais je n'ai toujours pas fait disparaître l'erreur 60.
Je ne connais pas très bien les certificats CA, et je doute d'avoir volontairement ajouté un certificat auto-signé dans le passé. Peut-être par accident, je ne sais pas.
Est-ce que quelqu'un sait comment réparer ceci? Existe-t-il un moyen de repartir à neuf avec tous mes certificats? Ou est-ce que quelqu'un sait même comment je vais trouver où se trouve ce certificat auto-signé, et comment le supprimer?
PS: Je ne veux pas utiliser le drapeau -k (aka --insecure). Je veux que cela fonctionne en toute sécurité.
la source
Nous avons rencontré le même problème avec l'un de nos programmes C ++ dans Ubuntu 14.04.5. La méthode .curlrc ne prenait pas effet.
Cela a été résolu en téléchargeant le ca-certificats.crt dans /etc/ssl/certs/ca-certificates.crt et en créant un lien symbolique ca-bundle.crt sous le répertoire / etc / pki / tls / certs / .
J'espère que cela t'aides!
la source
Après quelques recherches, je l'ai fait fonctionner, et la réponse a fini par être plutôt simple. Faites pas à pas
L'étape 3 téléchargera le fichier pem dans le dossier certs
.curlrc est un fichier caché. vérifier par ctrl + h dans le répertoire personnel. sinon là, sur le type de terminal
NB Ici, j'ai utilisé l'éditeur nano, mais vous pouvez utiliser n'importe quel éditeur.
la source