/
https 연결시 서버의 SSL 인증서 추출하기 (curl 또는 web browser 사용)

https 연결시 서버의 SSL 인증서 추출하기 (curl 또는 web browser 사용)

개요

https 로 연결하는 서버의 SSL 인증서를 파일로 저장하는 방법

CMD 에서 openssl 이용

  1. openssl 로 해당 서버에 연결한다. (예: google.com)

    openssl s_client -connect google.com:443 |tee certlog
  2. 다음과 같은 SSL 화면에서 QUIT 입력
     
  3. log 파일 및 Base64 Encoding 된 SSL 인증서가 certlog 파일에 저장됨. () 

  4. certlog 에서 인증서 부분만 추출 (인증서는 certlog 파일내 "BEGIN CERTIFICATE" and "END CERTIFICATE" 사이에 존재하므로 에디터로 직접 편집해도 됨)

    openssl x509 -inform PEM -in certlog -text -out certdata
  5. 제대로 추출되었는지 openssl 로 인증서 파싱해서 출력 확인

    openssl x509 -inform PEM -text -in certdata 
  6. 추출된 서버인증서인 certdata 파일의 내용을 ca-bundle.crt 에 추가한다.

    cat certdata >> /etc/pki/tls/certs/ca-bundle.crt

Windows에서 Browser 이용

Chrome 에서 추출하는 방법을 설명. IE나 Firefox 도 유사함

  1. Chrome 으로 https 사이트에 연결한다. (Ex: https://google.com)
  2. URL 창에서 자물쇠 모양 아이콘을 클릭한다.
     
  3. 연결 -> 인증서 정보 를 클릭
     
  4. 자세히 -> 파일에 복사 클릭
     
  5. 다음 클릭
     
  6. Base 64로 인코딩된 X.509 를 선택하고 다음 클릭
     
  7. 저장할 파일명과 경로 지정후 다음 클릭
     
  8. 마침 클릭하면 7에서 지정한 경로에 .cer 확장자를 가진 SSL 인증서가 파일로 생성된다.
     


See Also


Ref


Related content

OpenSSL 로 ROOT CA 생성 및 SSL 인증서 발급
OpenSSL 로 ROOT CA 생성 및 SSL 인증서 발급
More like this
OpenSSL 로 SSL/TLS 용 인증서 요청 및 발급받기
OpenSSL 로 SSL/TLS 용 인증서 요청 및 발급받기
More like this
openssl 로 x509 인증서 파싱( certificate parsing )하기
openssl 로 x509 인증서 파싱( certificate parsing )하기
More like this
apache httpd 에 SSL/HTTPS 적용 및 VirtualHost 에 SNI(Server Name Indication) 문제 해결
apache httpd 에 SSL/HTTPS 적용 및 VirtualHost 에 SNI(Server Name Indication) 문제 해결
More like this
라라벨 미들웨어로 중요 페이지 HTTPS로 제공하기
라라벨 미들웨어로 중요 페이지 HTTPS로 제공하기
More like this
SSL 인증서 발급받기
SSL 인증서 발급받기
More like this