DMARC

DMARC 사용 설정하기

DMARC를 사용하여 의심스러운 이메일 관리하기

DMARC(Domain-based Message Authentication, Reporting, and Conformance) 정책을 도메인의 DNS 레코드에 추가하여 DMARC를 사용 설정합니다. 이 정책은 DNS TXT 레코드 형식이며 도메인에서 의심스러운 이메일을 처리하는 방법을 정의합니다.

DMARC 정책은 다음 세 가지 방법으로 의심스러운 이메일을 처리합니다.

  • 메일에 아무 조치를 취하지 않고 메일을 일일 보고서에 기록합니다.
  • 메일을 스팸으로 표시합니다. Gmail에서는 이러한 메일이 수신자의 스팸 폴더에 보관됩니다.
  • 메일을 거부하도록 수신 서버에 요청합니다. 메일이 거부되면 발신자에게 SMTP가 반송됩니다.

DMARC 정책 예

다음은 몇 가지 정책 예와 이러한 정책이 DNS TXT 레코드에 표시되는 방식을 보여줍니다.

이 예에 있는 값은 아래 DMARC TXT 레코드 값에 정의되어 있습니다.

DMARC 검사를 통과하지 못한 메일에 대한 조치 TXT 레코드 콘텐츠
DMARC 검사를 통과하지 못한 메일에 아무런 조치를 취하지 않습니다. 일일 보고서를 dmarc@solarmora.com으로 전송합니다. v=DMARC1; p=none; rua=mailto:dmarc@solarmora.com

DMARC 검사를 통과하지 못한 메일의 5%를 수신자의 스팸 폴더에 보관합니다. 일일 보고서를 dmarc@solarmora.com으로 전송합니다.

v=DMARC1; p=quarantine; pct=5; rua=mailto:dmarc@solarmora.com

DMARC 검사를 통과하지 못한 메일을 100% 거부합니다. 일일 보고서를 두 개의 이메일 주소(postmaster@solarmora.com, dmarc@solarmora.com)로 전송합니다. 

메일이 거부되면 발신자에게 SMTP가 반송됩니다.

v=DMARC1; p=reject; rua=mailto:postmaster@solarmora.com, mailto:dmarc@solarmora.com

TXT 레코드를 추가하여 DMARC 사용 설정하기

DMARC를 사용 설정하려면 DNS TXT 레코드로 도메인 설정을 업데이트하세요.

TXT 레코드에 대한 정보

TXT 레코드는 도메인 외부의 소스에서 사용하는 텍스트 정보가 포함된 DNS 레코드입니다. TXT 레코드를 Google 관리 콘솔이 아닌 도메인 호스트의 도메인 설정에 추가하세요.

DNS TXT 레코드 업데이트 관련 도움말에서 TXT 레코드 사용에 대해 자세히 알아보세요.

DMARC TXT 레코드 추가하기

도메인에 DMARC TXT 레코드를 추가하려면 다음 단계를 따르세요.

  • 아래 단계의 예시 도메인을 사용자의 도메인으로 변경합니다. 
  • 예시 값을 사용자의 DMARC 정책 값으로 변경합니다.
  1. 도메인 공급업체의 관리 콘솔에 로그인합니다.
  2. DNS 레코드를 업데이트하는 페이지를 찾습니다.

    하위 도메인: 도메인 호스트에서 하위 도메인의 DNS 레코드 업데이트를 지원하지 않으면 DNS 레코드를 상위 도메인에 추가합니다. 하위 도메인의 DNS 레코드를 업데이트하는 방법 자세히 알아보기

  3. _dmarc에 DNS 레코드를 추가합니다.

    TXT 레코드 이름: DNS 호스트 이름 아래의 첫 번째 입력란에 다음을 입력합니다.
    _dmarc.solarmora.com

    TXT 레코드 값: 두 번째 입력란에 사용자의 DMARC 정책을 정의하는 값을 입력합니다. 예를 들면 다음과 같습니다.
    v=DMARC1; rua=mailto:dmarc-reports@solarmora.com; p=quarantine; pct=90; sp=none
     

  4. 변경사항을 저장합니다.

