인증서와 DNS 자동화 뒤에 숨어있는 보안 리스크와 안전한 관리 원칙

2026/08/07클라우드 인프라 구축·전환cert-manager · external-dns · Kubernetes · Cloud DNS

SSL/TLS 인증서 만료로 인해 대외 서비스가 중단되는 사고는 IT 업계에서 매우 빈번하지만, 사전에 100% 예방 가능한 인재(人災)입니다.

이를 방지하기 위해 클러스터 내에서 Let's Encrypt 무료 인증서의 자동 발급 및 갱신(cert-manager)을 구성하고, 인그레스 생성 시 DNS A 레코드가 자동으로 등록되도록(ExternalDNS) 파이프라인을 자동화했습니다.

하지만 자동화가 구축되었다고 해서 모든 리스크가 사라지는 것은 아닙니다. 오히려 자동화 뒤에 숨은 새로운 형태의 관리 포인트가 생겨납니다.

자동화가 낳을 수 있는 위험: 서브도메인 탈취(Subdomain Takeover)

배포가 생성될 때 DNS 레코드가 자동 생성된다면, 배포가 삭제될 때 DNS 레코드도 함께 정리되어야 합니다.

만약 인프라 정리 과정에서 로드밸런서 IP를 먼저 해제하고 DNS 레코드를 뒤늦게 지우면, 우리 도메인이 존재하지 않거나 타인에게 재할당된 IP를 가리키는 위험한 공백 상태가 발생합니다. 악의적인 공격자가 해당 IP를 할당받아 악성 사이트를 띄우는 서브도메인 탈취가 바로 이 지점에서 일어납니다.

이를 방지하기 위해 항상 DNS 레코드 정리를 선행하고 클라우드 IP 해제를 후행하는 엄격한 파이프라인 순서를 확립했습니다.

자동화의 실패는 '조용하게' 일어난다

인계받은 레거시 매니페스트 중 인증서 발급자(ClusterIssuer) 이름이 잘못 지정된 서비스가 있었습니다.

기존 인증서의 유효기간이 아직 남아있었기에 당장은 아무런 에러 없이 정상 동작하는 것처럼 보였지만, 백그라운드 자동 갱신 프로세스는 조용히 실패하고 있었습니다. 만료일이 닥쳐 서비스가 터지기 전까지는 아무도 알 수 없는 '침묵의 장애'였습니다.

자동화는 실패하더라도 요란하게 경고를 울리지 않고 로그에만 실패를 기록합니다.

자동화 도입 후 갖추어야 할 운영 수칙

  1. 자동화 파이프라인 헬스 모니터링: "인증서 만료일"을 감시하는 것을 넘어, "인증서 자동 갱신 에이전트의 동작 상태"를 모니터링하고 갱신 실패 시 즉각 슬랙 알림이 울리도록 알림을 구성해야 합니다.
  2. 배포 매니페스트 사전 정적 검증: 자동화가 돌아가기 전, 설정 파일에 자리표시자(Placeholder)나 오타가 없는지 CI 단계에서 철저히 검증해야 합니다.

요약

자동화의 목적은 운영자의 관심을 완전히 끄는 것이 아니라, 감시의 대상을 반복 노동에서 '시스템의 건전성 지표'로 지능화하는 것입니다.