Mac에서 ngrok 실행 시 SSL 인증서 오류 해결 방법

2025. 3. 1. 08:11·버그처리
728x90
SMALL

문제 상황

Mac 환경에서 ngrok을 실행하려고 할 때 다음과 같은 SSL 인증서 오류가 발생했었습니다.

현재 Python의 환경은 3.12를 사용하고 있습니다.

(venv) (base) seok ~/Documents/PythonTest > ngrok http 3000
Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/urllib/request.py", line 1344, in do_open h.request(req.get_method(), req.selector, req.data, headers, File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/http/client.py", line 1336, in request self._send_request(method, url, body, headers, encode_chunked) ... ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000)

이 오류는 Python이 SSL 인증서를 검증할 수 없어서 발생하는 문제로 Mac에서 Python 3.12을 사용할 때 이전 버전보다 자주 발생 되는 듯합니다.

 

해결 방법

1. Python 인증서 설치 스크립트 실행 (기본)

/Applications/Python\ 3.12/Install\ Certificates.command

SSL 인증서를 업데이트를 하기 때문에 정상적으로 실행이 됩니다.

 

2. 다시 ngrok 실행

ngrok http 3000

다시 명령어를 실행하면 에러 없이 가능합니다.

 

해결 방법 2: SSL 검증 비활성화 (비추천)

만약 위 방법이 작동하지 않는다면 SSL 검증을 비활성화하는 방법도 있습니다. 하지만 보안 위험이 있어서 테스트용으로만 사용하는게 좋다고 생각합니다.

export CURL_CA_BUNDLE=""
export SSL_CERT_FILE=""
ngrok http 3000

이 방법은 인증서 검증을 아예 비활성화하는 것이므로 인증서 문제를 근본적으로 해결하는 방법은 아닙니다.

 

해결 방법 3: ngrok 수동 다운로드 및 설치

만약 위 방법이 모두 실패하면, ngrok을 수동으로 다운로드해서 직접 설치할 수도 있습니다.

1. ngrok 공식 사이트에서 다운로드(Mac용 ngrok을 다운로드)

2. 압축 해제 후 이동

unzip ngrok-darwin-arm64.zip
mv ngrok /usr/local/bin/

3. 설치 확인

ngrok --version

4. 다시 실행

ngrok http 3000

 

결론

이 문제는 Mac의 Python 3.12 환경에서 SSL 인증서 검증 실패 문제로 Python이 SSL 요청을 보낼 때 신뢰할 수 있는 루트 인증서를 찾지 못하면 위와 같은 오류가 발생하게 됩니다.


왜 추천 해결 방법이 가장 좋은지?
Python 3.12에서는 인증서가 자동으로 설치되지 않는 경우가 있기 때문에 /Applications/Python\ 3.12/Install\ Certificates.command  명령어로 신뢰할 수 있는 인증서를 시스템에 추가하여 SSL 요청을 정상적으로 처리되도록 설정할 수 있습니다. 이는 ngrok뿐만 아니라 다른 SSL을 사용하는 Python 라이브러리(ex. requests, urllib)에서도 동일한 문제를 해결 가능합니다.

728x90
SMALL
저작자표시 비영리 변경금지

'버그처리' 카테고리의 다른 글

AWS RDS Oracle 라이선스 변경 시 오류 해결  (1) 2025.02.14
Superset ERROR: Could not build wheels for python-geohash, which is required to install pyproject.toml-based projects 에러  (0) 2023.11.13
MySQL Read Only 에러 해결  (0) 2023.06.19
MySQL Safe Mode 에러 해결  (0) 2023.06.19
ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device  (0) 2023.05.22
'버그처리' 카테고리의 다른 글
  • AWS RDS Oracle 라이선스 변경 시 오류 해결
  • Superset ERROR: Could not build wheels for python-geohash, which is required to install pyproject.toml-based projects 에러
  • MySQL Read Only 에러 해결
  • MySQL Safe Mode 에러 해결
동석해요
동석해요
공부하고 싶은게 많은, 사소한 IT 지식들 공유
    250x250
  • 동석해요
    개발로 자기계발
    동석해요
  • 전체
    오늘
    어제
    • 분류 전체보기 (226)
      • Develop (126)
        • 기초지식 (12)
        • FastAPI (102)
        • Django (11)
      • Database & Data (62)
        • 기초지식 (16)
        • MySQL (29)
        • PostgreSQL (8)
        • 데이터 분석 (9)
      • 인공지능 (11)
        • PyTorch (9)
      • Cloud (8)
        • AWS (4)
        • GCP (2)
      • 버그처리 (14)
      • 회고 & 일상 (5)
  • 인기 글

  • 최근 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
동석해요
Mac에서 ngrok 실행 시 SSL 인증서 오류 해결 방법
상단으로

티스토리툴바