DMARC TXT 레코드 값

참고: Gmail에서는 오류(포렌식) 보고서를 보내는 데 사용되는 DMARC ruf 태그가 지원되지 않습니다.

태그 이름 필수 여부 설명 및 값

v

필수 프토로콜 버전이며 DMARC1이어야 합니다.

p

필수

도메인에서 의심스러운 메일을 처리하는 방법을 정의합니다.

  • none: 메일에 아무런 조치를 취하지 않고 일일 보고서에 의심스러운 메일을 기록합니다.
  • quarantine: 메일을 스팸으로 표시하고 수신자의 스팸 폴더로 이동합니다. 수신자는 Gmail을 사용하여 스팸 메일을 검토할 수 있습니다 .
  • reject: 메일을 거부하도록 수신 서버에 요청하며, 수신 서버에서는 발신 서버로 메일을 반송합니다.

pct

선택

DMARC 정책이 적용되는 의심스러운 메일의 비율을 설정합니다. 의심스러운 메일은 DMARC 검사를 통과하지 못한 메일입니다.

1~100 사이의 정수여야 합니다. 기본값은 100입니다. 

rua

선택

도메인의 DMARC 활동에 대한 보고서를 수신할 이메일 주소입니다. 자신의 이메일 주소를 사용하거나 보고서를 수신할 새 이메일 주소를 만드세요.

이메일 주소에 mailto:를 포함해야 합니다. 예: mailto:dmarc-reports@solarmora.com

보고서를 두 개 이상의 이메일 주소로 보내려면 이메일을 쉼표로 구분하세요.

sp

선택

메인 도메인의 하위 도메인에서 전송된 메일에 적용되는 정책을 설정합니다. 하위 도메인에 다른 DMARC 정책을 사용하려는 경우 이 옵션을 사용하세요.

  • none: 메일에 아무런 조치를 취하지 않고 일일 보고서에 의심스러운 메일을 기록합니다.
  • quarantine: 메일을 스팸으로 표시하고 추가 처리를 위해 보관합니다.
  • reject: 수신 서버에 메일을 거부하도록 요청합니다.
adkim 선택

메일 정보가 DKIM 서명과 어느 정도 정확하게 일치해야 하는지를 정의하는 DKIM의 일치 모드를 설정합니다.

  • s: 엄격함. 발신자 도메인 이름이 DKIM 메일 헤더에 있는 d=name과 정확하게 일치해야 합니다.
  • r: 완화됨(기본값). 부분 일치가 허용됩니다. DKIM 메일 헤더에 있는 d=domain의 유효한 하위 도메인이 모두 허용됩니다.

aspf

선택

메일 정보가 SPF 서명과 어느 정도 정확하게 일치해야 하는지를 정의하는 SPF(ASPF)의 일치 모드를 설정합니다.

  • s: 엄격함. 메일의 from: 헤더가 SMTP MAIL FROM 명령어의 domain.name과 정확하게 일치해야 합니다.
  • r: 완화됨(기본값). 부분 일치가 허용됩니다. domain.name의 유효한 하위 도메인이 모두 허용됩니다.

 

TXT 레코드 만들기 관련 도움말

이 도움말에는 DMARC 레코드 만들기에 대한 자세한 정보가 제공됩니다.

DMARC를 단계적으로 배포하기

정책(p) 및 비율(pct) 옵션을 함께 사용하면 Gmail에서 DMARC를 단계적으로 천천히 배포할 수 있습니다.

