Microsoft IIS / Exchange SSL 인증서 설치/적용 가이드

사전 구성 환경

  • Windows Server 2008 R2 / IIS 7.5 이상 버전 권장 (TLS 1.2 지원 필수)
  • Microsoft 배포하는 패치중 인증서/암호화/IIS 관련 최신 패치 적용
  • SHA-2(SHA256) 암호화 지원 모듈 구성/활성 확인 필수
  • SNI(Server Name Indication, 서버 이름 표시) 기능 OS/웹서버 운영/활성화 권장 (443공용)
  • MD5, RC4 등 국제 보안 기구에서 해제를 권장하는 취약 암호화 모듈 비활성화
  • SSL 2.0, 3.0 및 TLS 1.0 1.1 취약 프로토콜 해제. 최신 TLS 1.2 1.3 접속 설정 권장

진행 과정

  1. CSR(Certificate Signing Request) 생성
  2. 인증서 발급 신청 제출
  3. 인증서 발급 신청
  4. 인증서 발급 완료 (발급내역서/파일설명서 PDF 참조)
  5. 인증서 설치 적용 - 신규,갱신,재발급,도메인추가
  6. 서버 정상 적용 완료 테스트
  7. 웹페이지에 https:// 링크 적용

CSR(Certificate Signing Request) 생성 예

⦁ SSL 인증서 발급 신청시, CSR 입력 단계에서 "CSR 자동생성" 선택시 수작업 생성 과정은 필요가 없습니다. (자동 이용 권장)
 ⦁ CSR 자동 발급 완료시, "개인키 / 서버인증서 / 체인인증서 / 루트인증서" 의 pem(crt,key), pfx, jks, p7b 파일이 첨부 제공됩니다.


- FAQ : 개인키(private key) 생성/보관 관련 참고 사항
- FAQ : SSL 발급 신청시 CSR 생성 관련 참고 사항
- FAQ : SSL 발급 신청시 도메인 형식 예제 및 참고 사항

Single

CN : sub.example.com 처럼 FQDN 도메인 형식 이어야 합니다.

Wildcard

CN : *.example.com 과 같은 패턴 이어야 합니다.

MultiDomain

CN : example.com 대표성을 가진 FQDN 도메인 1개만 입력 합니다.
SAN : 인증서에 포함될 나머지 FQDN 도메인은, 신청서 작성중 DCV 설정 단계에서 추가 입력합니다.

Multi-Wildcard

CN : example.com 대표 루트 도메인 1개을 CN으로 입력 합니다.
SAN : *.example.com 형식의 와일드카드 도메인은, 신청서 작성중 DCV 설정 단계에서 추가 입력합니다.

인증서 발급 완료 및 참고 사항

- 발급 완료 후에는, 메일첨부 또는 주문상세의 압축파일(zip)에 인증서 파일이 포함되어 있습니다.
- 서버 적용에 필요한 파일 정보는, zip 파일내 '발급내역서 및 루트/체인' PDF 에서 확인해야 합니다. (필수)
- 이후 과정 부터는, 서버에 SSL 인증서 설치/적용/확인 절차 입니다. (인터넷에 공개된 수많은 설정법과 차이 없음)
- 직접 설치/적용에 어려움이 있다면, 서버운영 전문업체 기술지원도 검토해 보시기 바랍니다 유료기술지원 확인하기

- 서버이름표시(SNI) 지원되는 IIS 8+ (2012+) 서버의 경우, 싱글/와일드/멀티도메인 인증서 구분없이 각 사이트 GUI 적용가능합니다.
- SNI 설정으로 하는 경우, 사이트에 접속하는 클라이언트의 호환성을 미리 검토해야 합니다.
- SNI 미지원 IIS 서버의 경우, 와일드카드/멀티도메인의 경우 명령어를 사용한 적용법으로 진행 권장합니다.

IIS 7/8 인증서 가져오기 및 적용 - PFX 포맷 파일 예제 (CSR 자동 생성 이용시)

메뉴 IIS 관리자 구성 요소중 서버인증서 오른쪽 작업 메뉴에서 가져오기

