bind:domain-based_message_authentication_reporting_and_conformance_dmarc
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
bind:domain-based_message_authentication_reporting_and_conformance_dmarc [2016/11/18 10:04] – peter | bind:domain-based_message_authentication_reporting_and_conformance_dmarc [2019/11/26 21:01] (current) – removed peter | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Bind - Domain-based Message Authentication Reporting and Conformance (DMARC) ====== | ||
- | DMARC is built upon two other authentication protocols: | ||
- | |||
- | - [[Bind: | ||
- | - [[Bind: | ||
- | |||
- | A DMARC policy allows a sender to indicate that their messages are protected by SPF and/or DKIM, and tells a receiver what to do if neither of those authentication methods passes – such as junk or reject the message. | ||
- | |||
- | |||
- | ===== DNS config ===== | ||
- | |||
- | DMARC-policies are published as TXT records, in DNS. | ||
- | |||
- | The basic record looks like this: | ||
- | |||
- | < | ||
- | _dmarc.example.com IN TXT " | ||
- | </ | ||
- | |||
- | |||
- | ===== DMARC tags ===== | ||
- | |||
- | DMARC tags tell the email receiver to | ||
- | |||
- | - Check for DMARC and | ||
- | - What to do with messages that fail DMARC authentication. | ||
- | |||
- | |||
- | ^Tag Name^Required^Purpose^Sample^ | ||
- | |v|required|Protocol version|v=DMARC1| | ||
- | |p|required|Policy for domain|p=quarantine| | ||
- | |pct|optional|% of messages subjected to filtering|pct=20| | ||
- | |rua|optional|Reporting URI of aggregate reports|rua=mailto: | ||
- | |sp|optional|Policy for subdomains of the domain|sp=reject| | ||
- | |aspf|optional|Alignment mode for SPF|aspf=r| | ||
- | |||
- | |||
- | ==== v: Version ==== | ||
- | |||
- | This tag is used to identify the TXT record as a DMARC record, so email receivers can distinguish it from other TXT records. | ||
- | |||
- | Example: | ||
- | |||
- | < | ||
- | v=DMARC1 | ||
- | </ | ||
- | |||
- | |||
- | ==== p: Requested Mail Receiver Policy ==== | ||
- | |||
- | This tag indicates the policy to be enacted by the receiver for messages that fail DMARC authentication and alignment checks, as specified by the domain owner. | ||
- | |||
- | * **p=none**: The domain owner requests no specific action be taken on mail that fails DMARC authentication and alignment. | ||
- | * **p=quarantine**: | ||
- | * **p=reject**: | ||
- | |||
- | Given the information above, the most basic DMARC record example could be: | ||
- | |||
- | < | ||
- | v=DMARC1; p=none | ||
- | </ | ||
- | |||
- | |||
- | ==== Optional DMARC tags ==== | ||
- | |||
- | The optional DMARC tags below allow email senders to give more specific instructions on what to do with mail that does not authenticate, | ||
- | |||
- | * **rua**: Indicates where aggregate DMARC reports should be sent to. Senders designate the destination address in the following format: rua=mailto: | ||
- | * **ruf**: Indicates where forensic DMARC reports should be sent to. Senders designate the destination address in the following format: ruf=mailto: | ||
- | * **adkim**: Indicates strict or relaxed DKIM identifier alignment. The default is relaxed. | ||
- | * **aspf**: Indicates strict or relaxed SPF identifier alignment. The default is relaxed. | ||
- | * **rf**: Format for message failure reports. The default is Authentication Failure Reporting Format, or " | ||
- | * **ri**: The number of seconds elapsed between sending aggregate reports to the sender. The default value is 86,400 seconds or a day. | ||
- | * **pct**: Percentage of messages to which the DMARC policy is to be applied. This parameter provides a way to gradually implement and test the impact of the policy. | ||
- | * **fo**: Dictates what type of authentication and/or alignment vulnerabilities are reported back to the Domain Owner. | ||
- | |||
- | There are four values to the latter **fo:** tag: | ||
- | |||
- | * **0**: Generate a DMARC failure report if all underlying authentication mechanisms fail to produce an aligned " | ||
- | * **1**: Generate a DMARC failure report if any underlying authentication mechanism produced something other than an aligned " | ||
- | * **d**: Generate a DKIM failure report if the message had a signature that failed evaluation, regardless of its alignment. | ||
- | * **s**: Generate an SPF failure report if the message failed SPF evaluation, regardless of its alignment. | ||
- | |||
- | While the default is **" | ||
- | |||
- | For example. | ||
- | |||
- | < | ||
- | v=DMARC1; p=reject; fo=1; rua=mailto: | ||
- | </ | ||
- | |||
- | ===== What about sub-domains? | ||
- | |||
- | The final DMARC tag we will discuss today is the sp: tag, which is used to indicate a requested policy for all subdomains where mail is failing the DMARC authentication and alignment checks. | ||
- | |||
- | For the following scenarios, we will use the top-level domain of " | ||
- | |||
- | - The Domain Owner wants to enforce a reject policy for " | ||
- | |||
- | - Domain Owner wants to enforce a reject policy for " | ||
- | |||
- | |||
- | ===== Create a DMARC record in monitor mode ===== | ||
- | |||
- | < | ||
- | v=DMARC1; p=none; fo=1; rua=mailto: | ||
- | </ | ||
- | |||
- | With DMARC in monitor mode, you can gather the information on your entire email ecosystem, including who is sending email on behalf of your brand, what emails are getting delivered, and what emails are not. | ||
- | |||
- | Request to receive the daily aggregate and forensic reports by specifying your email address in the rua tag and the ruf tag, respectively. | ||
- | |||
- | |||
- | ===== Examples ===== | ||
- | |||
- | Choose how you want recipient servers to handle email from your domain that fails SPF/DKIM validation. Options are outlined below in red: | ||
- | |||
- | < | ||
- | None: " | ||
- | Reject: " | ||
- | Quarantine: " | ||
- | </ | ||
- | |||
- | Alternately, | ||
- | |||
- | < | ||
- | None: " | ||
- | Reject: " | ||
- | Quarantine: " | ||
- | </ | ||
- | |||
- | |||
- | ===== References ===== | ||
- | |||
- | https:// |
bind/domain-based_message_authentication_reporting_and_conformance_dmarc.1479463460.txt.gz · Last modified: 2020/07/15 09:30 (external edit)