User Tools

Site Tools


ssl_인증서_문제의_해결_방법

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ssl_인증서_문제의_해결_방법 [2022/03/21 10:29] – [이 문서는 완벽하지 않습니다!] hyjeongssl_인증서_문제의_해결_방법 [2023/06/29 14:47] (current) hyjeong
Line 1: Line 1:
-====== 리눅스에서 SSL 인증서 문제의 해결 방법(v0.93) ======+====== 리눅스에서 SSL 인증서 문제의 해결 방법(v0.94) ======
  
-  * 작성자 및 최종 수정일시:  --- //[[hyjeong@kribb.re.kr|Haeyoung Jeong]] 2022/02/22 13:07//+  * 작성자 및 최종 수정일시:  --- //[[hyjeong@kribb.re.kr|Haeyoung Jeong]] 2023/06/29 14:46//
   * 최초 작성일: 2021년 5월 24일   * 최초 작성일: 2021년 5월 24일
   * 이 문서에 대한 짧은 URL: https://bit.ly/3hSWC9J   * 이 문서에 대한 짧은 URL: https://bit.ly/3hSWC9J
   * [[https://linuxconfig.org/how-to-test-internet-connection-on-linux|How to test Internet connection on Linux]]   * [[https://linuxconfig.org/how-to-test-internet-connection-on-linux|How to test Internet connection on Linux]]
-이 문서는 2년이 넘는 시행착오를 거치면서 얻은 정보를 바탕으로 다른 분들에게 도움을 드리고자 작성하였습니다. <color #ed1c24>공공기관의 전산망 보안 체계를 무력화하거나 우회하는 방법을 소개하는 것이 결코 아니니 오해가 없으시길 바랍니다.</color>+이 문서는 2년이 넘는 시행착오를 거치면서 얻은 정보를 바탕으로 다른 분들에게 도움을 드리고자 작성하였습니다. <color #ed1c24>공공기관의 전산망 보안 체계를 무력화하거나 우회하는 방법을 소개하는 것이 결코 아니니 오해가 없으시길 바랍니다.</color> 그리고 간혹 국가정보원에서 특정 IP 주소(https://raw.githubusercontent.com/)에 대한 접근을 하지 못하게 지시하는 경우가 있습니다. 업무상 꼭 다운로드해야 되는 프로그램를 이런 사이트에서 배포하는 경우에는 해결할 도리가 없습니다.  
  
 컴퓨터를 구입해서 KRIBB 안에서 IP address를 발급받아 처음으로 웹브라우저를 실행한 사람이라면 누구나 다음의 화면을 만나게 되었을 것입니다. 대개는 이 화면에서 안내하는대로 몇 번의 클릭을 통해 SSL 인증서(파일명은 **SSLPrism.crt**)를 각자 PC에(정확하게는 웹브라우저) 설치하였을 것이고, 이후 윈도우에서 인터넷 작업을 하는데 별다른 어려움이 없을 것입니다. 설치 이후에도 http://sslcert.cc를 접속하면 다시 이 화면을 볼 수 있습니다. 하지만 퇴근 후 집에서 컴퓨터를 켠 다음에 같은 곳을 접속하면 이 화면은 나오지 않습니다.  컴퓨터를 구입해서 KRIBB 안에서 IP address를 발급받아 처음으로 웹브라우저를 실행한 사람이라면 누구나 다음의 화면을 만나게 되었을 것입니다. 대개는 이 화면에서 안내하는대로 몇 번의 클릭을 통해 SSL 인증서(파일명은 **SSLPrism.crt**)를 각자 PC에(정확하게는 웹브라우저) 설치하였을 것이고, 이후 윈도우에서 인터넷 작업을 하는데 별다른 어려움이 없을 것입니다. 설치 이후에도 http://sslcert.cc를 접속하면 다시 이 화면을 볼 수 있습니다. 하지만 퇴근 후 집에서 컴퓨터를 켠 다음에 같은 곳을 접속하면 이 화면은 나오지 않습니다. 
Line 48: Line 48:
 한글화가 잘 된 시스템에서 실행을 하니 친절한 메시지가 나옵니다 :) 한글화가 잘 된 시스템에서 실행을 하니 친절한 메시지가 나옵니다 :)
 ===== 문제를 해결할 수 있는 단편적인 해결책은 있습니다. 그러나... ===== ===== 문제를 해결할 수 있는 단편적인 해결책은 있습니다. 그러나... =====