발급 받은 domain_xxxxx.pfx 파일을 선택하고, 암호에는 .pfx 암호를 넣습니다 (암호는 발급내역서 PDF 또는 주문상세페이지 참조). 인증서 저장소는 웹 호스팅을 선택하셔야 합니다. 인증서 가져오기 완료후에 다음 단계는 인증서를 적용할 사이트 속성으로 이동합니다. (단일 인증서 기준)


메뉴 IIS 관리자 사이트 선택 후 오른쪽 메뉴의 바인딩 추가 클릭 https/포트 설정후, 앞서 가져오기 했던 인증서를 선택 확인 (포트 중복 충돌 유의)

IIS 8+ 의 SNI (서버이름표시, 포트 중복/공유 지원) 설정은 적용 전 SSL 포트에 접속하는 클라이언트의 호환성 검토를 미리 해야 합니다 (특별히 문제 없다면 활용 권장).

IIS 6 인증서 가져오기 및 적용 - PFX 포맷 파일 예제 (CSR 자동 생성 이용시)

메뉴 IIS 관리자


발급 받은 domain_xxxxx.pfx 파일을 선택하고, 암호에는 .pfx 암호를 넣습니다 (암호는 발급내역서 PDF 또는 주문상세페이지 참조).
Windows 2003, 2008 은 TLS 1.2 미지원으로 웹브라우져에서 경고창이 발생할 수 있습니다.

인증서 가져오기 및 적용 - .crt 서버 응답 파일 예제 (CSR 직접 생성한 경우)

IIS 6 발급 받은 domain_xxxxx.crt.pem 파일을 지정


IIS 7/8 IIS 관리자 - 작업 - 인증서 요청 완료 : 발급 받은 domain_xxxxx.crt.pem 파일을 지정

Root / Chain 아래 가이드를 참조하여 루트인증서 / 체인(중개)인증서 가져오기를 추가로 진행 합니다. (발급 zip 의 RootChain 폴더에 있음)

mmc 를 이용한 루트인증서 / 체인인증서 가져오기
certutil.exe 를 이용한 루트인증서 / 체인인증서 가져오기

MultiDomain 또는 Wildcard 인증서 적용 절차 (SNI 미사용)

서버에서 1개의 SSL 포트(ex, 443)에는 1개의 고유한 인증서(Hash) 만 단독으로 적용 되므로, 대상 포트에 '다른 개별 인증서 또는 재발급/갱신전 기존 인증서' 로 인해서 오류가 발생할수 있으므로 적용전에 미리 확인해야 합니다.

IIS 6
  1. IIS GUI 에서는 SSL 포트의 FQDN 바인딩 설정이 불가하므로 adsutil.vbs 를 이용해서 각 사이트마다 적용해야 합니다.
  2. 최초 적용시에는, IIS GUI 에서 메인 사이트의 디렉터리 보안에서 발급 받은 인증서를 먼저 설정 후, 나머지 사이트는 명령어로 적용합니다.
  3. 재발급/갱신 재적용시에는, IIS GUI 에서 최초 메인 사이트의 디렉터리 보안에서 SSL 인증서만 변경 지정해 줍니다.
  4. SSL 설정 작업 도중에, 지속적으로 이벤트 로그를 확인하여 오류가 발생하는지 꼭 확인해야 합니다.
  5. SSL 설정 적용/변경 후 에는, 변경값의 완벽한 적용/확인을 위해 IIS 재시작을 권장합니다.
  6. cscript.exe 에 대한 상세 사용법 설명은 IIS 자체 도움말을 참조 바랍니다. (SecureSign 에서 설명불가)

적용

cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/식별자ID/SecureBindings ":443:인증서가 적용되는 FQDN"
멀티도메인 또는 와일드카드 도메인에 해당하는 IIS 사이트에 모두 적용을 진행 합니다. (식별자 ID 는 IIS 사이트 목록에서 확인)
갱신/도메인추가/재발급 의 경우 새로 추가된 도메인은 해당 사이트에 설정해야 합니다. (도메인 변경 없으면 불필요)

제거

cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs delete /w3svc/식별자ID/SecureBindings

