Marvin Preuss xsteadfastx photo

github twitter mastodon flickr

Python, urllib und CERTIFICATE_VERIFY_FAILED

/// d794cd8 /// python ssl alpinelinux

Da denkt man sich einfach “mal kurz mein Blogging-Container neu bauen” und schon funktioniert nichts mehr. Es fing schon damit an das mein Ansible Playbook Probleme hatte Files herrunterzuladen. urllib brach immer mit urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] ab. Wie aus dem nichts. Vor ein paar Wochen gab es keine Probleme mit der urllib. Es gab sogar ein StackOverflow Posting welches mir riet einfach mal die ca-certificates zu installieren. Das Paket war aber schon installiert.

Da denkt man sich einfach “mal kurz mein Blogging-Container neu bauen” und schon funktioniert nichts mehr. Es fing schon damit an das mein Ansible Playbook Probleme hatte Files herrunterzuladen. urllib brach immer mit urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] ab. Wie aus dem nichts. Vor ein paar Wochen gab es keine Probleme mit der urllib. Es gab sogar ein StackOverflow Posting welches mir riet einfach mal die ca-certificates zu installieren. Das Paket war aber schon installiert. Nach viel googeln un verzweifeln bin ich auf eine obskure Seite gestoßen von der ich kaum etwas verstand. Es gab wohl die Möglichkeit urllib über eine Environment-Variabel den Ort der CA-Zertifikate mitzuteilen. Dies scheint auch in der PEP 476 so beschrieben. requests scheint dies per Default zu machen. Ein export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt fixed die Situation in Alpine Linux. Ich frage mich nur was sich in ein paar Wochen so verändert hat das dieses Problem auftritt.