PIP/Anaconda SSL ERROR 해결하기

dongyi·2020년 10월 8일
1

Python

목록 보기
1/1

윈도우즈에서 종종 발생하는 PIP SSL ERROR를 고쳐보자

증상

Anaconda/PIP를 사용해서 가상환경을 생성하거나 패키지를 설치하려고 할 때 주로 발생하는데, 아래와 같은 메시지가 뜨는 경우다.

예시 1

Collecting package metadata (current_repodata.json): failed

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/win-64/current_repodata.json>
Elapsed: -

An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.

If your current network has https://www.anaconda.com blocked, please file a support request with your network engineering team.

SSLError(MaxRetryError('HTTPSConnectionPool(host=\'repo.anaconda.com\', port=443): Max retries exceeded with url: /pkgs/main/win-64/current_repodata.json (Caused by SSLError("Can\'t connect to HTTPS URL because the SSL module is not available."))'))

예시 2

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:1051)'))': /packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl

Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))

... 계속

해결방법

Windows

방법 1. crypto/ssl dll 파일 복사

  1. C:\Users\%USERNAME%\Anaconda3\Library\bin 경로 열기

  2. 다음 네 가지 파일들을 복사

    1. libcrypto-1_1-x64.dll
    2. libcrypto-1_1-x64.pdb
    3. libssl-1_1-x64.dll
    4. libssl-1_1-x64.pdb
  3. C:\Users\%USERNAME%\Anaconda3\Library\DLLs 경로에 붙여넣기

이 외 OS

방법 1. openssl 설치

Mac OS

brew install openssl

Ubuntu

apt-get install libssl-dev libffi-dev 

CentOS

yum install openssl-devel libffi-devel

추가로 시도할 방법

방법 1. 아나콘다 openssl 패키지 설치

cmd(혹은 Powershell)에 다음 커맨드를 입력해서 설치한다

conda install openssl
conda config --set ssl_verify false

방법 2. pip 패키지 설치 시 커맨드 입력

pip로 패키지 설치 시 다음과 같은 명령어들을 붙여서 설치해본다
<pakcage>에는 설치할 패키지의 이름을 넣으면 된다

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

매 번 위의 커맨드를 쳐야하는 상황이라면 아래와 같이 alias를 등록하자

alias pip='pip --trusted-host pypi.org --trusted-host files.pythonhosted.org'

참고문서

코딩테스트를 준비한다면?

profile
개발자 구직과 성장에 대한 정보! 유튜브 [코딩몬스터TV] 채널을 구독해주세요

0개의 댓글