2015-10-01 4 views
8

Наша сетевая установка не самая лучшая, поэтому мне нужно сообщить приложениям, которые обмениваются данными через ssl, чтобы игнорировать сертификат. Придется делать то же самое с NPM и т. Д. Итак, теперь, когда я запускаю ...Как получить easy_install для игнорирования certifcate

$ easy_install pip 
... 
Download error on https://pypi.python.org/simple/pip/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found! 

Как отключить эту проверку?

P.S. Я знаю, что это вектор безопасности, но меня юмора.

+0

Вместо поворота проверки сертификатов от вы можете проверить, если обновление системные корневые сертификаты помогли бы - см. [python easy_install терпит неудачу с ошибкой сертификата SSL для всех пакетов] (http://stackoverflow.com/q/21265616/95735) –

ответ

9

Я считаю, что ваш easy_install в конечном итоге переходит к setuptools, который имеет свой SSL-помощник. В моем Linux это было на /usr/lib/python2.7/site-packages/setuptools/ssl_support.py. Есть 2 способа оттуда в основном:

  1. Я рекомендовал бы получить сертификат и вручную добавить его, вы найдете места внутри ssl_support.py. Эти линии привлекли мое внимание:

    cert_paths = """ 
    /etc/pki/tls/certs/ca-bundle.crt 
    /etc/ssl/certs/ca-certificates.crt 
    /usr/share/ssl/certs/ca-bundle.crt 
    /usr/local/share/certs/ca-root.crt 
    /etc/ssl/cert.pem 
    /System/Library/OpenSSL/certs/cert.pem 
    """.strip().split() 
    

    Просто добавьте сертификат в любой из них. См. Здесь, как получить сертификат с помощью openssl s_client: Using openssl to get the certificate from a server

  2. Принимая во внимание немного дальше, вы можете полностью отключить проверку SSL в своем помощнике setuptools. Следующие строки ssl_support.py привлекло мое внимание:

    try: 
        import ssl 
    except ImportError: 
        ssl = None 
    

    Я просто добавил Ssl = None после, так что:

    try: 
        import ssl 
    except ImportError: 
        ssl = None 
    
    ssl = None 
    
+2

Спасибо, сама проблема - это сертификат, который является подписывающим лицом , Мой работодатель, по сути, человек в среднем на всех https-запросах в своей сети, что приводит к сбою всей проверки SSL. Точка в том, что я не уверен, что могу просто добавить сертификат и заставить его работать, но я не специалист по безопасности. – Jackie

+0

@ Jackie, какое решение работает для вас? Я придерживался той же проблемы :( – Nilesh

+0

Не уверен, что у меня когда-либо был один рабочий. – Jackie