Freigeben über


HTTPS 및 SSL을 사용 하여 Windows Azure 웹 사이트 (WAWS) 보안 강화하기

HTTPS 및 SSL을 사용 하여 Windows Azure 웹 사이트 (WAWS) 보안 강화하기

이 포스트는 12 월 14 일에 게시된 Securing your Windows Azure Web Sites (WAWS) with HTTPS and SSL 의 번역본 입니다.

편집메모 : 이번에는 Windows Azure 웹 사이트 팀에서 프로그램 관리자를 맡고 있는 Erez Benari의 기사를 소개 합니다.

ID도난 및 다양 한 형태의 사이버 범죄자가 급속하게 증가하고, Secure Socket Layer (SSL)를 이용해서 웹 사이트의 보안을 보호 하는 것이 중요하고 일반적인 일이 되었습니다. 웹 사이트를 Windows Azure Web Site (WAWS)에 호스트 하는 고객 중메서 많은 분들이  HTTPS를 사용하도록 설정하는 방법을 찾고 계실 것 입니다.이 문서에서는 그 방법에 대해 설명 합니다.

첫 번째 단계로 디지털 인증서를 얻는 것 입니다. 맞나요? 아니요, 꼭 그렇지는 않습니다. 우선, 처음에 자신의 도메인을 소유하고 있거나 Azure 기본 도메인인 Azurewebsites.net 를 사용하여 사이트를 운영할지 여부를 결정합니다. 이것이 첫 번째 단계인 이유는 Windows Azure 웹 사이트가 SSL을 사용하도록 미리 구성되어있기 때문에 자신만의 도메인이 필요하지 않으면 즉시 SSL을 사용할 수 있습니다. 이미 설정이 되어 있으니 그냥 사이트를 방문 하시기 만 하면 됩니다. 귀하의 브라우저에서 접두사를 https:// 에서 HTTPS:// 로 변경 하면 완료됩니다. 사이트는 응답하고 해당 사이트에 보안 연결을 제공합니다. 그러나 보안을 중시하는 콘텐츠 및 응용 프로그램에 이 방식을 사용하는 것은 권장하지 않습니다. 사용되는 와일드 카드 인증은 모든 Azure 웹 사이트에 공통으로 사용 되기 때문입니다.

자신의 도메인에 SSL을 사용하는 경우에는 몇 가지 단계가 추가로 필요합니다. 작업을 수행 하기 전에 사용자 지정 도메인에 SSL을 사용 하는 표준 모드에서만 지원되는 것에 주의 하십시오. 현재 무료 또는 공유 모드에서 사이트를 운영 하는 경우 표준으로 전환해야 하며 추가 비용이 부과 됩니다. 예상 비용을 확인하려면 Windows Azure 웹 사이트의 가격 정보요금 계산 도구 를 참조하십시오.

도메인을 선택하고 그것을 사용하도록 사이트를 구성한 후 다음 단계는 도메인에 일치하는 디지털 인증서를 검색하는 것입니다. 인증서 구입에는 다음과 같은 세 가지 옵션이 있습니다.

  1. 웹 사이트의 URL과 일치 하는 간단한 인증서 : 이것은 가장 저렴한 방법으로,  https://www.thesslshop.com (영문) 와 같은 웹 사이트 쇼핑 몰에서는 연간 8 달러 정도 밖에 들지 않습니다.
  2. SAN (주체 대체 이름 - Selective Alternative Name) 인증서 : 이것은 동일한 도메인 아래의 여러 URL과 일치 하는 인증서로 여러 웹 사이트를 가지고 있는 기업에게 경제적인 방법입니다. 여러 인증서를 URL 별로 구입 하는 대신, 하나 이상에 해당 하는 인증서를 1 개 구입하면 비용을 줄일 수 있습니다.
  3. 와일드 카드 인증서 : 이것은 귀하의 도메인 아래의 모든 하위 도메인과 일치 하는 인증서로, 가장 비싼 유형이기는 하지만, 많은 웹 사이트를 가지고 있는 기업에게는 재무 측면에서 가장 합리적인 방법입니다. 예를 들어 30 개의 웹 사이트가 있는 회사의 경우 와일드 카드 인증서에 79 달러를 지불 하는 30 개의 인증서에 240 달러 지불보다 훨씬 저렴 합니다.

실제로 인증서를 구입하는 공급자를 선택하고 특정 프로세스를 통해 인증서를 PFX 파일 형태로 생성해야 합니다. 이 프로세스에 대한 자세한 내용은 이문서 ( 영문) 에 나와 있습니다.

인증서를 얻은 후에는 SSL을 사용하는 것은 매우 간단 합니다. 단계는 다음과 같습니다.

1 단계 : 사이트를기본모드로전환

전환하기 전에 설정하여 제한 제거를 고려하십시오. 이는 필수 요구 사항은 아니지만, 상업 사이트를 제한적으로 운용 하는 것은 일반적으로 적절하지 않습니다. 제한에 도달하면 다음 청구 주기까지 사이트가 오프라인 상태가 되어 버리기 때문입니다. 사이트를 표준으로 전환 하는 단계는 다음과 같습니다.

  1. Azure 관리 포털에 로그인 합니다.
  2. 해당 웹 사이트를 클릭 합니다.
  3. [Scale] 탭으로 전환 합니다.
  4. [General ] 섹션에서 [Standard] 단추를 클릭하고 사이트를 기준으로 전환 합니다.

       5. [Save] 를 클릭합니다.

두번째단계 : SSL 구성

