DNS 검증 - AWS Certificate Manager

DNS 검증

도메인 이름 시스템(DNS)은 네트워크에 연결되는 리소스를 위한 디렉터리 서비스입니다. DNS 공급자는 도메인을 정의하는 레코드가 포함된 데이터베이스를 유지 관리합니다. DNS 검증을 선택하면 ACM은 이 데이터베이스에 추가해야 하는 하나 이상의 CNAME 레코드를 제공합니다. 이 레코드에는 사용자가 도메인을 통제함을 증명하는 역할을 하는 고유한 키-값 페어가 포함되어 있습니다.

예를 들면 추가 이름이 www.example.comexample.com 도메인에 대해 인증서를 요청할 경우 ACM은 CNAME 레코드 두 개를 자동으로 생성합니다. 사용자의 도메인 및 계정용으로 특별히 생성된 각 레코드에는 이름과 값이 포함되어 있습니다. 값은 ACM이 인증서를 자동 갱신하는 데 사용하는 AWS 도메인을 가리키는 별칭입니다. CNAME 레코드는 DNS 데이터베이스에 한 번만 추가해야 합니다. 인증서가 사용 중이고 CNAME 레코드가 여전히 존재하는 경우에 한해 ACM은 인증서를 자동으로 갱신합니다.

중요

Amazon Route 53을 사용하여 퍼블릭 DNS 레코드를 관리하지 않는 경우 DNS 공급자에게 문의하여 레코드를 추가하는 방법을 확인하세요. 도메인의 DNS 데이터베이스를 편집할 권한이 없는 경우 이메일 검증을 대신 사용해야 합니다.

검증을 반복할 필요 없이 CNAME 레코드가 유지되는 동안 정규화된 도메인 이름(FQDN)에 대한 추가 ACM 인증서를 요청할 수 있습니다. 즉, 도메인 이름이 동일한 대체 인증서 또는 다른 하위 도메인을 포함하는 인증서를 만들 수 있습니다. CNAME 검증 토큰은 모든 AWS 리전에서 사용 가능하므로, 여러 리전에서 동일한 인증서를 다시 만들 수 있습니다. 또한 삭제된 인증서를 교체할 수도 있습니다.

연결된 AWS 서비스에서 인증서를 제거하거나 CNAME 레코드를 삭제하여 자동 갱신을 중지할 수 있습니다. Route 53이 DNS 공급자가 아닌 경우에는 공급자에게 연락하여 레코드를 삭제하는 방법을 알아보세요. Route 53이 공급자인 경우 Route 53 개발자 가이드에서 리소스 레코드 세트 삭제를 참조하세요. 관리형 인증서 갱신에 대한 자세한 내용은 ACM 인증서의 관리형 갱신 섹션을 참조하세요.

참고

DNS 구성에서 5개 이상의 CNAME 하나로 연결되어 있으면 CNAME 확인이 실패합니다. 더 긴 체인이 필요한 경우 이메일 검증을 사용하는 것이 좋습니다.

ACM에 대한 CNAME 레코드의 작동 방식

참고

이 섹션은 Route 53을 DNS 공급자로 사용하지 않는 고객에게 적용됩니다.

Route 53을 DNS 공급자로 사용하지 않는 경우, ACM에서 제공하는 CNAME 레코드를 일반적으로 웹 사이트를 통해 공급자의 데이터베이스에 수동으로 입력해야 합니다. CNAME 레코드는 리디렉션 메커니즘, 공급업체별 메타데이터의 컨테이너 등 다양한 용도로 사용됩니다. ACM의 경우 이러한 레코드를 통해 초기 도메인 소유권 확인 및 지속적인 자동 인증서 갱신을 수행할 수 있습니다.

다음 테이블에는 6개 도메인 이름에 대한 CNAME 레코드의 예제가 나와 있습니다. 각 레코드의 레코드 이름-레코드 값 페어는 도메인 이름 소유권을 인증하는 역할을 합니다.

이 표에서 처음 2개의 레코드 이름-레코드 값 페어는 동일합니다. 이는 와일드 카드 도메인(예: *.example.com)의 경우 ACM이 생성한 임의의 문자열이 기본 도메인에 대해 생성된 문자열 example.com과 동일한 예를 보여줍니다. 그렇지 않으면 레코드 이름레코드 값 페어는 각 도메인 이름별로 다릅니다.

CNAME 레코드 예
도메인 이름 레코드 이름 레코드 값 Comment
*.example.com _x1.example.com. _x2.acm-validations.aws. Identical
example.com _x1.example.com. _x2.acm-validations.aws.
www.example.com _x3.www.example.com. _x4.acm-validations.aws. 고유
host.example.com _x5.host.example.com. _x6.acm-validations.aws. 고유
subdomain.example.com _x7.subdomain.example.com. _x8.acm-validations.aws. 고유
host.subdomain.example.com _x9.host.subdomain.example.com. _x10.acm-validations.aws. 고유

밑줄(_) 다음에 오는 x 값은 ACM이 생성한 임의의 긴 문자열입니다. 예:

_3639ac514e785e898d2646601fa951d5.example.com

결과로 생성된 레코드 이름을 나타냅니다. 연결된 레코드 값은 다음이 될 수 있습니다.

_98d2646601fa951d53639ac514e785e8.acm-validation.aws.

(동일한 레코드에 대해)

참고

DNS 공급자가 앞에 밑줄이 붙은 CNAME 값을 지원하지 않을 경우 DNS 검증 문제 해결을 참조하세요.

인증서를 요청하고 DNS 검증을 지정하면, ACM이 CNAME 정보를 다음 형식으로 제공합니다.

