ACM 인증서 발급 또는 갱신 시 발생하는 CAA 오류를 해결하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 4월 15일

ACM(AWS Certificate Manager)으로 새 인증서를 요청했거나 인증서를 갱신하려고 했습니다. 도메인 이름 상태가 "Failed"이며 다음과 비슷한 오류가 발생했습니다.

"Request failed. The status of this certificate is "Failed". One or more domain names have failed validation due to a Certificate Authority Authentication (CAA) error."

인증서 요청이 실패했지만 검증 상태는 "Success"입니다.

간략한 설명

CAA(Certificate Authority Authorization) 레코드는 어느 CA(인증 기관)가 도메인 또는 하위 도메인에 대한 인증서를 발급할 수 있는지를 제어할 수 있게 해 주는 DNS 레코드입니다. ACM 인증서를 요청하거나 갱신할 때 ACM은 CAA 레코드를 검사하여 다음 조건에 대해 허용되는지 확인합니다.

  • CAA 레코드 확인이 DNS 네임 트리 상위로 이동
  • CAA 레코드 없음은 어떤 CA라도 인증서를 발급할 수 있음을 의미
  • CAA 레코드 확인은 CNAME 레코드를 따름
  • "issue" 태그는 비와일드카드 도메인과 와일드카드 도메인 모두에 사용할 수 있지만, "issuewild" 태그는 와일드카드 도메인에만 영향을 미침

​해결 방법

CAA 레코드 확인이 DNS 네임 트리 상위로 이동

CAA 레코드 확인은 요청 도메인에서 시작된 후 DNS 계층 구조 트리 상위로 이동합니다. www.example.com에 대한 인증서를 요청한 경우, ACM은 세 번째 레벨 도메인 www.example.com에 대한 CAA 레코드를 먼저 확인하고 그 다음에 두 번째 레벨 도메인 이름 example.com을 확인합니다.

CAA 레코드가 발견되면 CAA 조회가 중지되고 레코드가 적용됩니다. 다음 예제는 www.example.com에 대한 인증서를 요청할 때 어떤 CAA 레코드가 적용되는지를 보여줍니다.

