웹마스터 팁

1. 개요

 IIS에서 HTTPS 사용을 위한 SSL설정 - 인증서 설치 및 백업

 보안등급 향상 방법 설명

 

2. 순서

 3~5  SSL 설정 - 개인키 생성 및 CSR구문 생성, 인증기관에서 인증서 발급, 인증서 설치

 6  개인키 백업 및 복원

 7  보안등급 향상 방법

 8  참조

 

3. 개인키 생성 및 CSR 생성

 3.1 시작 > 모든 앱 > Windows 관리 도구 > IIS (인터넷 정보 서비스) 관리자 > 서버 인증서

ssl_1.jpg

 3.2 서버 인증서 > 인증서 요청 만들기

   --- 일반 이름은 도메인 네임으로, 비트 길이는 2048로 해주시면 됩니다.

 ssl_2.jpg

ssl_3.jpg

 

 3.3 인증서 요청 파일 이름 지정 후 마침

 3.4 생성된 인증서 요청파일을 메모장등으로 열어보면 아래와 같은 형식(CSR구문)으로 저장되어 있습니다.

-----BEGIN NEW CERTIFICATE REQUEST-----

ABCD~~~~~~~==

-----END NEW CERTIFICATE REQUEST-----

 

 3.5 만들어진 개인키는 MMC(Microsoft Management Console)에서 확인할 수 있으며, 확인, 백업 및 복원 방법은 후술 하겠습니다.

 

4. 인증기관(CA)에서 인증서 발급

   --- 이하 Startssl의 인증서 발급과정을 예로 들어 설명하겠습니다.

 4.1 startssl.com에서 메일 인증 / 도메인 인증을 거친 후 서버용 인증서 신청

ca_1.jpg

 4.2 적용하고자 하는 도메인 (서브 도메인 포함) 입력

     - 와일드 카드 사용 이나 100개 이상 서브도메인을 쓰려면 유료 서비스를 이용하라고 하네요.

 4.3 CSR 제출

     - 3.4에서 확인한 인증서 요청파일의 내용을 붙여넣기 하시면 됩니다.

ca_2.jpg

 4.4 Submit 후 도메인네임.zip 파일로 된 인증서를 다운받을 수 있습니다.

     - IIS용은 2_도메인네임.crt(인증서 파일)과 1_Intermediate.crt(CA 인증서)로 구성 되어 있습니다.

4.5 인증서 파일을 분실한 경우 startssl.com에 로그인 하여 아래와 같이 인증서 파일을 재발급 받을 수 있습니다. 

     - 개인키는 재발급 되지 않으니 꼭 백업하시기 바랍니다. (6. 개인키 백업/복원 참조)

ca_3.jpg

 

5. 인증서 설치

 5.1 IIS (인터넷 정보 서비스) 관리자 > 서버 인증서

ssl_1.jpg

 5.2 인증서 요청 완료

     - 인증기관의 응답이 포함된 파일 이름에는 4.4에서 발급받은 2_도메인네임.crt(인증서파일)

     - 이름에는 확인하기 편리한 아무 이름이나 기입하고 확인 클릭

     - 만약 서버 이전 등으로 인해 서버에 개인키가 저장되어 있지 않은 경우 인증서만 설치하면 서버인증서 리스트에 표시 되지 않습니다. 꼭 개인키를 백업 하시기 바랍니다. (6. 개인키 백업/복원 참조)

crt1.jpg

crt2.jpg

 5.3 사이트에 적용

     - 적용할 사이트 선택 > 바인딩.

     - https / SSL 인증서 선택

     - SSL 항상 사용하는 경우 ; SSL 필요 체크하여 인증서 없는 접근을 차단

crt3.jpg

crt4.jpg

crt5.jpg

 

6. 개인키 백업 및 복원

 --- 발급 받은 인증서와 CA인증서는 startssl.com에 로그인 후 재발급 받을 수 있으나 개인키는 재발급이 되지 않기에 꼭 백업을 해야 합니다. (인증서파일은 재발급 받을 수 있다지만, 역시 개인키과 같이 백업해 두는 것이 좋겠지요.)

 --- SCR(인증서 요청 파일)은 처음 인증서 발급과정에서만 필요하지만, 혹시 모르니 백업해 두세요^^;   

 6.1 실행(윈도우키+R) > mmc

 6.2 파일 > 스냅인 추가/제거 > 인증서 추가 > 컴퓨터 계정 > 로컬 컴퓨터: (이 콘솔이 실행되고 있는 컴퓨터) > 마침 > 확인

backup_1.jpg

 6.3 콘솔 루트 > 인증서(로컬 컴퓨터) > 인증서 등록 요청 > 인증서 > 인증서 선택 후 마우스 우클릭 > 모든 작업 > 내보내기 

backup_2.jpg

 6.4 개인 키 내보내기 > 개인 정보 교환 - PLCS #12(.PFX)  > 암호 입력 > 파일 이름 지정 > 마침

     - 이 경우 개인키가 포함된 인증서 파일(pfx)로 백업 됩니다.

     -  apache서버 등에서 사용하기 위해서는 openssl 을 이용하여 pfx->pem 또는 pfx->key파일로의 변환과정이 필요합니다.

backup_3.jpg

backup_4.jpg

 6.5 개인키 복원 및 인증서 재설치

      - 6.1과 6.2 과정을 거친 후 콘솔 루트 > 인증서 > 인증서 등록 요청 > 마우스 우클릭 > 모든 작업 > 가져오기로 개인키를 복원할 수 있습니다.

      - 이후 5.인증서 설치 과정을 진행하시면 됩니다.

