SPF와 DKIM이 통과되어 초록색 체크 표시가 뜨더라도 DMARC는 실패로 표시될 수 있습니다. 이는 스푸핑된 메시지가 통과하게 만들어 도달률을 떨어뜨리는 불일치 문제입니다. 그 이유는 바로 '정렬(alignment)' 때문입니다. 정렬이란 메시지를 인증하는 도메인이 From 헤더에 표시된 주소와 일치하도록 강제하는 규칙입니다.

SPF와 DKIM만으로는 충분하지 않은 이유

SPF(Sender Policy Framework)는 반송(bounce)에 사용되는 봉투 발신자 주소인 Return-Path를 검증합니다. 이 주소는 받은 편지함에 보이는 브랜드가 아닌 메일 서비스 제공업체의 주소인 경우가 많습니다.

DKIM(DomainKeys Identified Mail)은 헤더의 암호화 서명에 연결된 도메인을 확인합니다. 서명자는 발신자의 도메인일 수도 있고 제3자 서비스의 도메인일 수도 있습니다.

두 검사 모두 통과하더라도, Return-Path나 DKIM 서명 도메인이 눈에 보이는 From 주소와 정렬되지 않으면 DMARC(Domain-based Message Authentication, Reporting & Conformance)는 실패를 보고합니다.

가장 흔한 네 가지 정렬 실패 사례

  • 제공업체 소유 도메인 – 많은 대량 메일 플랫폼이 자체 Return-Path를 설정하고 자체 DKIM 키로 서명합니다. 이를 자신의 도메인으로 교체하지 않으면 DMARC는 불일치로 간주합니다.
  • 이메일 전달(Email forwarding) – 하위 서버가 메시지를 전달할 때, 전달하는 IP가 SPF 레코드에 등록되어 있지 않아 SPF 검사가 실패하는 경우가 많습니다. 전달 과정에서 DKIM 서명까지 변경되면 DMARC는 의지할 곳이 없게 됩니다.
  • DKIM 오류 – 잘못 설정된 키나 DNS 오류로 인해 DKIM이 실패할 수 있습니다. 이 경우 DMARC는 SPF에 의존하게 되는데, 이때 SPF의 Return-Path마저 정렬되지 않았다면 다시 실패하게 됩니다.
  • 엄격한 정렬 모드(Strict alignment mode)aspf=s 또는 adkim=s를 설정하면 DMARC는 단순히 상위 도메인 관계가 아닌 정확한 도메인 일치를 요구합니다. 점(.) 하나만 달라도 서브도메인은 실패로 처리됩니다.

문제 확인 방법

문제가 되는 메시지의 원본 소스를 열고 Authentication-Results 헤더를 찾으세요. 여기에는 SPF, DKIM, DMARC 검사 결과와 각 테스트가 평가한 도메인이 나열됩니다.

  • smtp.mailfrom(Return-Path)과 From 헤더의 도메인을 비교하세요.
  • DKIM-Signature 블록 내부의 header.d 태그를 From 도메인과 비교하세요.

두 비교 모두 일치하지 않는다면, 정렬(alignment)이 원인입니다.

DMARC 통과를 위한 해결책

  1. 정렬된 Return-Path 사용 – 대부분의 발송 플랫폼은 사용자 정의 반송 도메인을 사용할 수 있게 해줍니다. 해당 도메인을 직접 관리하는 DNS 존으로 지정하고 SPF 레코드에 추가하세요.
  2. 정렬된 DKIM 서명 배포 – DKIM 서명의 d= 태그를 자신의 도메인(또는 소유한 서브도메인)으로 설정하고 해당 공개 키를 DNS에 게시하세요. DKIM은 대부분의 전달 시나리오에서도 유지되므로, 정렬을 달성하는 가장 신뢰할 수 있는 방법입니다.

요약

SPF와 DKIM을 통과하는 것은 절반의 성공일 뿐입니다. 도메인 정렬이 없으면 DMARC는 여전히 메시지를 인증되지 않은 것으로 표시합니다. Return-Path 또는 DKIM 서명 도메인을 눈에 보이는 From 주소와 정렬하고, 원본 헤더에서 설정을 확인하며, 필요에 따라 엄격도를 조정하세요. 정렬이 완료되면 DMARC는 통과(pass)를 보고하여 브랜드를 보호하고 받은 편지함 도달률을 높여줍니다.