(Example 1 / www.example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issue   "amazon.com"
example.com.   CAA           0      issue   "SomeCA.com"

(Result: CAA passed)

세 번째 레벨 도메인 이름에 대한 레코드가 적용되어 ACM이 인증서를 발급할 수 있습니다. 두 번째 레벨 도메인 이름 레코드는 사용되지 않습니다.

(Example 2 / www.example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issue   "SomeCA.com"
example.com.   CAA           0      issue   "amazon.com"

(Result: CAA failed)

첫 번째 레코드가 적용되어 ACM이 인증서를 발급하지 못하도록 합니다. 두 번째 레코드는 무시됩니다.

(Example 3 / www.example.com)
Domain   Record type  Flags  Tag      Value   
test.example.com.   CAA           0      issue   "SomeCA.com"
example.com.   CAA           0      issue   "amazon.com"

(Result: CAA passed)

첫 번째 레코드는 www.example.com에 대한 CAA 레코드에 영향을 미치지 않습니다. 두 번째 레코드가 적용되어 ACM이 인증서를 발급할 수 있습니다.

다음 예제는 example.com에 대한 인증서를 요청할 때 어떤 CAA 레코드가 적용되는지 보여줍니다.

(Example 4 / example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issue   "amazon.com"
example.com.   CAA           0      issue   "SomeCA.com"

(Result: CAA failed)

www.example.com은 요청된 도메인의 하위 도메인이고 CAA 레코드 확인은 DNS 트리 하위로 이동하지 않기 때문에 첫 번째 레코드는 고려되지 않습니다. 두 번째 레코드가 적용되어 ACM이 인증서를 발급하지 못하도록 합니다.

(Example 5 / example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issue   "SomeCA.com"
example.com.   CAA           0      issue   "amazon.com"

(Result: CAA passed)

www.example.com은 요청된 도메인의 하위 도메인이고 CAA 레코드 확인은 DNS 트리 하위로 이동하지 않기 때문에 첫 번째 레코드는 무시됩니다. 두 번째 레코드가 적용되어 ACM이 인증서를 발급할 수 있습니다.

CAA 레코드 없음은 어떤 CA라도 인증서를 발급할 수 있음을 의미

요청 도메인에 대한 CAA 레코드를 구성하지 않으면 ACM을 포함한 모든 CA가 도메인에 대한 인증서를 발급할 수 있습니다. 예를 들어 ACM은 다음 예제에서 example.com에 대한 인증서를 발급할 수 있습니다.

(Example 6 / example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issue   ";"

(Result: CAA passed)

CAA 확인이 DNS 트리 하위로 이동하지 않기 때문에 레코드는 무시됩니다.

CAA 레코드 확인은 CNAME 레코드를 따름

CAA 레코드 확인은 CNAME 레코드가 다른 도메인을 가리키는 상태로 진행됩니다. 이 예에서 www.example.com은 CAA 레코드가 있는 www.example.net을 가리킵니다.

(Example 7 / www.example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CNAME www.example.net
www.example.net.   CAA           0      issue   ";"

(Result: CAA failed)

첫 번째 레코드는 CAA 확인을 www.example.net으로 전환시킵니다. 이 CAA 레코드는 어떤 CA도 인증서를 발급하지 못하도록 하며, ACM은 www.example.com에 대한 인증서를 발급할 수 없습니다.

가리키는 도메인(www.example.net)에 CAA 레코드가 없는 경우 CAA 레코드 확인이 기본 도메인(example.net)의 상위로 이동합니다.

(Example 8 / www.example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CNAME www.example.net
example.com.   CAA           0      issue   "amazon.com"

(Result: CAA passed)

이 시나리오에서 ACM은 www.example.com에 대한 인증서를 발급할 수 있습니다. CAA 레코드 확인은 CNAME 레코드의 상위 항목으로 이동하지 않으며 example.net 의 CAA 레코드는 확인되지 않습니다. 자세한 내용은 Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates의 APPENDIX A를 참조하십시오.

"issue" 태그는 비와일드카드 도메인과 와일드카드 도메인 모두에 사용할 수 있지만, "issuewild" 태그는 와일드카드 도메인에만 영향을 미침

"issue" 태그를 사용하면 CA가 비와일드카드 도메인(www.example.com)과 와일드카드 도메인(*.example.com) 모두에 대해 인증서를 발급할 수 있습니다. "issuewild" 태그를 사용하여 CA가 와일드카드 도메인을 처리하는 방법을 나타낼 수 있습니다. 다음 예제는 *.example.com에 대한 인증서를 요청할 때 어떤 CAA 레코드가 적용되는지를 보여줍니다.

(Example 9 / *.example.com)
Domain   Record type  Flags  Tag      Value   
example.com.   CAA           0      issue   "amazon.com"

(Result: CAA passed)

CAA 레코드가 ACM이 비와일드카드 도메인과 와일드카드 도메인 인증서를 모두 발급하도록 허용하며, ACM은 인증서를 발급할 수 있습니다.

(Example 10 / *.example.com)
Domain   Record type  Flags  Tag      Value   
example.com.   CAA           0      issue   "amazon.com"
example.com.   CAA           0      issuewild   ";"

(Result: CAA failed)

태그 필드 "issuewild"는 와일드카드 도메인 요청에 대한 "issue"를 재정의하며, ACM은 인증서를 발급할 수 없습니다.

참고: CA가 *.example.com에 대한 인증서를 발급할 수 있도록 example.com에 대한 CAA 레코드를 설정해야 합니다.

(Example 11 / *.example.com)
Domain   Record type  Flags  Tag      Value   
*.example.com.   CAA           0      issuewild   "amazon.com"
example.com.   CAA           0      issuewild   ";"

(Result: CAA failed)

첫 번째 CAA 레코드는 무시되고 두 번째 CAA 레코드는 CA가 *.example.com에 대한 인증서를 발급하지 못하도록 합니다.

다음 예제는 *.test.example.com에 대한 인증서를 요청할 때 어떤 CAA 레코드가 적용되는지 보여줍니다.

(Example 12 / *.test.example.com)
Domain   Record type  Flags  Tag      Value   
test.example.com.   CAA           0      issue   "amazon.com"
example.com.   CAA           0      issuewild   ";"

(Result: CAA passed)

CAA 확인은 첫 번째 레코드를 찾고 이동을 종료하며 ACM이 인증서를 발급하도록 허용합니다.

비와일드카드 도메인을 요청하면 "issuewild" 태그가 무시됩니다. 이 예제는 www.example.com에 대한 인증서를 요청할 때 어떤 CAA 레코드가 적용되는지 보여줍니다.

(Example 13 / www.example.com)
Domain   Record type  Flags  Tag      Value   
www.example.com.   CAA           0      issuewild   "amazon.com"
example.com.   CAA           0      issue   ";"

(Result: CAA failed)

이것은 비와일드카드 도메인 요청이므로 첫 번째 CAA 레코드는 무시됩니다. 두 번째 CAA 레코드가 적용되고 CA는 인증서를 발급할 수 없습니다.

CAA 레코드 생성에 대한 자세한 내용은 (선택 사항)CAA 레코드 구성을 참조하십시오.


이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?