backup_5.jpg

 

7. 보안 등급 향상 방법 - SSL3 disable, SSLCipherSuite

 7.1 SSL Server Test 에서 등급 확인

 7.2 SSL3 disable

     - 이 방법은 IE6와 호환되지 않습니다.

     - 레지스트리 수정 - 첨부파일 DisableSSL3.reg 실행.

     - 참조 https://support.microsoft.com/ko-kr/kb/187498

 7.3 SSLCipherSuite Windows 10 1709의 보안업데이트로 아래 사항 적용이 필요 없게 되었습니다. (https://msdn.microsoft.com/ko-kr/library/windows/desktop/mt813794(v=vs.85).aspx)

      - 실행(윈도우키+R) > gpedit.msc > 컴퓨터 구성 > 관리 템플릿 > 네트워크 > SSL 구성 설정 > SSL 암호 그룹 순서

      - SSL 암호 그룹에 아래의 내용 입력

ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES256-GCM-SHA384,DHE-RSA-AES128-GCM-SHA256,DHE-DSS-AES128-GCM-SHA256,kEDH+AESGCM,ECDHE-RSA-AES128-SHA256,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA,ECDHE-ECDSA-AES128-SHA,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA,ECDHE-ECDSA-AES256-SHA,DHE-RSA-AES128-SHA256,DHE-RSA-AES128-SHA,DHE-DSS-AES128-SHA256,DHE-RSA-AES256-SHA256,DHE-DSS-AES256-SHA,DHE-RSA-AES256-SHA,AES128-GCM-SHA256,AES256-GCM-SHA384,AES128-SHA256,AES256-SHA256,AES128-SHA,AES256-SHA,AES,CAMELLIA,DES-CBC3-SHA,!aNULL,!eNULL,!EXPORT,!DES,!RC4,!MD5,!PSK,!aECDH,!EDH-DSS-DES-CBC3-SHA,!EDH-RSA-DES-CBC3-SHA,!KRB5-DES-CBC3-SHA

test_1.jpg

test_2.jpg

 

8. 참조

 Startssl 설치과정!! - 제이엔지님

 SSL의 정석 (아파치 & nginx) - 기진곰님

 StartSSL 무료 인증서 발급받기 - CONORY님

 Startssl, iis에서 설치법 - 식군님

 https://support.microsoft.com/ko-kr/kb/324069

 https://startssl.com/Support?v=31

 IIS에 SSL적용해보겠다고 구글 검색해가며 고생했는데, 다른 분들을 위해 제가 검색한 자료를 정리해 봤습니다. 앞서 팁글을 올려주신 분들께 감사드립니다.

 

태그 연관 글
  1. [2017/07/22] 묻고답하기 닷홈게시판 Wix홈페이지 연결오류 by 한우 *1
  2. [2016/10/17] 묻고답하기 https 관련 질문입니다 ㅠㅠ by 쿠닌 *1
  3. [2016/03/18] 묻고답하기 SSL 테스트, B등급에서 더 올릴 수 있나요? by 마꼬꼬 *2
  4. [2016/01/07] 묻고답하기 ssl 항상사용 후 접근이 안되고 있습니다.. by 신다영 *5
  5. [2015/10/06] 묻고답하기 Ubuntu에서 SSL과 방화벽의 중복 사용 문의 by 마꼬꼬 *2
제목 글쓴이 날짜
[수정]알림센터 Lite에 메일발송 기능을 추가하기 [13] file 매실茶 2013.11.25
고정도메인 host 변경하기 해피정닷컴 2016.03.11
도메인 변경 또는 설치 폴더 변경시 이미지 주소변경하기 file 해피정닷컴 2018.06.08
게시판글 엑셀 파일 보내기 php7용 file 황금날개 2018.06.05
단축url API 사용하시는 분들... 미스터강 2018.06.01
글 작성시 미리 저장된 서식 불러오기. [10] file 개돌 2009.07.09
[PHP] 이름 및 연락처 마스킹 처리 ppumweb 2018.05.21
새로운 쪽지 유무에 따라 이미지 변경하는 법 [2] 멀티비타민 2013.12.16
관리권한 없이도 특정그룹에게 비밀글 열람 및 댓글작성 권한 부여하는 방법 ( 부운영자등을 위해) sejin7940 2018.04.26
윈도우 8.1 및 윈도우10 에서 IIS + mysql + PHP 설치 [9] file HSJI 2014.07.21
요즘 제가 jquery 웹앱 솔루션을 개발했습니다. file 안드류KIM 2018.04.03
게시판 본문읽기에서 컨텐츠 이미지와 텍스트 분리하여 출력하기 forest535 2018.04.09
EXIF 메타정보 필요하신 분 있으시면 forest535 2018.04.09
IIS에서 HTTPS를 사용하기 위한 SSL설정 file ehii 2016.04.13
XEDITON 레이아웃에 다국어(국기) 선택 버튼 추가하기 [7] file ehii 2015.04.15
댓글을 역순으로 출력하는 팁 (최근댓글이 가장 위에) [8] sejin7940 2012.02.10
게시글 상하단에 광고삽입하기 veplay2 2018.03.08
winamp 방송정보 알아오기 (2005년 새로 코딩한 버전) [8] file 이승원 2005.05.06
[강추]!! 긁어와서 [자동]으로 게시글로!! [메타 블로그] php 로 넣기!!! xe블로그api를 이용한.. [51] file 김기철980 2009.01.29
css팁 : 웹폰트 저장소 Dotcomsoft 2018.01.17