Programming

SSL/TLS 인증서 오류를 무시하는 linux 명령모음 - SSL certificate problem

IT오이시이 2023. 7. 27. 10:15
728x90

SSL/TLS 인증서 오류를 무시하는 linux 명령모음  -  SSL certificate problem

 

외부 파일을 받거나 HTTPS로 통신을 점검하는 동안  SSL certificate problem 이 발생 하는 경우 대처하는 법입니다.

# 개발 하면서 많이 사용하는 어플리케이션 패키지를 다운 받을때 SSL 인증서 오류 해결 방법을 정리 합니다.
1. curl  
2. wget 
3. git   
4. pip
4. npm

 


 

1. curl 

 -  curl은 커멘드라인으로 HTTP, HTTPS, FTP, FTPS, SCP, SFTP 등으로 웹서비스를 호출하고 응답을 받을수 있습니다.

 방법 1

# curl 명령에 대한 인증서 확인을 비활성화합니다.
curl --insecure -I https://www.some.com/
curl -k -O https://www.some.com/file.tar.gz

 

방법 2

# .curlrc 파일에 다음 내용을 추가 합니다.

echo "insecure" > ~/.curlrc


# .curlrc 파일에 다음 내용을 추가 합니다.
--------------------------------------------
# cat  $HOME/.curlrc
insecure

 


2. wget

  - wget은 인터넷 웹서비스 호출의 결과나 파일을 다운 받는데 사용합니다. 

방법1 : --no-check-certificate 를 이용하여 SSL 인증서 문제를 해결 할 수 있습니다.

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

 

방법2 : ~/.wgetrc 를  이용하여 "check-certificate = off" 설정 할 수 있습니다.

echo "check-certificate = off" >> ~/.wgetrc

--------------------------------
# cat ~/.wgetrc
check-certificate = off

 


3. git

- git은 소스 코드를 관리하고 변경 사항을 추적하는 분산 버전 관리 시스템(VCS)입니다.

방법 1. 환경 변수 설정

env GIT_SSL_NO_VERIFY=true git clone  https://some.git.com/file.git

* 위의 환경 변수를 시스템 환경 변수로 설정해 두는 경우입니다.

 

방법 2.  git 명령 옵션

* git 명령을 실행 옵션으로 "http.sslVerify false" 를 추가 하는 방법입니다.

# 다음 명령으로 git 환경을 설정하고
git config --global http.sslVerify false

# git 파일을 다운 받습니다.
git clone https://github.com/some/file.git

 

* 참고로 ~/.gitconfig   파일이 생성되고 아래와 같이 설정 됩니다.

[root@vm1 ~]# cat .gitconfig
[http]
           sslVerify = false

 

 


4. pip

 - pip는 "Pip Installs Packages"의 약자로 Python 프로그래밍 언어의 패키지 관리자입니다.

--trusted-host pypi.org --trusted-host files.pythonhosted.org 으로 SSL 문제를 해결 합니다.

python get-pip.py --trusted-host pypi.org --trusted-host files.pythonhosted.org


pip config set global.trusted-host "pypi.org files.pythonhosted.org"

 


5. npm

- npm은 "Node Package Manager"의 약자로  JavaScript 런타임인 Node.js의 패키지 관리자입니다. 

방법1 :

  set strict-ssl = false 환경 변수 설정으로 SSL 문제를 해결 할 수 있습니다.

# strict-ssl = false 를 설정합니다.
npm config set strict-ssl false

## 설정된 내용을 확인합니다.
npm config list

 

 

방법2 :

echo "strict-ssl=false" > ~/.npmrc

---------------------------------
# cat ~/.npmrc
strict-ssl=false

[참고]

 

1. git 에서 https repository 연결시 SSL 오류 해결:

    https://couplewith.tistory.com/388

 

2. pip 설치시 SSLCertVerificationError  해결: 

       https://couplewith.tistory.com/350

 

 

 

 

728x90
반응형