web-dev-qa-db-fra.com

Erreur SSL: routines: SSL3_GET_SERVER_CERTIFICATE: échec de la vérification du certificat

J'ai un grand nombre de liens de téléchargement de fichiers dans un fichier txt. J'essaie d'écrire un script python pour télécharger tous les fichiers à la fois, mais je me retrouve avec l'erreur suivante:

SSLError: [Errno 1] _ssl.c:499: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed 

Le fichier est en cours de téléchargement via l'intranet.

J'ai essayé de télécharger le fichier via un navigateur et j'ai eu une fenêtre contextuelle avec some certificate. J'ai essayé de le rechercher sur Google mais je n'ai pas trouvé le moyen de résoudre ce problème.

25
Sangamesh

Le certificat de serveur n'est pas valide, car il est signé par une autorité de certification non valide (autorité de certification interne, auto-signé, ...), ne correspond pas au nom du serveur ou il a expiré.

Quoi qu'il en soit, vous devez savoir comment indiquer à la bibliothèque Python que vous utilisez qu'il ne doit pas s'arrêter à un certificat non valide si vous souhaitez vraiment télécharger des fichiers à partir de ce serveur.

19
Remi Gacogne

Expérimenté cela moi-même en utilisantrequests:

Ceci est extrêmement précaire; utiliser uniquement en dernier recours! (Voir le commentaire de rdlowrey.)

requests.get('https://github.com', verify=True)

Faire ce verify=False a fait le tour pour moi.

15
Stevenm

J'ai eu ce problème aujourd'hui et après avoir erré pendant plusieurs heures, je viens de savoir que mon serveur datetime était erroné.

Alors, vérifiez d’abord la date et l’heure de votre serveur avant d’approfondir ce sujet.

essayez aussi de faire

>> Sudo update-ca-certificates
13
Hemant_Negi

Vous avez récemment eu la même erreur dans une application python qui utilisait des requêtes sur Ubuntu 14.04LTS, que je pensais avoir bien fonctionné (peut-être y en avait-il une mise à jour). Effectuer les étapes ci-dessous corrige le problème pour moi:

pip install --upgrade setuptools
pip install -U requests[security]

Voici une référence: https://stackoverflow.com/a/39580231/996117

2
JimJty

cela peut également arriver quand votre heure locale est éteinte (par exemple avant l'heure de validation du certificat), c'était le cas dans mon erreur ...

1
Stef

J'ai rencontré le même problème à cause de la bibliothèque certifi. L'installation d'une version différente m'a également aidé.

0
desertkun