도메인 이름 레코드 이름 레코드 형식 레코드 값
example.com _a79865eb4cd1a6ab990a45779b4e0b96.example.com. CNAME

_424c7224e9b0146f9a8808af955727d0.hkmpvcwbzw.acm-validations.aws.

도메인 이름은 인증서와 연결된 FQDN입니다. 레코드 이름은 키-값 페어의 키로, 레코드를 고유하게 식별합니다. 레코드 값은 키-값 페어의 값으로 사용됩니다.

DNS 레코드를 추가하려면 이 세 가지 값을 모두 DNS 공급자 웹 인터페이스의 해당 필드에 입력해야 합니다. 레코드 이름(또는 ‘이름’) 필드를 처리하는 방식이 공급자 간에 일관되지 않습니다. 경우에 따라 위에 표시된 것처럼 전체 문자열을 제공해야 합니다. 일부 공급자의 경우에는 사용자가 입력한 문자열에 도메인 이름이 자동으로 추가됩니다. 즉, 이 예에서는 이름 필드에

_a79865eb4cd1a6ab990a45779b4e0b96

만 입력해야 합니다. 이를 잘못 알고 도메인 이름이 포함된 레코드 이름(예: .example.com)을 입력하면 다음과 같이 될 수 있습니다.

_a79865eb4cd1a6ab990a45779b4e0b96.example.com.example.com

이 경우 검증이 실패합니다. 따라서 공급자에 맞는 입력 유형을 미리 확인해야 합니다.

DNS 검증 설정

이 섹션에서는 DNS 검증을 사용하도록 퍼블릭 인증서를 구성하는 방법에 대해서 설명합니다.

콘솔에서 DNS 검증을 설정하려면

참고

이 절차에서는 인증서를 하나 이상 생성했으며 해당 인증서를 생성한 AWS 리전에서 작업하는 것으로 가정합니다. 콘솔을 열려고 하는데 처음 사용 화면이 대신 표시되거나 콘솔을 성공적으로 열었지만 목록에 인증서가 표시되지 않는 경우, 올바른 리전을 지정했는지 확인하세요.

  1. https://console.aws.amazon.com/acm/에서 ACM 콘솔을 엽니다.

  2. 인증서 목록에서 검증 보류 중(Pending validation) 상태인 구성하려는 인증서 ID(Certificate ID)를 선택합니다. 그러면 인증서에 대한 세부 정보 페이지가 열립니다.

  3. 도메인(Domains) 섹션에서 다음 두 절차 중 하나를 완료합니다.

    1. (선택 사항) Route 53로 검증합니다.

      다음 조건에 해당할 경우 활성 상태의 Route 53에 레코드 생성(Create record in Route 53) 버튼이 표시됩니다.

      • Route 53을 DNS 공급자로 사용합니다.

      • Route 53에서 호스팅한 영역에 대한 쓰기 권한이 있습니다.

      • FQDN이 아직 검증되지 않았습니다.

      참고

      Route 53을 사용하고 있지만 [Route 53에 레코드 생성(Create record in Route 53)] 버튼이 표시되지 않거나 비활성화된 경우, ACM 콘솔에서 ‘Route 53에 레코드 생성’ 버튼이 나타나지 않음 섹션을 참조하세요.

      Route 53에 레코드 생성(Create record in Route 53) 버튼을 선택한 다음 레코드 생성(Create records)을 선택합니다. 인증서 상태(Certificate status) 페이지가 DNS 레코드가 생성됨(Successfully created DNS records)이라고 표시되는 상태 배너와 함께 열립니다.

      새 인증서의 상태가 최대 30분 동안 계속 검증 보류 중(Pending validation)으로 표시될 수 있습니다.

      작은 정보

      ACM이 Route 53에서 레코드를 자동으로 생성하도록 프로그래밍 방식으로 요청할 수 없습니다. 단, AWS CLI 또는 API 호출을 통해 Route 53 DNS 데이터베이스에 레코드를 생성할 수 있습니다. Route 53 레코드 세트에 대한 자세한 내용은 리소스 레코드 세트 관련 작업을 참조하세요.

    2. (선택 사항) Route 53을 DNS 공급자로 사용하지 않는 경우 CNAME 정보를 검색하여 DNS 데이터베이스에 추가해야 합니다. 이 작업은 두 가지 방법 중 하나로 수행할 수 있습니다.

      • 도메인(Domains) 섹션에 표시된 CNAME 구성 요소를 복사합니다. 이 정보를 DNS 데이터베이스에 수동으로 추가해야 합니다.

      • 또는 CSV로 내보내기(Export to CSV)를 선택합니다. 결과 파일의 정보를 DNS 데이터베이스에 수동으로 추가해야 합니다.

      중요

      검증 문제를 방지하려면 DNS 공급자의 데이터베이스에 정보를 추가하기 전에 ACM에 대한 CNAME 레코드의 작동 방식를 검토하세요. 문제가 발생하면 DNS 검증 문제 해결 섹션을 참조하세요.

ACM이 사용자를 위해 CNAME 값을 생성한 시각으로부터 72시간 내에 도메인 이름을 검증할 수 없는 경우, ACM은 인증서 상태를 [검증 시간 초과(Validation timed out)]로 변경합니다. 이러한 결과가 발생하는 가장 큰 이유는 ACM이 생성한 값으로 DNS 구성을 성공적으로 업데이트하지 않았기 때문입니다. 이 문제를 해결하려면 CNAME 지침을 검토한 후 새 인증서를 요청해야 합니다.