웹마스터 팁

1. 개요

 IIS에서 HTTPS 사용을 위한 SSL설정 과정입니다. 

 letsencrypt의 인증서를 설치, 자동으로 갱신하기 위해 win-acme 프로그램을 이용하는 방법을 소개합니다. (기존에 소개하였던 startssl 인증서 발급과정은 삭제하고 letsenscrypt로 대체하였습니다.)

 

2. 설치 전 확인 사항

 IIS에서 인증서를 사용하고자 하는 사이트가 미리 생성되어 있어야 하며, 방화벽에서 80포트가 열려 있어야 합니다. 

또한, 당연히 도메인의 소유자이어야 하며 도메인을 서버에 미리 연결해 두어야 합니다.

 

3. 순서

 4.  letsencrypt 인증서 발급

 5.  IIS에 SSL 인증서 적용 

 6.  갱신예약 확인

 

4. letsencrypt 인증서 발급

  • https://github.com/PKISharp/win-acme/releases 또는 https://www.win-acme.com/ 에 방문하여 다운로드합니다. (trimmed나 pluggable이나 기본 기능에는 차이없으므로 아무것이나 받아도 됩니다.)
  • C:\Program Files\win-acme\ 같이 적당한 폴더에 압축을 풀어 줍니다.(작업스케줄러에서 예약 실행될 경로이기도 하므로 관리하기 편한 폴더를 선택 합니다.)
  • wacs.exe 를 관리자 권한으로 실행합니다.(마우스 우클릭 > 관리자 권한으로 실행) 관리자 권한으로 실행하지 않으면 win-acme 프로그램상에서 인증서 설치 및 작업스케줄러등록이 되지 않습니다. 

 

  • 진행 과정 - 아래는 1)테스트.net 2)www.테스트.net 3)테스트.co.kr 4)www.테스트.co.kr 4개의 도메인(멀티도메인;SAN)에 대해 win-acme로 인증서 발급, 갱신예약등록을 진행해 보겠습니다. 모든 도메인은 서버로 연결 설정(A record 또는 C name)된 상태입니다.

(1) M - full option 설정 (win-acme버전에 따라 메뉴 구성이 달라질 수 있으므로 확인하고 진행하세요.)

1.jpg

 

(2) Manual Input - 콤마(,)로 구분하여 도메인을 입력합니다. 

(참고) IIS관리자의 각각 사이트에서 바인딩에 호스트이름을 미리 입력하였다면, All bindings of multiple IIS websites 를 선택하여 더욱 편하게 인증서를 생성할 수도 있습니다.

2.jpg

 

(3) 작업 이름을 지정합니다. 설정 없이 enter를 누르면 win-acme프로그램이 지정한 기본값으로 저장됩니다.

3.jpg

 

(4) [http-01] Server verificaion files from memory - 도메인의 실제 소유자인지 판단하는 인증방식을 선택합니다. 여기서 진행하는 self-hosting방식은 1)등록하고자 하는 도메인 모두가 A record 또는 C name등으로 미리 서버에 연결 되어 있어야 하며, 2) 서버의 방화벽에서 80포트가 개방되어야 하고, 공유기 등에서도 80포트가 서버로 포트포워딩 되어 있어야 합니다. (인증에 실패하는경우 위 사항을 다시 확인해 보세요.)

4.jpg

 

(5) RSA key선택

5.jpg

 

(6) 윈도우 인증서 저장소를 선택합니다. (이 저장소는 실행(window키+R) > mmc.exe > (상단메뉴)파일 > 스냅인 추가/제거 > (사용 가능한 스냅인)인증서 > 추가,확인 > (이 스냅인이 항상 관리할 대상) 컴퓨터 계정 > (이 스냅인이 관리할 컴퓨터) 로컬 컴퓨터 --- 콘솔1 [콘솔 루트] > 웹 호스팅 > 인증서 에서 확인할 수 있습니다.) (또한, IIS 관리자 > 서버 인증서 에서도 확인할 수 있습니다.)

6.jpg

 

(7) IIS가 아닌 Apache서버를 사용하거나 메일서버등에서 파일형식의(.pem) 인증서가 필요한 경우에, 저장 경로를 설정하여 인증서를 파일로 저장할 수 있습니다. 필요치 않은 경우 이 작업은 "No additional storage steps required"를 선택하여 건너 뛸 수 있습니다.

7.jpg

 

