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

사전 구성 환경

  • 마이크로소프트에서 제공되는 Windows Server 의 패치중 인증서/암호화/IIS 관련 최신 패치 적용
  • TLS / SHA-2(sha256) 암호화 지원 모듈 구성/활성 확인 필수
  • 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. 정상 적용 완료 테스트

CSR(Certificate Signing Request) 생성 예

- SSL 인증서 발급 신청서 작성시, CSR 입력 단계에서 온라인 "CSR 자동생성" 이용을 권장합니다. (현재 과정 필요 없음)
- CSR 자동생성 발급 완료시, "개인키, 서버인증서, 체인인증서, 루트인증서" PEM 파일이 모두 포함되어 있습니다.
- 추가 포함된 "pfx / jks" 패키지에는, "개인키+서버인증서+체인인증서+루트인증서" 가 모두 통합되어 있습니다.

Wildcard

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

MultiDomain

CN : example.com 대표성을 가진 도메인 1개만 입력 합니다. 포함될 나머지 도메인 목록은 신청서에 별도 입력합니다.

인증서 발급 완료

- 발급 완료 후에는, 메일첨부 또는 주문상세의 압축파일(zip)에 인증서 파일이 포함되어 있습니다.
- 서버 적용에 필요한 파일들에 대해서, 발급 내역서 PDF 및 루트/체인 설명 PDF를 통해서 미리 숙지해야 합니다.
- 이후 과정 부터는, 서버에 SSL 인증서 설치/적용/확인 절차 입니다. (인터넷에 공개된 설정법과 차이 없음)

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

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

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


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

IIS 8+ 의 SNI (서버이름표시, 포트중복가능) 설정은 오래된 구형 디바이스 / 웹브라우져와 호환성 문제가 있으므로, 적용 전 SSL 포트에 접속하는 클라이언트의 호환성 검토를 미리 해야 합니다.

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

메뉴 IIS 관리자


발급 받은 domain_xxxxx.pfx 파일을 선택하고, 암호에는 .pfx 암호를 넣습니다 (암호는 발급내역서 또는 주문상세페이지 참조).

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

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


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

Root / Chain 윈도우 탐색기에서 [인증서 설치] - [로컬 컴퓨터] - 저장소 자동 (RootChain 폴더내 모든 .crt 파일) (서버에 없는 경우에만 적용) 또는 MMC 설치의 경우 [MMC] - [스냅인추가] - [인증서] - [컴퓨터 계정] - [신뢰할 수 있는 루트 인증 기관 / 중간 인증 기관] 에 각각 루트인증서와 체인인증서 가져오기

MultiDomain/Wildcard 인증서 적용

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 재시작을 권장합니다.

적용

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 (서버이름표시) 설정을 이용해서 각 사이트를 설정시 아래와 같은 명령 실행은 필요 없지만 오래된 구형 디바이스/웹브라우져와 호환성 문제가 있으므로, 적용 전 SSL 포트에 접속하는 클라이언트 호환성 검토를 미리 해야 합니다. 호환성 문제가 있다고 판단되면 명령행 적용 방법으로 하셔야 합니다.

IIS 7/8 +
  1. 최초 적용시에는, IIS GUI 에서 메인 사이트의 https 443 기본 포트에 발급 받은 인증서를 먼저 설정 후, 각 사이트마다 명령어로 적용합니다.
  2. 재발급/갱신 재적용시에는, IIS GUI 에서 최초 메인 사이트 443 기본 포트의 SSL 인증서만 변경 지정해 줍니다.
  3. SSL 설정 작업 도중에, 지속적으로 이벤트 로그를 확인하여 오류가 발생하는지 꼭 확인해야 합니다.
  4. SSL 설정 적용/변경 후 에는, 변경값의 완벽한 적용/확인을 위해 IIS 재시작을 권장합니다.

적용

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 인증서 스냅인 컴퓨터 계정 트리에서 웹호스팅 인증서 기타작업-모든작업-가져오기

추가

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

삭제

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

설치 적용 확인 및 변환

* 서버에 SSL 설정 적용 후, 웹서버를 재시작하여 시작시 오류 또는 경고가 있는지 이벤트 로그를 필히 확인해야 합니다. (필수 확인 사항)
* PC 및 스마트폰의 "Chrome / Firefox / IE / Edge" 각 웹브라우져에서 "루트,체인,SSL,TLS" 경고가 발생 하는지 확인해야 합니다.

SSL 설치/적용 트러블슈팅 SSL 설치 적용 확인 하기 체인인증서 적용 확인 방법 인증서 포맷 변환 방법 TrustLogo 적용 방법