정책(p) 옵션 사용하기. TXT 레코드에서 p 태그 값을 사용하여 정책 옵션을 설정하고 변경하세요. 의심스러운 메일을 검사할 수 있도록 격리 정책부터 시작한 다음 격리된 메일 및 일일 보고서를 통해 파악한 내용을 기반으로 단계적으로 정책을 수정하세요.

  1. p=none: 이메일 트래픽을 모니터링하고 일일 보고서에서 문제가 있는지 확인하되 모든 메일을 그대로 전달합니다. 위장된 메일 및 DKIM 또는 SPF 서명이 없는 메일이 있는지 확인합니다.
  2. p=quarantine: 일일 보고서에 표시되는 이메일 패턴에 익숙해지면 정책의 태그 값을 quarantine(격리)으로 변경합니다. 일일 보고서를 지속적으로 검토하고 스팸으로 별도 분리(격리) 중인 메일을 확인합니다.
  3. p=reject: 도메인의 모든 메일에 서명이 되었다면 정책의 태그 값을 reject(거부)로 변경하여 스팸 메일 필터링을 시작합니다. 일일 보고서를 지속적으로 검토하여 스팸 메일 필터링이 이루어지고 있으며 수신자에게 유효한 이메일이 전송되고 있는지 확인합니다.

비율(pct) 옵션 사용하기. 비율 옵션은 DMARC 정책이 적용되는 의심스러운 메일의 비율을 지정합니다. 의심스러운 메일은 DMARC 검사를 통과하지 못한 메일입니다. 기본값은 100%(모든 의심스러운 메일)입니다. 처음에는 적은 수의 메일을 필터링하도록 비율 옵션을 설정한 다음 DMARC 정책을 조정해 나가면서 며칠에 한 번씩 비율을 늘려갑니다. 예를 들어 처음에는 비율 옵션을 20으로 설정하여 거부 또는 격리된 메일의 20%를 필터링하고 그 다음 주에 값을 20에서 50으로 변경하여 메일의 50%를 필터링합니다.

배포 예: p와 pct 옵션을 사용하여 DMARC 정책을 단계적으로 배포하는 방법의 예는 다음과 같습니다. 이후 다음 값을 사용하여 DMARC 정책을 지속적으로 업데이트하세요.

  1. p=none pct=100
  2. p=quarantine pct=1
  3. p=quarantine pct=5
  4. p=quarantine pct=10
  5. p=quarantine pct=25
  6. p=quarantine pct=50
  7. p=quarantine pct=100
  8. p=reject pct=1
  9. p=reject pct=5
  10. p=reject pct=10
  11. p=reject pct=25
  12. p=reject pct=50
  13. p=reject pct=100

DMARC 일일 보고서

DMARC 일일 보고서는 XML 형식이며 이메일 흐름에 대한 정보가 포함되어 있습니다. 보고서를 사용하여 다음과 같은 작업을 수행할 수 있습니다.

  • 발신 이메일 소스의 인증 여부 확인
  • 도메인의 메일을 전송하는 이메일 서버가 합법적인지 확인
  • 새 서버가 온라인 상태이거나 기존 서버에 구성 문제가 있는 경우 응답
DMARC 보고서 예

아래 예시는 두 개의 IP 주소에서 전송된 메일의 결과를 보여 주는 보고서의 일부입니다. 메일 한 개는 직접 전송되었고 나머지 한 개 메일은 전달되었으며 두 메일 모두 DMARC 검사를 통과했습니다.


<record>
<row>
<source_ip>207.126.144.129</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
</policy_evaluated>
</row>
<identities>
<header_from>stefanomail.com</header_from>
</identities>
<auth_results>
<dkim>
<domain>stefanomail.com</domain>
<result>pass</result>
<human_result></human_result>
</dkim>
<spf>
<domain>stefanomail.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>
<record>
<row>
<source_ip>207.126.144.131</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<reason>
<type>forwarded</type>
<comment></comment>
</reason>
</policy_evaluated>
</row>
<identities>
<header_from>stefanomail.com</header_from>
</identities>
<auth_results>
<dkim>
<domain>stefanomail.com</domain>
<result>pass</result>
<human_result></human_result>
</dkim>
<spf>
<domain>stefanomail.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>

도움이 되었나요?
어떻게 하면 개선할 수 있을까요?