DMARC 레코드 확인기

DMARC는 _dmarc.yourdomain.com에 있는 TXT 레코드로, SPF 또는 DKIM 검사를 통과하지 못한 메시지에 대해 인박스 제공업체가 어떻게 처리해야 하는지를 지정합니다. 잘못된 정책을 설정하면 정상적인 이메일이 차단될 수 있으며, 해당 레코드를 전혀 포함하지 않으면 위조 공격에 취약해집니다. 이 검사 도구는 해당 레코드를 조회하고 각 태그를 읽기 쉬운 표로 보여 주므로 정책을 직접 확인할 수 있습니다.

DMARC 레코드를 확인하는 방법

  1. 1

    도메인을 입력하세요

    루트 도메인을 입력하세요(예: `example.com`). 이 도구는 TXT 레코드를 확인하기 위해 `_dmarc.example.com`를 조회합니다.

  2. 2

    태그별 리뷰

    레코드에서 찾은 각 DMARC 태그(v, p, sp, adkim, aspf, pct, rua, ruf, fo)가 그 값과 함께 표시됩니다.

  3. 3

    정책을 확인하세요

    `p` 태그를 보고 정책이 `none`, `quarantine`, `reject` 중 무엇인지 확인하고, `pct`, `rua`, 정렬 태그를 아래 권장 사항과 비교하세요.

  4. 4

    레코드를 검증하세요

    DNS 제공업체가 게시한 내용과 원본 레코드를 비교하여 정책이 의도한 대로 설정되어 있는지 확인하세요.

DMARC 태그 개요

태그 의미 일반적인 값
v 버전(항상 DMARC1) v=DMARC1
p 인증에 실패한 메일에 대한 정책 none, quarantine, reject
sp 하위 도메인에 대한 정책 기본적으로 p 값을 상속
pct 정책이 적용되는 메일의 비율 1~100, 기본값 100
adkim DKIM 정렬 모드 r(완화형) 또는 s(엄격형)
aspf SPF 정렬 모드 r(완화형) 또는 s(엄격형)
rua 집계 리포트 수신 주소 mailto:dmarc@...
ruf 포렌식 리포트 수신 주소 mailto:forensic@...
fo 포렌식 옵션 0, 1, d, s
ri 리포트 전송 간격(초) 기본값 86400(1일)

배포 경로

단 한 번의 급격한 전환이 아니라 세 단계에 걸쳐 시작하세요.

  1. **p=none**으로 시작하되 rua를 설정합니다. 4~6주 동안 리포트를 수집하여 SPF/DKIM 정렬 검사에서 실패하는 정상 발신자를 식별합니다.
  2. p=quarantine; pct=25. 몇 주에 걸쳐 25%, 50%, 75%, 100%로 점진적으로 강도를 높입니다.
  3. p=reject. 완전한 강제 적용. 위조된 메일은 수신 측 MTA에서 거부됩니다.

리포트 없이 p=reject부터 시작하지 마십시오. 그렇게 하면 어떤 정상 발신자를 막아버렸는지 결국 지원 티켓을 통해서야 알게 됩니다.

DMARC에서 흔한 구성 오류

  • rua 누락. 정책은 있지만, 무엇이 거부되고 있는지 알 방법이 없습니다.
  • p=reject인데 pct가 100 미만. 의미상 어색하며, 거부 처리와 부분 적용을 섞으면 수신 측에서 혼란이 생깁니다.
  • 끝에 세미콜론이 남아 있거나 v=DMARC1가 없음. 구문 오류로 인해 파서가 레코드를 인식하지 못합니다.
  • 다른 도메인의 리포트 주소를 지정했는데, 해당 대상 도메인에 일치하는 _report._dmarc 승인 레코드가 없음.
  • 같은 도메인에 여러 개의 DMARC 레코드가 존재함. 오직 하나만 허용되며, 수신 측은 중복을 오류로 간주하여 기본값인 p=none으로 처리합니다.

리포트 해석하기

집계 리포트는 매일 사용자의 rua 주소로 전송되는 XML 파일입니다. MxToolbox, Postmark, Valimail, Dmarcian 같은 도구는 이를 대시보드 형태로 분석해 줍니다. 포렌식 리포트(ruf)는 개별 메시지 단위의 사본으로 특정 실패를 디버깅하는 데 유용하지만, 많은 ISP가 개인정보 보호를 이유로 비활성화하고 있습니다.

자주 묻는 질문

SPF는 사용자의 도메인을 위해 어떤 서버가 메일을 전송할 수 있는지를 규정하며, DKIM은 발신 이메일에 암호화 서명을 부여합니다. DMARC는 이 두 기능을 연계하여 SPF와 DKIM 모두에 실패했을 때 수신자가 취해야 할 조치를 명시하고 보고 기능도 제공합니다. 현대적인 메일 전달성 확보를 위해서는 이 세 가지 모두가 필수적입니다.

DMARC는 엔벨로프 도메인은 보호하지만 표시 이름(display name)은 보호하지 않습니다. “Example Corp attacker@gmail.com” 형태로 보내는 공격자는 귀사의 도메인을 위조하는 것이 아니라 단지 귀사의 브랜드명을 사칭하는 것뿐입니다. 표시 이름 사칭은 DMARC가 아니라 수신 측의 다른 필터에 의해 차단됩니다.

네, 하지만 모든 발신원을 반드시 포함해야 합니다: 마케팅 플랫폼, 거래 관련 발신자, 고객 지원 담당자, 캘린더 초대장 등입니다. DMARC 인증을 통과하려면 모든 발신원이 SPF 또는 DKIM 기준에 부합해야 합니다.

해당 조회는 공용 DNS 쿼리로, 부하를 줄이기 위해 일시적으로 캐싱됩니다. 도메인 이름은 장기간 저장되지 않으며, 쿼리에는 사용자 식별 정보가 포함되지 않습니다.

관련 도구

이 도구는 다른 언어로도 제공됩니다