(8) 우리는 IIS관리자에서 직접 바인딩에 추가할 예정이므로 "4. Do not run any (extra) installation steps"를 선택 합니다. (여기에서 Create or update https bindings in IIS로 바로 추가해도 무방합니다.)

IIS에서 FTPs를 구성하려는 경우 Create or update ftps bindings in IIS 로 설정해 줍니다.

8.jpg

 

(9) 알림을 받을 e-mail주소를 입력하고, 서비스조항에 관한 pdf파일읽기는 스킵(n), 약관동의(y)를 눌러 줍니다.

9.jpg

 

(10) 인증작업이 진행되고 각각 저장소에 인증서가 잘 저장되었다는 메세지가 지나갑니다.

윈도우의 특정계정에서만 작업스케줄러를 실행할 것인지 묻는데 no를 선택하여 모든 계정에서 실행하도록 해줍니다.  

10.jpg

 

5. IIS에 SSL 인증서 적용

  • IIS 관리자 > 적용할 사이트 선택 > 바인딩에서 적용합니다.
  • 아래와 같이 등록을 진행한 4개의 도메인 + 호스트이름을 지정하지 않은 바인딩(기본 SSL 사이트로 지정을 위해)까지 총5개의 바인딩을 추가해 줍니다.
  • 호스트이름을 지정하는 경우 꼭 "서버 이름 표시 필요"에 체크하여야 합니다.
  • SSL 인증서는 win-acme을 통해 발급받은 인증서의 작업이름을 선택합니다.

11.jpg

 

6. 갱신예약 확인

  • win-acme에서 다음 갱신 예정일을 확인할 수 있습니다. 기본값은 인증서 설치일로부터 55일 후 갱신되도록 정해져있습니다. 이 값은 win-acme 폴더의 settings.json에서 변경할 수 있습니다. ([Scheduled Tack] > [RenewalDays])

12.jpg

 

  • 작업 스케줄러에서는 매일 지정된 시간에 win-acme 프로그램을 실행합니다. 이때 win-acme 프로그램은 55일이 경과되었는지 확인하여 인증서 갱신을 자동으로 진행합니다. (졔 경우에는 1주일에 한 번만 실행하도록 변경하였습니다.)

13.jpg

 

태그 연관 글
  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
제목 글쓴이 날짜
나만의 미니홈 만들기 ㅡ메뉴에 게시판 연결 [5] file 예뜨락 2004.12.17
[PHP] 이름 및 연락처 마스킹 처리 [1] ppumweb 2018.05.21
댓글 작성, 추천후 다운로드 받을수 있게 하기. [6] socialskyo 2013.09.06
Windows10 에서 IIS + mysql + PHP 설치 [10] file HSJI 2014.07.21
코드 이미지 생성해주는 사이트 [2] file reactux 2019.10.06
XE를 다른디렉토리에 설치후 리다이렉트하기 디자인플렉스 2020.04.24
게시판 글 엑셀로 출력하기(확장변수 포함) [15] 한이73 2014.07.17
관리자 아이디/비번을 잃어버렸을때, 관리자페이지 접속을 못할 때 TIP [1] file 플레이웹 2019.08.13
커뮤니션 쪽지 보내기 기능을 모바일 에서 실행시 로그인 풀림 현상 인천한량 2020.04.14
nginx 에서 서브도메인 사용시 로그인유지방법 [3] garnecia 2014.02.26
IIS에서 HTTPS를 사용하기 위한 SSL설정 (letsencrypt 인증서 설치, 갱신) file ehii 2016.04.13
AI 개발에 적합한 5가지 프로그래밍 언어 ppumweb 2020.01.06
ZB게시판에 구글광고 달수 없나요? [2] 손주사랑 2019.11.23
날씨배너 600종류 입니다.(지역별75종X색상별8종) file 푸른커튼 2008.01.30
대부분 쉬운설치로 인해 홈페이지 빈 페이지가 뜨는 에러는.. CJM 2019.10.24
xe 기본회원가입품 연락처항목 공백&숫자 유효성검사 질문입니다. 해운거사2 2019.08.25
[주옥시리즈] 내글 모니터링, 작성글 앞으로 뺴기 [6] socialskyo 2013.10.18
회원가입품 연락처항목 공백잇을시 질문입니다. 해운거사2 2019.08.16
VSCODE에서 PRETTIER-PHP 사용하기 (중급자용) reactux 2019.07.29
관리자페이지의 회원목록에서 타회원들의 비밀번호 찾기 질문/답변 수정 가능하도록 하려면.. sejin7940 2019.07.03