pip ve SSL sertifikası hataları


9

Pip aracılığıyla bir kütüphane kurmaya çalışıyorum. --Cert kullanırken bile SSL sertifikasıyla ilgili bir sorunum var. Bunu pencerelerde denemek (pip sürüm 1.5.4, python sürüm 2.7.6):

pip --cert C:\tmp\cacert.pem install robotframework-archivelibrary --proxy http://myproxy

Sayfa alma https://pypi.python.org/simple/robotframework-archivelibrary/ URL alınamadı https://pypi.python.org/simple/robotframework-archivelibrary/ : bağlantı hatası: [Errno 1] _ssl.c: 507: hata: 14090086: SSL yordamları: SSL3_GET_SERVER_CERTIFICATE: sertifika doğrulama başarısız oldu

Herhangi bir fikir?

Yanıtlar:


10

Kurumsal güvenlik duvarımızın SSL'yi (örneğin, şeffaf bir SSL proxy'si) yakalaması nedeniyle benzer hata iletilerim vardı. Güvenlik duvarı sertifikasını .pem biçiminde imzalayan ve aşağıdaki dosyaya ekleyen kök CA sertifikasını verdim:

C:\Python27\Lib\site-packages\pip\_vendor\requests\cacert.pem

Bu benim sorunumu çözdü. Sorununuz tam olarak aynı olmayabilir, ancak yukarıdaki cacert.pem içine doğru CA sertifikaları alırsanız, SSL sertifika doğrulama başarısızlığınızdan geçebileceğinizden eminim.


4
Bir dışa aktarma kök CA sertifikasının nasıl yapıldığını açıklayabilir misiniz?
Eran

Evet, hangi kök CA'nın nereye aktarılacağı konusunda net değilim - kaynak repo'nun kök CA'sını alıp komut satırından geçirip Python'un site paketlerinde cacert.pem dosyası aracılığıyla güvenlik duvarına dışa aktarıyoruz. ?
rileleri

Ben piton klasörlerde 5 farklı cacert.pem dosyaları denedik ama bunların sonunda tek çalıştı: C:\Python27\Lib\site-packages\certifi\cacert.pem Bunlardan biri de çalışmaya Conda var
Endolit

3

Çünkü --certsizin için çalışmıyorsa, muhtemelen yanlış sertifika dosyasını kullanıyorsunuzdur.

Büyük olasılıkla bazı şirket proxy'lerinin ardındasınız, bu nedenle başarısız URL'ye giderek kök sertifikanızı dışa aktarmanız gerekir (örneğin https://pypi.python.org/simple/robotframework-archivelibrary/, bkz: Uzak sunucu SSL sertifikasını yerel olarak bir dosya olarak nasıl kaydedebilirsiniz ).

İçinde ise CER formatına PEM dönüştürmek .

Sonra bu PEM dosyasını kullanın, örneğin

pip --cert root-cert.pem install robotframework-archivelibrary

Ayrıca bakınız: pip yükleme “bağlantı hatası: [SSL: CERTIFICATE_VERIFY_FAILED]” ile başarısız oluyor .


1

Bunu Windows'taki pip config'inize ekleyin C:\Users\<user>\pip\pip.ini.

[global]
  trusted-host = pypi.python.org
  proxy = <proxy>:<port>

Bu talimatları izleyerek vekilinizi bulun .


0

Aynı sorunu yaşadım, çünkü antivirüsüm (Eset "Smart Security") SSL / TLS'yi filtreliyordu. Bunu devre dışı bıraktık ve her şey mükemmeldi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.