Home / Blogs

What Does It Mean to Deploy DMARC?

John Levine

The IETF's DMARC working group is thinking about a maintenance update to the DMARC spec, fixing bits that are unclear and perhaps changing it where what mail servers do doesn't exactly agree with what it says. Someone noted that a lot of mailers claim to have "deployed DMARC," and it's not at all clear what that really means.

Deploying DMARC seems to mean any subset of these:

1a. Publish a DMARC record

Publishing a DMARC record just means to put a record in the DNS that has a name like _dmarc.bigbank.example and has contents that are in DMARC syntax.

1b. Publish a DMARC record with a restrictive policy

The record contains p=quarantine or p=reject.

2a. Evaluate DMARC status of incoming messages

For an incoming message, see if there's a DMARC record that matches the From: address, if so check if the message has passes, SPF and/or DKIM, and determine whether the message passes or fails DMARC. The mail server would generally add an Authentication-Results: header to the message to show what it did.

2b. Use that status to manage message disposition

If the status is DMARC failure and the policy is quarantine or reject, do something appropriate. (I'm being deliberately vague here since it's up to each receiver to decide how to treat each sender's DMARC policy.)

3. Collect reports

Publish a DMARC record with rua and ruf mailto: addresses and receive mail at those addresses. Since the reports are intended to be processed automatically and there can be a lot of them, systems will generally feed them to scripts that extract the interesting parts into a database and produce reports, but there's nothing in the spec that requires doing anything beyond receiving them. There are services that will do the collecting and analysis if you don't want to collect and extract yourself.

4a. Send aggregate reports

Save the results from item 2a and use them to send aggregate reports to domains who ask for them.

4b. Send failure reports

Use the results from item 2a to send failure reports to domains who ask for them.

The DMARC spec has a section Minimum Implementations which says that a minimum implementation has to do all of these things, except it can just send or just receive reports. In practice, that doesn't seem to match what people actually do.

Bulk senders often do items 1b and 3, without necessarily doing anything special on their incoming mail. Lots of mail systems do items 1a or 1b and 2a and 2b but don't send reports. Hardly anyone sends failure reports since they send copies of messages to people who may or may not have had anything to do with the message in the first place, a privacy disaster waiting to happen.

I've suggested that we could write a DMARC deployment guide that describes the parts of DMARC, the ways they interact and in what sequence it's useful to deploy them. If you'd find that useful, leave a comment.

By John Levine, Author, Consultant & Speaker
Follow CircleID on
Related topics: Email
SHARE THIS POST

If you are pressed for time ...

... this is for you. More and more professionals are choosing to publish critical posts on CircleID from all corners of the Internet industry. If you find it hard to keep up daily, consider subscribing to our weekly digest. We will provide you a convenient summary report once a week sent directly to your inbox. It's a quick and easy read.

I make a point of reading CircleID. There is no getting around the utility of knowing what thoughtful people are thinking and saying about our industry.

Vinton Cerf, Co-designer of the TCP/IP Protocols & the Architecture of the Internet

Share your comments

A deployment guide would be really helpful. Todd Knarr  –  Jun 01, 2019 3:28 PM PDT

A deployment guide would be really helpful. The setup isn't technically hard, but it takes experience to judge which parts are useful for what kinds of organizations.

On failure reports, I lean towards not sending them but not because of any privacy concerns. It's more that those reports are really only useful to a domain owner who intends to take some action against senders trying to impersonate them, and I don't know of any domains that dedicate resources to that.

As the person that brought this up Jim Fenton  –  Jun 04, 2019 2:02 PM PDT

As the person that brought this up on the DMARC mailing list, thanks for bringing this forward.

A deployment guide would be very helpful, but I'm not sure it necessarily answers the "what is DMARC" question. It may not be possible to keep people from saying that they "deployed DMARC" but it might be good to include some more specific terminology that can be used, like "publish DMARC policy", "observe DMARC policies", and "send periodic DMARC reports on request".

To post comments, please login or create an account.

Related

Topics

Cybercrime

Sponsored byThreat Intelligence Platform

DNS Security

Sponsored byAfilias

Domain Names

Sponsored byVerisign

Cybersecurity

Sponsored byVerisign

IP Addressing

Sponsored byAvenue4 LLC

New TLDs

Sponsored byAfilias

Whois

Sponsored byWhoisXML API