Developer/Posting

[Python] Python_SSL: CERTIFICATE_VERIFY_FAILED 에러

codingzipsa 2023. 5. 22. 00:10
반응형

Django 프로젝트에서 SMTP를 활용한 이메일 발송 로직을 작성하신 분께서 발생한 내용에 대한 트러블 슈팅에 대한 기록을 남겨보고자 한다. 에러 로그에서는 "SSL: CERTIFICATE_VERIFY_FAILED"가 포함된 에러가 발생하고 있어서 해당 부분을 염두에 두고 시작을 하였다.

1. 구글 계정 이슈

구글 보안단계 낮추는 방법을 먼저 떠올려보았다.

다른 분들은 공유된 코드를 통해 이메일이 발송된다고 한 것에 근거, 구글 계정과 관련한 이슈일 것으로 판단하였다.

보안 수준 관련 설정을 처리하지 않아 에러가 발생한 적이 있던 것이 떠올라 해당 부분부터 찾아보았는데 이미 22년 5월말부터 해당 설정은 없어졌으며, 2단계 보안 설정 후 앱별 비밀번호를 통해 접근 시 서드파티를 사용할 수 있게 되었다.

혹시라도 보안 설정이 꼬여있어서 그런가 싶어서 새로운 구글계정을 만들어서 검증해보는 것을 먼저 말씀드렸는데 새롭게 만든 구글계정 또한 동일한 에러가 발생하는 것을 보며 구글 계정과 관련된 이슈는 아니라 판단하게 되었다.

그렇다고 한다...

2. 컴퓨터 관련 이슈

팀 프로젝트였기에 다른 작동이 잘되는 분들의 컴퓨터 OS와 질문자분의 OS를 확인하였다.

잘되는 분들은 다 윈도우 환경, 질문자분은 Mac이였고 파이썬 버전은 3.8이였다.

여기서 실마리를 찾을 수 있겠다 생각이 들어 Mac과 관련된 이슈가 있는지 집중적으로 구글링을 해보기 시작하였다.

그러다보니 MacOS와 파이썬 OpenSSL 라이브러리 사이의 이슈에 대해 언급하는 부분, 처리하는 부분에 대해 파이썬 이슈에서 논의되는 내용들을 확인하게 되었다.


https://bugs.python.org/issue29065

 

Issue 29065: SSL module problem on Python 3.6.0 and macOS Sierra - Python tracker

Issue29065 Created on 2016-12-24 22:28 by ugultopu, last changed 2022-04-11 14:58 by admin. This issue is now closed. msg283976 - (view) Author: Utku Gultopu (ugultopu) Date: 2016-12-24 22:28 It seems like ssl module is not working for me: (virtualenv) use

bugs.python.org

https://bugs.python.org/issue45007

 

Issue 45007: OpenSSL 1.1.1l is released - Python tracker

Issue45007 Created on 2021-08-26 03:34 by ned.deily, last changed 2022-04-11 14:59 by admin. This issue is now closed. URL Status Linked Edit PR 28009 merged steve.dower, 2021-08-27 22:51 PR 28039 merged lukasz.langa, 2021-08-29 14:21 PR 28040 merged lukas

bugs.python.org

 

"결론적으로는 파이썬 폴더에 있는 Insall Certificates를 작동시켜서 OpenSSL을 설치하니 위 이슈는 해결이 되었다."

 

설치시에 나와있는 내용이긴 했다...

해당 이슈는 파이썬 3.6버전부터 나온 것으로 보이고 현재 공개된 3.11 버전까지도 OS내 OpenSSL과 파이썬 내 OpenSSL 버전으로 인한 이슈들이 지속적으로 리포팅되는 것으로 보인다. 혹시라도 이후 유사한 이슈가 생긴다면 깃헙 이슈들을 보면서 처리해야될 듯 하다.

파이썬 3.6 맥북 유저 주의사항

https://github.com/pyenv/pyenv/issues/2494

 

python 3.11.0 fails to build on macOS (OpenSSL build failure) · Issue #2494 · pyenv/pyenv

Platform: macOS 12.6 OS architecture: x86_64 (Intel) pyenv version: 2.3.5-3-g0726e02e Python version: 3.11.0 C Compiler information: Apple clang version 14.0.0 (clang-1400.0.29.102) Building the ne...

github.com

 

반응형