2006/10/22

Wildcard SSL 인증서를 이용한 다중 SSL 웹사이트 인스턴스 구성

일반적으로 웹서버에 SSL을 적용할려면 웹서버 인증서버가 필요합니다.

웹서버 인증서는, 도메인 기준인데요. 웹브라우져에서 https:// 로 시작합니다. 말하자면 SSL 레이어를 통한 http 프로토콜인데요..

문제는,. 웹서버에 1개의 도메인 웹사이트만 구축해서 운영하는 서버도 있습니다만 거의 대부분이 여러개의 도메인을 운영하게 됩니다.

그런데, 각 도메인마다 SSL을 적용할려면 다음과 같은 오류가 발생합니다.



웹서버는 기존 80포트의 다중 인스턴스를 운영가능하지만 443 SSL 포트는 다중 인스턴스 운영이 불가능합니다.  443포트를 선점한 웹사이트에서만 가능해 집니다.



정확한 웹서버 아키텍쳐를 확인해 봐야 하겠지만,. 웹사이트 HTTP 1.1 에서는  헤더 암호화로 도메인 분석하는 루틴이 없어서 그렇지 않나 싶습니다. SSL 에서, 도메인을 확인할수 있는 호스트헤더 도메인 부분 만이라도 암호화대상에서 제외하는 기술이 추가된 HTTP 프로토콜 규격 업데이트 가 있어야 하지 않나 싶습니다.

그런데, Windows Server 2003 Service Pack 1 의 IIS 6 에서는 Wildcard SSL을 지원합니다. Apache 등 오픈소스계열 및 타 웹서버도 지원하지 않나 추측해 봅니다.

단, 제한이 있습니다. Wildcard SSL 인증서 1개만 입니다. 이를테면, *.serverinfo.pe.kr 외 다른 인증서를 443 기본 포트로 이용은 할수 없습니다. 443으로 설정하면 위와 같은 오류가 발생하면서 해당 웹사이트가 중지되게 됩니다.

IIS 6에서 Wildcard SSL 이 443을 점유하면, 다른 SSL은 443을 쓸수 없어 다른 포트를 이용하거나 여러개의 IP주소가 있다면 IP별 443 포트를 이용하는 방법외, 현재로선 Wildcard SSL 외에는 대안이 없습니다.

Wildcard SSL 은 *.serverfinfo.pe.kr 처럼 2차 호스트명으로 2개 이상의 웹사이트 운영을 하는 운영자에게는 매주 좋은 방법의 SSL 적용이며, 거의 대부분의 SSL 업체에서 판매를 하고 있습니다. (* http://comodossl.co.kr 참조, Wildcard SSL 인증서는 IIS 에서 csr 코드 생성서, 웹사이트 이름에 *.serverinfo.pe.kr 로 입력하면 됩니다.)

다음 과정을 거쳐서 적용이 가능합니다.

1. 구매한 Wildcard SSL을 적용코자 하는 IIS 웹사이트의 인증서를 적용합니다. 인증서 적용시에 기본 443 포트가 아닌 다른 임의 포트를 적용합니다.



2. 완료후, 443 포트를 적용하기 위해서는 IIS 메타베이스 수정이 필요합니다. 왜냐면, MMC 에서는 SSL 호스트헤더 적용을 지원하지 않기 때문입니다.



위 그림처럼, SSL 포트에 대한 호스트헤더 지정을 할수 없습니다. 그래서 직접 메타베이스 수정이 필요한데요.. 메타베이스 수정은, Adsutil.vbs 나 IIS 리소스킷의 Metabase Explorer 를 이용할수 있습니다.

여러개의 Wildcard SSL 을 적용한 각 웹사이트에 대해서 다음과 같이 SSL 호스트헤더 지정을 합니다.

cscript adsutil.vbs set w3svc/{사이트ID}/SecureBindings ":443:ssl1.serverinfo.pe.kr"
cscript adsutil.vbs set w3svc/{사이트ID}/SecureBindings ":443:ssl2.serverinfo.pe.kr"
cscript adsutil.vbs set w3svc/{사이트ID}/SecureBindings ":443:ssl3.serverinfo.pe.kr"

또는,



와 같이, *.serverinfo.pe.kr Wildcard SSL을 적용할 웹사이트에 대해서 모두 작업을 해줍니다.



이로써, Wildcard SSL 이 여러개의 웹사이트 인스턴스에 적용되었습니다.  2차 하위 도메인의 여러개의 웹사이트를 운영하는 운영자에게는 좋은 방법입니다. 1개의 SSL을 여러개의 웹사이트에 적용을 할수 있으니깐 말이죠...

만약, 윈도우서버에 2차 하위도메인으로 몇개, 리눅스 Apache 에 2차 하위도메인으로 몇개를 분리해서 운영한다면 먼저 IIS에서 Wildcard SSL을 적용후에 IIS MMC 에서 인증서내보내기를 통해서 Apache 에도 적용할수 있습니다.



22-wildcardssl_1.gif
22-wildcardssl_2.gif
22-wildcardssl_3.gif
22-wildcardssl_4.gif
22-wildcardssl_5.gif
22-wildcardssl_6.gif

댓글 없음:

댓글 쓰기

가장 많이 본 글