Windows에서 Python에 Zscaler CA 루트 인증서를 추가하여 Pip SSL 액세스 오류 문제 해결

이 회사는 Zscaler를 배포했으며 모든 인터넷 트래픽은 데이터 보안을 보장하기 위해 Zscaler를 통해 프록시됩니다. 한 가지 문제는 Python 액세스 트래픽이 Zscaler로 전송되고 인증서 오류가 프롬프트된다는 것입니다.

  • 오류 메시지는 다음과 같습니다.

pip 설치 요청
경고 : 'SSLError (SSLCertVerificationError (1,'[SSL : CERTIFICATE_VERIFY_FAILED] 인증서 확인 실패)로 연결이 끊어진 후 재시도 (Retry (total = 4, connect = None, read = None, redirect = None, status = None)) : 로컬 발급자 인증서를 가져올 수 없습니다 (_ssl.c : 1123) '))': / simple / requests /
WARNING : 재시도 중 (Retry (total = 3, connect = None, read = None, redirect = None, status = None) ) 'SSLError (SSLCertVerificationError (1,'[SSL : CERTIFICATE_VERIFY_FAILED] certificate verify failed : cannot get local issuer certificate (_ssl.c : 1123) '))': / simple / requests /에 의해 연결이 끊어진 후
경고 : 'SSLError (SSLCertVerificationError (1,'[SSL : CERTIFICATE_VERIFY_FAILED] 인증서 확인 실패 : 불가능 로컬 발급자 인증서 받기 (_ssl.c : 1123) '))': / simple / requests /

  • 임시 해결책은 다음과 같습니다. --trusted-host 매개 변수를 pip에 추가하여 인증서 확인을 무시할 수 있지만 경고는 계속 생성됩니다.

pip install requestes --trusted-host pypi.org --trusted-host files.pythonhosted.org
요청 수집 요청
 다운로드 -0.0.1.tar.gz (1.4 kB)
패키지 이후 요청에 레거시 'setup.py 설치'사용 '휠'이 설치되지 않았습니다.
수집 된 패키지 설치 : requestes 요청을
   위해 setup.py 설치 실행 중 ... done
성공적으로 설치 한 requestes-0.0.1
경고 : pip 버전 20.2.3을 사용하고 있습니다. 그러나 버전 21.0.1을 사용할 수 있습니다.
'c : \ program files \ python39 \ python.exe -m pip install --upgrade pip'명령을 통한 업그레이드를 고려해야합니다.

  • 해결책은 프록시 서버의 루트 인증서를 Python의 Cert Store에 추가하는 것입니다. 방법은 다음과 같습니다.

Windows의 Python에는 인증서 확인에 사용되는 기본 인증서 번들 인 PIP 및 Certifi가 자동으로 포함됩니다.

Zscaler 프록시 CA 루트 인증서를 가져와 ""C : \ Program Files \ Python39 \ Lib \ site-packages \ pip \ _vendor \ certifi \ cacert.pem ""로 가져와 문제를 해결합니다.

설치된 Python 버전에 따라 경로가 약간 다를 수 있습니다.

타사 모듈을 설치하기 위해 pip를 다시 실행하면 오류가보고되지 않습니다.

image.png


추천

출처blog.51cto.com/sky2133/2676295