SSL을 구성하려면 인증서를 업로드하고 사이트에 바인딩합니다. 단계는 다음과 같습니다.

  1. Azure 관리 포털에 로그인 합니다.
  2. 해당 웹 사이트를 클릭 합니다.
  3. [Configure] 탭으로 전환 합니다.
  4. [Certificate] 섹션에서 [Upload a certificate] 을 클릭 합니다.

       5. 인증서 PFX 파일을 업로드하고 암호를 지정 합니다 (인증서를 PFX로 내보낼 때 생성 된 암호).

       6. [SSL Bindings] 드롭다운 목록에서 사용자 지정 도메인을 선택 합니다. 사용자 지정 도메인을 아직 구성 하지 않은 경우 이 페이지 에서 구성 하는 방법을 확인 하십시오.

       7. 드롭다운 목록에서 해당 인증서를 선택 합니다 (여기서는 하나 이지만, 향후 증가 해도 상관 없습니다).

       8. 세 번째 드롭다운에서SNI ( 영어) 을 사용하거나 사용하지 않도록 설정할 수 있습니다. 보통 SNI 사용을 선호하지만, 아주 오래 된 버전의 브라우저 (Windows XP 및 이전 버전)에서 사이트에 액세스해야 하는 경우에는 [IP Based SSL] 을 선택합니다. SSL에 대 한 요금을 보면 SNI사용이 경제적으로 매력적이라는 것을 알 수 있습니다.

       9. [Save] 를 클릭 합니다.

성공하면 완료됩니다. 사이트는 HTTPS에 보낸 요청에 응답할 것 입니다.

문제해결

잠재적으로 가장 흔한 오류는 인증서를 Azure에 업로드할 수 없는 것 입니다. 이전 기사 ( 영어) 에서 인증서를 가져오는 방법에 대해 설명하고 있습니다, 인증서는 반드시 PFX형식으로 내보내기가 되어야 하며, 인증서 공급자가 제공하는 임의의 형식 (확장자가 PFX라 하더라도) 이어서는 안됩니다.. 인증서를 웹 사이트에 할당하려면 Azure는 인증서에 연결된 개인 키가 필요하기 때문입니다. 인증서 생성 과정은 사용하는 컴퓨터에서 개인 키를 만들 때 부터 시작되고 이를 인증서 공급자가 확인합니다. 공급자가 제공한 파일은 요청을 처음에 시작한 컴퓨터에서 가져올 수 있습니다. 이것에 의해 "완전한" 인증서가 생성됩니다. 공급자에서 가져온 파일을 업로드하려고 하면 Azure에 개인 키가 전달되지 않기 때문에 인증서가 무효화됩니다.

이 문제의 다른 원인은 인증서를 PFX 내보내기를 잘못한 경우 입니다. 내보내기 작업에는 개인 키를 포함해야  하며 (이 과정의 일부로 암호를 입력합니다) 가져오기 실행 상자에서이 항목의 체크를 생략하면 "가져오기"가 작동하지 않습니다.

인증서 사용에 대한 또 다른 일반적인 문제는 사용자가 사이트를 탐색하려고 하면 특정 보안 경고가 브라우저에 표시 되는 것입니다. 이 문제는 브라우저가 인증서를 받아들이지 않은 경우에 발생하고 오류 형태는 브라우저에 따라 다르게 나타납니다. 경고를 표시하는 브라우저도 있고, 사이트를 완전히 차단 하는 브라우저도 있습니다. 오류의 가장 일반적인 원인은 URL입니다. 인증서는 특정URL에 대해 실행되는 실제URL을 정확하게 일치하지 않으면 보안 위험이 될 수 있습니다. 한두글자의 입력 실수로 하루를 헛되이 될 수도 있으므로 정확하게 기술 하는 것이 중요합니다.

브라우저의 보안 경고에 대한 또 다른 일반적인 문제는 신뢰되지 않은 인증서에 있습니다.일반적으로 인증서는 상업적인 공급자에 의해 발행, 판매되고 있고, 오늘날의 모든 운영 체제에는 중요한 상업적인 공급자의 루트 인증서가 사전에 설정되어 있습니다. 그러나 민간 인증 기관 (개인 조직 또는 귀하의 회사를 소유 하는 CA 서버)에서 인증서를 발급하면 해당 인증서는 신뢰되지 않으며 오류가 발생할 수 있습니다. 개인 인증서 사용은 Azure 웹 사이트에서 지원되지 않으므로 인증서를 구매하지 않고 SSL을 사용할 경우 자체 서명 인증서를 사용하는 것이 좋습니다.

위에서 언급한 대로, 모든 중요한 상업적인 공급자는 기본적으로 지원하지만, 때로, 트러스트 체인에 중간 인증서를 사용하는 공급자에게 발생할 수 있습니다. 일부 인증서 공급자는 인증서 경로를 두 부분으로 분리하여 루트 CA의 대신에, 공급자가 신뢰하는 더 낮은 수준을 "중간" 서버에 의해 인증서가 발급 됩니다. 그런 경우에는 인증서가 클라이언트 브라우저에서 경고를 트리거 할 수 있기 때문에 자신의 인증서와 함께 게시자의 중간 인증서를 업로드 해야 합니다. 인증서를 PFX에 내보낼 때 체인이 포함 되어야 하고, 이 옵션은 기본적으로 설정되어 있습니다.

 

그러나 이 선택 해제 또는 인증 경로를 포함하지 않는 다른 방법으로 내보내기를 수행하면 공급자에 의해 문제가 발생할 수 있습니다. 신뢰가 없는 경우 내보내기를 다시 실행하여 이 옵션을 선택 된 상태로 하는 것을 권장합니다.