← 블로그 목록
69 서버·보안

DMARC를 모니터링에서 단계적 차단으로 전환하는 메일 운영법

DMARC 정책을 한 번에 격리·거부로 바꾸지 않고 발신원 목록과 정렬 결과를 확인하며 모니터링에서 단계적 enforcement로 전환하는 방법을 정리합니다.

DMARC를 모니터링에서 단계적 차단으로 전환하는 메일 운영법 대표 이미지

DMARC 전환은 DNS에 p=reject를 쓰는 일이 아니라, 우리 도메인을 대신해 메일을 보내는 합법 발신원을 확인하고 SPF 또는 DKIM 정렬을 통과시키는 운영 작업입니다. 먼저 p=none으로 aggregate 보고서를 관찰하고, 누락된 발신원을 수정한 뒤 pct로 적용 비율을 조금씩 높여야 정상 메일 차단을 줄일 수 있습니다. 특정 수신자 집단을 통제하려면 pct와 혼동하지 말고 발신자 분리나 하위 도메인으로 별도 정책을 둡니다.

DMARC 사양 RFC 7489는 도메인 소유자가 수신자에게 인증 실패 처리 정책을 알리는 메커니즘을 정의하며, SPF와 DKIM의 도메인 정렬을 함께 봅니다. 이 표준은 메일 전달 성공이나 스팸 차단을 보장하지 않으므로 실제 보고서와 발송 시스템의 증거가 필요합니다.RFC 7489 DMARC

DMARC p=none 관찰에서 발신원 수정, quarantine, reject로 이어지는 단계적 전환 흐름

전환 기록에는 DNS 변경 시각과 보고서 수집 범위도 함께 적어야 합니다.

보고서에서 발신원과 정렬을 읽습니다

집계 보고서의 source IP만 보고 무조건 허용하지 말고, 발송 시스템·사용 목적·DKIM 서명 도메인·Return-Path와 대조합니다. SPF 통과만으로 충분한지, From 헤더와 서명 도메인이 정렬되는지 확인해야 합니다. 포워딩과 메일링리스트는 인증 결과가 달라질 수 있어 별도 테스트가 필요합니다.

  • 우리 서비스가 소유한 발신원인지 담당자와 DNS·메일 설정으로 확인합니다.

  • 합법 발신원인데 정렬 실패하는 경우 DKIM 서명 또는 envelope-from을 수정합니다.

  • 모르는 발신원은 차단 전에 계정 탈취나 외부 위탁 발송 여부를 조사합니다.

샘플: 뉴스레터와 거래 메일이 함께 있는 도메인

샘플 입력은 뉴스레터 업체와 자체 SMTP가 같은 From 도메인을 사용하지만, 보고서에 뉴스레터의 DKIM 정렬 실패가 반복되는 상황입니다. 선택지는 전체 도메인에 pct를 낮게 적용하거나, 뉴스레터를 sender segmentation 또는 하위 도메인으로 분리해 별도 정책을 적용하는 것입니다. 결정은 reject를 미루고 업체의 DKIM 서명 도메인을 조직 도메인에 맞춘 뒤 p=none으로 재관찰하는 것입니다. 중간 산출물은 발신원·용도·SPF·DKIM·정렬·담당자 표입니다. 예상 결과는 두 발신원이 모두 정렬을 통과한 뒤 quarantine 정책을 낮은 pct에서 시작할 수 있는 상태입니다.

DMARC 발신원 표에서 용도, SPF, DKIM, 정렬, 담당자와 다음 조치를 기록하는 샘플

실패 시 정책을 되돌리는 기준

실패 사례는 보고서 한 번의 결과만 보고 p=reject로 전환하는 것입니다. 포워딩 경로, 월간 청구 메일, 새로 추가된 SaaS 발송원이 누락되어 정상 메일이 격리될 수 있습니다. 복구는 reject를 p=none 또는 검토된 quarantine 비율로 되돌리고, 영향을 받은 Message-ID와 발신원을 찾아 인증 정렬을 수정한 뒤 테스트 수신함에서 재현하는 순서입니다. 보고서 수집이 중단됐으면 전환을 더 진행하지 않습니다.

단계별 완료 기록

  1. p=none 보고서에서 모든 합법 발신원과 미확인 발신원을 분류합니다.

  2. 거래·뉴스레터·포워딩 테스트를 통과하고 정렬 실패의 담당자와 수정일을 기록합니다.

  3. quarantine과 reject 비율을 한 단계씩 올리며 반송·격리 사례를 확인합니다.

완료 조건은 DNS 정책 문자열이 존재하는 때가 아니라, 승인된 발신원이 정렬을 통과하고 단계별 보고서와 반송 사례를 운영자가 확인했으며 문제 발생 시 이전 정책으로 복구할 기록이 남은 때입니다.