-wget 실행 시 '%%--%%no-check-certificate' 옵션을 주거나, pip install 실행 시 '%%--%%trusted-host pypi.org %%--%%trusted-host files.pythonhosted.org' 옵션을 주는 방법 등이 인터넷 검색을 하면 종종 보입니다. ~/.condarc file에 'ssl_verify: false'를 삽입하거나, ~/.Renviron 파일을 수정하는 등 각 애플리케이션마다 문제를 해결하는 방법이 하나씩 다 있을 정도입니다. 그러나 이는 완벽한 해결책이 아닙니다. 심지어 python 프로그램이 urllib(3)을 쓰는 경우 지정된 SSL 인증서를 쓰도록 스크립트를 수정하는 방법까지 알려져 있습니다(사례 [[https://multifrontgarden.tistory.com/219|링크]]). 그러나 저와 같이 python 프로그램을 설치 및 활용만 겨우 하고 그 문법을 모르는 사람에게는 별다른 도움이 되지 않습니다. 특히 wget은 명령행 환경에서 단독으로 쓰이지만 curl은 라이브러리를 통해서 다른 프로그램 혹은 스크립트 내부에서 파일 다운로드를 하는데 매우 널리 쓰입니다. 따라서 인증서를 회피하거나 바꿀 수 있게 옵션 또는 파라미터를 주기가 아주 적당치 않습니다.+wget 실행 시 '%%--%%no-check-certificate' 옵션을 주거나($HOME/.wgetrc 파일에 'check_certificate = off'를 선언해 두어도 좋음), pip install 실행 시 '%%--%%trusted-host pypi.org %%--%%trusted-host files.pythonhosted.org' 옵션을 주는 방법 등이 인터넷 검색을 하면 종종 보입니다. ~/.condarc file에 'ssl_verify: false'를 삽입하거나, ~/.Renviron 파일을 수정하는 등 각 애플리케이션마다 문제를 해결하는 방법이 하나씩 다 있을 정도입니다. 그러나 이는 완벽한 해결책이 아닙니다. 심지어 python 프로그램이 urllib(3)을 쓰는 경우 지정된 SSL 인증서를 쓰도록 스크립트를 수정하는 방법까지 알려져 있습니다(사례 [[https://multifrontgarden.tistory.com/219|링크]]). 그러나 저와 같이 python 프로그램을 설치 및 활용만 겨우 하고 그 문법을 모르는 사람에게는 별다른 도움이 되지 않습니다. 특히 wget은 명령행 환경에서 단독으로 쓰이지만 curl은 라이브러리를 통해서 다른 프로그램 혹은 스크립트 내부에서 파일 다운로드를 하는데 매우 널리 쓰입니다. 따라서 인증서를 회피하거나 바꿀 수 있게 옵션 또는 파라미터를 주기가 아주 적당치 않습니다.
  
 ===== 가장 근본적인 방법은 system-wide한 인증서 설치 위치 정보를 이용하는 것입니다 ===== ===== 가장 근본적인 방법은 system-wide한 인증서 설치 위치 정보를 이용하는 것입니다 =====
Line 66: Line 66:
  
 ==== Oxford Nanopore MinION Mk1C의 경우 ==== ==== Oxford Nanopore MinION Mk1C의 경우 ====
-우분투가 설치된 이 작은 장치는 유선 인터넷 설정 자체도 쉽지 않습니다. Wi-Fi가 되는 환경에 가지고 가서 어떻게 해서든 다른 컴퓨터를 통해 SSH로 진입해야 유선 인터넷 연결을 위한 고정 IP 주소를 설정할 수 있습니다. 그 다음에는 위에서 Ubuntu 환경의 인증서 설치 작업과 유사하게 진행하면 되는데, update-ca-certificates 패키지 자체가 설치되지 않은 상태일 것입니다. /etc/ssl/certs/ca-certificates.crt 파일을 다른 이름으로 백업한 뒤 SSLPrims.crt를 ca-certificates.crt라는 이름으로 바꾸어 놓았더니 비로소 연구소 환경에서도 Mk1C <-==> 외부 인터넷 소통이 되는 것 같습니다(완벽하지는 않음).+우분투가 설치된 이 작은 장치는 유선 인터넷 설정 자체도 쉽지 않습니다. Wi-Fi가 되는 환경에 가지고 가서 어떻게 해서든 다른 컴퓨터를 통해 SSH로 진입해야 유선 인터넷 연결을 위한 고정 IP 주소를 설정할 수 있습니다. 그 다음에는 위에서 Ubuntu 환경의 인증서 설치 작업과 유사하게 진행하면 되는데, update-ca-certificates 패키지 자체가 설치되지 않은 상태일 것입니다. /etc/ssl/certs/ca-certificates.crt 파일을 다른 이름으로 백업한 뒤 SSLPrims.crt를 ca-certificates.crt라는 이름으로 바꾸어 놓았더니 비로소 연구소 환경에서도 Mk1C <=> 외부 인터넷 소통이 되는 것 같습니다(완벽하지는 않음).
  
 ===== wget은 아직 주의가 필요합니다 ===== ===== wget은 아직 주의가 필요합니다 =====
ssl_인증서_문제의_해결_방법.1647826194.txt.gz · Last modified: by hyjeong