[React JS] Yarn 명령어 실행하는데 self signed certificate 에러가 날 경우

2024. 4. 12. 11:08React JS

문제

프로젝트를 받고 yarn으로 패키지를 설치하려니깐 이게 웬열;; 이런 에러가 났다.

$ yarn
yarn install v1.22.22
info No lockfile found.
[1/4] Resolving packages...
error Error: self-signed certificate in certificate chain
    at TLSSocket.onConnectSecure (node:_tls_wrap:1674:34)
    at TLSSocket.emit (node:events:518:28)
    at TLSSocket._finishInit (node:_tls_wrap:1085:8)
    at ssl.onhandshakedone (node:_tls_wrap:871:12)
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

 

원인

SSL/TLS 작업 때문에 유효하지 않은 자격은 거부한다고 한다.
만약 이 검증작업이 수행되지 않는다면 누군가가 main-in-the-middle(https://en.wikipedia.org/wiki/Man-in-the-middle_attack) 공격을 할 수 있다고 한다.

해결방법

모든 요청에 대해서 TLS 검증을 안하겠다는 것이라고 위험하긴 하다.

일단 지금은 일시적인 해결방법을 찾아보고 근본적인 해결방법도 찾아보자.

 

해결 방법들이 여러개 있는데

1. 아래 명령어를 실행하면 이번 요청만 TLS 검증을 안하는 것이다.

NODE_TLS_REJECT_UNAUTHORIZED=0 yarn install

 

아래처럼 두 명령어를 연속으로 입력해줘도 된다.

export NODE_TLS_REJECT_UNAUTHORIZED=0
yarn install

 

2. 아래처럼 하면 앞으로 쭈욱 TLS 검증을 하지 않는다.

yarn config set "strict-ssl" false -g