Programming

(Pycharm 설치) PIP 패키지 설치 인증서 오류 해결- SSL: CERTIFICATE_VERIFY_FAILED

IT오이시이 2022. 3. 9. 11:39
728x90

Pycham을 처음 설치한 환경에서 접하는 두가지 문제를 따로 정리 해보았다.

 

1. pip package install SSL 인증서 Error 로 패키지 설치가 안되는 경우
    - (error: [SSL: CERTIFICATE_VERIFY_FAILED])


2. ImportError: DLL load failed while importing _brotl 와 같이 DLL 오류가 나는 경우
   - Microsoft Visual C++ Redistributable Latest Supported Downloads 를 이용하여 개발 환경 설치

이러한 간단한 문제들도 오히려 생각지도 못한 상황에 만나면 시간만 지나가는 경우가 되기도 한다.  

 

[ 파이썬 SSL인증서 오류 참고]
1. 파이썬 설치 오류 해결 pip SSLCertVerificationError
2. git  https repository 연결시 SSL 인증서 오류 해결
3. (Pycharm)  PIP 패키지 설치 SSL 인증서 오류 해결 

 

pip 설치부터 python 패키지 설치를 하는데는 https를 사용하는 과정이 많아서 SSL 이 지원되지 않는 환경(금융환경)에서는 아래 내용들로 계속 오류를 접하게 됩니다. 관련해서 적은 내용입니다.

[install pip]
> python -m pip install --upgrade pip
      /usr/bin/python: No module named pip   : 다음과 같은 오류가 발생 될 수 있다.


> wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate

> python get-pip.py    # 아래과 같은 SSL 인증서 오류가 발생 할 수 있다.
   Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: 

> python get-pip.py --trusted-host pypi.org --trusted-host files.pythonhosted.org
   Collecting pip
             Downloading pip-23.1.2-py3-none-any.whl (2.1 MB)


> pip  --version

>  which pip
      /usr/local/bin/pip

 

 

1. SSL 인증서 문제로 PIP 패키지 설치가 안되는 경우 조치

   - pip package install SSL 인증서 Error 해결 (error: [SSL: CERTIFICATE_VERIFY_FAILED])

(해결 방법 1)  --trusted-host 옵션을 이용해서 신뢰하는 레포지터리 싸이트를 선언하여 다운 받습니다.

pip install --trusted-host pypi.org \
   --trusted-host pypi.python.org \
   --trusted-host files.pythonhosted.org <package-name> 
   
pip --trusted-host pypi.org --trusted-host pypi.python.org\
    --trusted-host files.pythonhosted.org matplo

 

(해결 방법 2)  pip.ini 를 이용하여 해결하는 방법입니다.

pip.ini 환경 파일을 이용하면  'pip install 라이브러리'  명령으로 설치가 가능해 집니다.

1.  아래와 같이  pip.ini  config 파일을 생성 합니다.
      윈도우는 pip.ini, 유닉스는 pip.conf 파일을 생성하면 됩니다.

    - 윈도우 : %APPDATA%\pip\pip.ini  또는  %HOME%\pip\pip.ini 

    - Mac / Linux OS : $HOME/Library/Application Support/pip/pip.conf  또는  
                                  $HOME/.config/pip/pip.conf

2. 리눅스에서 pip.conf 만드는 방법 
  - 리눅스에서는 config 파일에 다음과 같이 내용을 추가 할 수있다.
 
pip config set global.trusted-host "pypi.org files.pythonhosted.org"
  > cat ~/.config/pip/pip.conf

 [global]
 trusted-host = pypi.org  files.pythonhosted.org

 

리눅스에서 pip.conf 만드는 방법 :
"pip config set global.trusted-host "pypi.org files.pythonhosted.org"

[pip.ini]

[global]
trusted-host = pypi.org    files.pythonhosted.org

 

 일반적인 환경에서는 발생하지 않는데 인터넷 통신을 모니터링하는 회사 내부망의 경우에는 HTTS의 SSL헤더를 인위적으로 복호화 해서 송수신을 하면서 SSL 인증서 문제로 프로그램 설치가 안되는 경우가 있습니다.
또한 컴퓨터를 처음 설치한 윈도우 환경에서는 프로그래밍에 필요한 개발 라이브러리가 필요하기 때문에 별도로 설치가 필요합니다.

* SSL통신에 문제가 있어서 패키지가 설치가 안되는 문제의 오류 원인을 찾아봅니다.
   이런 경우 신뢰하는 싸이트에서 "SSL 인증서 오류 없이 설치 하는 경우" 를 참조하여 설치하면 됩니다.

Could not fetch URL https://pypi.org/simple/fastapi/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/fastapi/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:997)'))) - skipping WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:997)'))': /simple/fastapi/

위와 같이 PIP로 설치시 SSL인증서 문제로 HTTPS로 다운로드가 실패하는 상황으로 pip 옵션에서 공인된 패키지 사이트 URL을 선언해서 다운 받도록 합니다.

 

[정리]

---------------------------------------------------------------------------------------------------------------

아래 와 같이 터미널에서 직접 명령을 작성해서도 설치가 가능합니다.

* pip.ini 없이 다음과 같이 커멘드로도 설치가 가능합니다.

 pip install --trusted-host  pypi.python.org   <패키지명>

* pip.ini를 설정한 경우 다음과 같이 사용 합니다.

 pip install    <패키지명>

 

2) ImportError: DLL load failed while importing 에러가 나는 경우

- DLL 오류가 나면 윈도우 내부의 c/c++ 개발 관련 패키지 설치를 확인하고 설치합니다.
-  아래 링크에서 VC_redist_x64.exe를 다운 받아 설치 하시면 됩니다.
https://docs.microsoft.com/en-GB/cpp/windows/latest-supported-vc-redist?view=msvc-170#visual-studio-2015-2017-2019-and-2022

 

( Pycharm 처음 설치하고 생기는 문제를 해결하는 상황을 공유해 보았습니다.)


[참조]
https://couplewith.tistory.com/entry/%EC%BF%A8%ED%8C%81pip-SSLCertVerificationError-with-trusted-host

출처: https://couplewith.tistory.com/entry/파이참Pycharm-설치와-pip-사용하기 [IT 내공을 써먹자.]

 

728x90
반응형