[AWS] ACM(AWS Certification Manager)란? (+ 운영이슈)
IT/AWS

[AWS] ACM(AWS Certification Manager)란? (+ 운영이슈)

반응형

 

오늘은 ACM(AWS Certification Manager)을 사용할때 가장 많이 발생하는 이슈에 대해 알아 보겠습니다.

 

 

ACM은 인증서는 ELB(Elastic LoadBalancer) 또는 Cloudfront에서 HTTPS 통신을 할때 사용하는무료 SSL인증서 입니다.

 

ACM인증서는 최초 인증 완료일로부터 1년동안 유효 하기 때문에 반드시 갱신을 해주어야합니다. 

AWS는 ACM 만료일 60일 전부터 매시간 자동갱신을 시도합니다. 여기서 많은 이슈가 발생됩니다.

 

어떤 이슈가 있는지 말씀드리기 전에 ACM인증 방식에 대해 설명드리겠습니다.

ACM인증 방식은 이메일인증, DNS인증 2가지가 있습니다. 

 

첫째, 이메일을 인증은 도메인 구매시 admin 으로 등록한 이메일 계정으로 인증 메일이 전송되고, 여기서 관리자가 전송된 메일을 확인하여 인증을 완료 해야합니다. 이메일 인증 방식을 사용할때 처음 발급시에 한번 인증완료를 하면 그 뒤 825일 즉 2년 2개월 동안은 AWS가 자동으로 인증을 해주게 됩니다.

 

근데, 여기서 AWS에서 자동으로 인증해주지 못하는 경우가 발생할 수 있습니다. 

 

1. 첫 인증이후 825일이 지났거나 

2.구매한 도메인의 관리자 계정을 분실하였거나

3. TLS검증이 되지 않았을 경우 입니다.

 

1번의 경우 도메인 구매시 등록한 admin 계정으로 매년 수동으로 갱신을 해주어야 합니다.

2번의 경우 답이 없습니다. 무조건 DNS인증으로 변경해야합니다.

3번의 경우 내가 a.com 이라는 도메인으로 서비스하고 있다고 가정했을때, AWS는 https://a.com 또는 https://www.a.com 에 요청을 보내서 HTTP응답 코드가 200일경우 자동갱신을 해주게 됩니다. 즉, 자동갱신이 되지 않았다는 것은 응답코드가 200코드가 아닌 상황이기때문에 응답코드가 왜 200이 아닌지 파악을 해봐야합니다.

 

AWS는 이메일 인증의 이런 이슈들을 피하기 위해 두번째 인증 방식인 DNS방식을 사용하라고 권고 합니다. AWS ACM을 DNS인증 방식으로 생성하게 되면 아래와 같이 CNAE의 Nanem, Value값이 주어지는데 이 정보를 DNS서버에 등록해주기만 하면 됩니다.

 

 

DNS인증을 사용하면 TLS검증을 시도하지 않으며, 따라서 관리자가 별도로 갱신을 해줄 필요가 없습니다. 단, ACM이 DNS검증올 검증한 인증서를 갱신하지 못한다면 DNS구성에 해당 CNAME 레코드가 없어졌거나 정확하지 않기 때문이므로 DNS서버 설정을 살펴봐야 합니다.

 

이렇게 실제로 AWS서비스를 사용하다보면 예상하지도 못한 이슈가 발생합니다. 그 이유는 개인이 해당 서비스에대해 100%알기가 쉽지 않기 때문이죠. 그래서 일부 비용을 들여서 AWS Managed Service Provider(MSP) 파트너사와 협력하여 AWS서비스 관리에대해 업무를 분산하는 경우가 대부분입니다.

 

AWS Managed Service Provider(MSP)가 무엇이냐구요? 다음장에 다뤄 보도록 하겠습니다.

 

 

 

 

반응형