DMARC (Domain-based Message Authentication, Reporting, and Conformance)는 RFC7849에서 정의한 인터넷 표준 이메일 인증 기술 중의 하나로 도메인 기반 메시지 인증, 보고 및 확인 작업에 관련된 기술입니다. 메일 관리자는 DMARC를 사용하여 소유 이메일 도메인에 대한 피싱, 스푸핑(이메일의 보낸사람 주소를 위조하는 공격)으로 부터 보호할 수 있습니다.
DMARC 레코드에는 SPF나 DKIM같은 인증 프로세스를 통과하지 못했거나 DMARC 정책 레코드의 인증 요구사항을 충족하지 못한 메일을 받은 경우 메일 수신 서버에서 수행할 작업에 대한 지침이 담겨져 있으며 이러한 작업에는 메일을 수신자에게 정상적으로 전달해야 할지의 여부, 수행 작업에 대한 처리보고서를 지정된 이메일 주소로 발송할 수 있는 방법 등이 있습니다.
DMARC 설정 이전 필요한 사전 작업
DMARC는 SPF(Sender Policy Framework)와 DKIM (DomainKeys Identified Mail)을 기반으로 설정되는 지시사항이므로 사전에 미리 SPF정보와 DKIM정보가 DNS 서버에 등록되어 있어야 합니다. SPF와 DKIM에 대한 등록 과정은 다음 문서를 참조하시기 바랍니다.
DMARC 정책 레코드를 DNS서버에 등록하기
DMARC정책 옵션은 DMARC인증을 통과하지 못할 경우 메일 수신 서버에서 취하여야 할 조치들에 관한 내용입니다. DMARC정책은 해당 도메인의 TXT 레코드 타입 란에 입력하여야 하며 일반적으로 다음과 같은 포맷으로 구성되어 있습니다.
v=DMARC1; p=none; rua=mailto:postmaster@exaple.net pct=100; adkim=s; aspf=r
태그 | 입력값 및 설명 | 필수여부 |
v | DMARC1 고정값이며 가장 먼저 선언되어야 합니다. | Y |
p | v 다음에 선언되어야 하며 수신서버에서 DMARC로 인증되지 않은 메일에 대한 처리 방법
|
Y |
sp | 하위 도메인에서 전송된 메일에 대한 정책
|
N |
aspf | From(보내는이) 주소에 사용된 도메인과 SPF 도메인의 일치 여부 설정
|
N |
adkim | From(보내는이) 주소에 사용된 도메인과 DKIM 서명 도메인 정보와의 일치 여부 설정. 태그 값의 의미는 aspf 설정값과 동일합니다.
|
N |
rua | 해당 도메인의 DMARC 처리 보고서를 수신할 이메일 주소입니다. 메일 주소 앞에 ‘mailto:’를 입력합니다. 쉼표(,) 를 연결하여 여러 이메일 주소를 지정할 수 있습니다. |
N |
pct | 해당 도메인을 발신 주소로 하여 전달되는 메시지 중 얼마만큼의 메일에 DMARC정책을 적용할 지의 여부이며 1~100의 값을 가집니다. 예를 들어 pct값이 50인 경우 50%의 메시지에 대해서만 DMARC정책을 적용합니다. | N |
메일링크 이용시 DMARC 적용 방법
메일링크는 메일 발송시 자체적인 SPF및 DKIM 정책을 적용하고 있으며 이것은 메일링크 소유 도메인에 대해서만 가능한 작업입니다. 예를 들어 maillink.co.kr 로 끝나는 모든 도메인에 대하여 메일링크는 소유권을 가지고 있으며 이들 도메인에 대한 SPF및 DKIM정보를 DNS 서버에 등록할 수 있습니다. 일반적으로는 메일 수신서버에서 From주소와 연동하지 않고 SPF및 DKIM 인증 테스트를 실시하기 때문에 메일링크에 적용된 내용만으로도 인증 통과에 문제가 없지만 DMARC를 적용한다면 사용자 환경에서 추가적인 DNS설정 작업을 해주어야 합니다.
DMARC의 인증 기준이 되는 도메인은 이메일 헤더 중 From(보낸사람) 부분이므로 여기서 사용된 이메일 주소의 도메인 부분이 SPF나 DKIM인증시 사용되는 도메인과 다르다면 DMARC인증이 실패하여 메일이 수신함으로 정상적으로 전달되지 않을 수 있습니다. 예를 들어 사용자가 postmaster@example.net이라는 주소를 보낸사람 이메일 주소로 사용하여 메일링크를 통해 이메일을 발송한다면 DMARC인증에 사용되는 도메인은 example.net이고 SPF와 DKIM인증시 확인하는 도메인은 maillink.co.kr이 되어 DMARC인증에 실패하게 됩니다.
따라서 사용자 도메인인 example.net에 대한 DNS정보에 메일링크의 SPF와 DKIM 정보를 추가해 주어야 합니다.
우선 SPF정보에는 메일링크의 발송 서버를 포함시켜 주어야 합니다.
예를 들어 example.net의 SPF정보가 이미 다음과 같이 설정되어 있다면
v=spf1 a:mail.example.net ~all
아래와 같이 include:spf.maillink.co.kr 부분을 추가해 주어야 합니다.
v=spf1 a:mail.some_domain.com include:spf.maillink.co.kr ~all
다음으로 DKIM을 적용하려면 아래와 같은 내용을 DNS서버에 추가로 등록해 주어야 합니다.
이름(호스트) : mlk._domainkey 또는 mlk._domainkey.example.net
유형(Record Type): CNAME
값(value) : dkim.maillink.co.kr
이러한 DNS작업을 모두 정상적으로 마친 후 메일링크에 해당 도메인에 대한 DMARC적용이 완료되었음을 알려주시면, 메일링크에서는 검증 작업을 수행한 후 해당 도메인 값을 이용하여 메일 발송시 SPF와 DKIM정보를 적용하여 메일을 발송할 수 있습니다. 보다 자세한 내용은 메일링크 고객센터(1544-9231 또는 help@maillink.co.kr)로 연락주시기 바랍니다.
안녕하세요
사용자 도메인 : ksww.or.kr
DMARC 정책 레코드를 DNS서버에 등록 설정 문의 입니다.
설정예시
v=DMARC1; p=none; rua=mailto:postmaster@exaple.net pct=100; adkim=s; aspf=r
설정
v=DMARC1; p=none; rua=mailto:ksww@ksww.or.kr pct=100; adkim=s; aspf=r
v=DMARC1; p=none; rua=mailto:ksww@ksww.or.kr 와 같이 설정하시기를 추천드립니다. adkim, aspf는 생략시 r(relaxed)가 기본값입니다.