IIS 8+ GUI 부터 지원되는 SNI (서버이름표시) 설정을 이용해서 각 사이트를 설정시 아래와 같은 명령 실행은 필요 없지만, 오래된 구형 디바이스/웹브라우져와 호환성을 위한 경우에는 아래와 같은 명령행을 이용해서 적용 가능합니다 (선택사항).

IIS 7/8 +
  1. 최초 적용시에는, IIS GUI 에서 메인 사이트의 https 443 기본 포트에 발급 받은 인증서를 먼저 설정 후, 나머지 사이트는 명령어로 적용합니다.
  2. 재발급/갱신 재적용시에는, IIS GUI 에서 기존 SSL Hash 적용된 메인 사이트의 SSL 인증서만 변경 지정해 줍니다.
  3. SSL 설정 작업 도중에, 지속적으로 이벤트 로그 확인 및 웹페이지 접속 테스트하여 오류/경고 발생여부를 꼭 확인해야 합니다.
  4. SSL 설정 적용/변경 후 에는, 변경값의 완벽한 적용/확인을 위해 IIS 재시작을 권장합니다.
  5. appcmd.exe 에 대한 상세 사용법 설명은 IIS 자체 도움말을 참조 바랍니다. (SecureSign 에서 설명불가)

적용

appcmd set site /site.name:"사이트 이름" /+bindings.[protocol='https',bindingInformation='*:443:인증서가 적용되는 FQDN']
멀티도메인 또는 와일드카드 도메인에 해당하는 IIS 사이트에 모두 적용을 진행 합니다.
갱신/도메인추가/재발급 의 경우 새로 추가된 도메인은 해당 사이트에 설정해야 합니다. (도메인 변경 없으면 불필요)

제거

appcmd set site /site.name:"사이트 이름" /-bindings.[protocol='https',bindingInformation='*:443:인증서가 적용되는 FQDN']

Exchange 인증서 적용

Exchange 2007+

메뉴 MMC 인증서 스냅인 컴퓨터 계정 트리에서 웹호스팅 인증서 기타작업-모든작업-가져오기 (pfx)

적용

1. Thumbprint 확인
PowerShell : Get-ExchangeCertificate -DomainName [인증서도메인]
2. 인증서 적용
PowerShell : Enable-ExchangeCertificate -ThumbPrint [Thumbprint 문자열] -Services "SMTP, IMAP, POP, IIS"

제거

PowerShell : Remove-ExchangeCertificate -Thumbprint [Thumbprint 문자열]

설치 적용 확인

- SSL 설정 적용 후, IIS/Exchange 서버를 재시작하여 정상 구동이 되는지 확인이 필요합니다.

- 서버 데몬 시작시 SSL 설정 관련 오류,경고가 있는지 콘솔/데몬/이벤트 로그 확인이 필요합니다.
- 서버 로컬에서 설정한 HTTPS 포트가 활성화 되어 있는지 netstat 등으로 확인해야 합니다.
- 외부에서 HTTPS 포트 접속이 되지 않는 다면 보안설정(방화벽등) 허용을 확인해야 합니다.
- L4 분산 환경은, HTTPS 패킷을 수신하는 모든 노드 웹서버에 SSL 적용이 필요합니다.
- L7 라우팅 환경은, L7 에도 HTTPS 활성 및 SSL 인증서 설정이 필요합니다. (장비별 자체 매뉴얼 참조)

- SSL 발급 도메인 웹페이지에 https:// 링크 적용을 별도 진행해야 최종적으로 SSL 암호화가 적용됩니다. (개발자,웹디자이너)
- PC 및 스마트폰의 "Chrome / Firefox / IE / Edge" 각 웹브라우져에서 "루트,체인,SSL,TLS" 경고가 발생 하는지 확인해야 합니다.

SSL 설치/적용 트러블슈팅 SSL 설치 적용 확인 하기 체인인증서 적용 여부 확인 인증서 포맷 변환 방법
컨텐츠의 무단 전재/복사 및 이메일 주소의 수집/이용을 허용하지 않습니다.
bitSyrup 2023. All rights reserved.