Difference between revisions of "SPF+DKIM+DMARC"

From The Hive
m (fix section heading)
(links, milter)
Line 1: Line 1:
 
Correct mail configuration is especially important if you own a "biz" domain, to avoid having your email misinterpreted or misclassified as spam.
 
Correct mail configuration is especially important if you own a "biz" domain, to avoid having your email misinterpreted or misclassified as spam.
  
== The main technologies ==
+
== Main technologies ==
  
 
=== Sender Policy Framework ===
 
=== Sender Policy Framework ===
Line 23: Line 23:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
If you are going to use DKIM, you also need a "milter" or similar software for your server to sign email headers with a private key corresponding to the public key in the DNS record. See [http://opendkim.org/ OpenDKIM].
+
If you are going to use DKIM on your domain, then you need a "milter" or similar software for your server to sign outgoing email headers with a private key corresponding to the public key in the DNS record, and, if you wish, to verify DKIM signatures on incoming mail. See [http://opendkim.org/ OpenDKIM].
  
 
=== Domain-based Message Authentication, Reporting, and Conformance ===
 
=== Domain-based Message Authentication, Reporting, and Conformance ===
  
'''DMARC''' is described in [https://tools.ietf.org/html/rfc7489 RFC 7489]. See also [https://sourceforge.net/projects/opendmarc/ OpenDMARC] at [http://www.trusteddomain.org/ The Trusted Domain Project].
+
Described in [https://tools.ietf.org/html/rfc7489 RFC 7489]. See also [https://sourceforge.net/projects/opendmarc/ OpenDMARC] at [http://www.trusteddomain.org/ The Trusted Domain Project].
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
_dmarc.example.biz.    86400  IN      TXT    "v=DMARC1; p=quarantine"
 
_dmarc.example.biz.    86400  IN      TXT    "v=DMARC1; p=quarantine"
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
'''DMARC''' is widely deployed. There is a [https://kitterman.com/dmarc/assistant.html DMARC Record Assistant] and other tools to help you create your own DMARC record online, as well as commercial services such as [https://dmarcian.com/ Dmarcian], employed by banks and financial services among others.
  
 
== Conclusion ==
 
== Conclusion ==
  
 
All of the foregoing technologies are implemented as DNS records. To further secure the authenticity of your email, you might consider using [[X.509+DNSSEC+CAA|DNSSEC]] on your domain.
 
All of the foregoing technologies are implemented as DNS records. To further secure the authenticity of your email, you might consider using [[X.509+DNSSEC+CAA|DNSSEC]] on your domain.

Revision as of 20:14, 11 February 2020

Correct mail configuration is especially important if you own a "biz" domain, to avoid having your email misinterpreted or misclassified as spam.

Main technologies

Sender Policy Framework

SPF is described in RFC 7208 and implemented as a DNS TXT record.

example.biz.            86400   IN      TXT     "v=spf1 a mx ~all"

Too short a time-to-live (here 86400 seconds) is often taken as an indicator of spammishness. The "biz" tld itself uses 900 seconds, but that can be used to quickly revoke a spammer's domain.

The version was never updated from 1, but other tools were developed to be used in conjunction with SPF.

DomainKeys Identified Mail

DKIM is described in RFC 6376 and implemented by a public key in another DNS TXT record. Here is the general gist of very simple possible example.

default._domainkey.example.biz. 86400 IN TXT    "v=DKIM1; k=rsa; p=base64encodedpublickey"

If you are going to use DKIM on your domain, then you need a "milter" or similar software for your server to sign outgoing email headers with a private key corresponding to the public key in the DNS record, and, if you wish, to verify DKIM signatures on incoming mail. See OpenDKIM.

Domain-based Message Authentication, Reporting, and Conformance

Described in RFC 7489. See also OpenDMARC at The Trusted Domain Project.

_dmarc.example.biz.     86400   IN      TXT     "v=DMARC1; p=quarantine"

DMARC is widely deployed. There is a DMARC Record Assistant and other tools to help you create your own DMARC record online, as well as commercial services such as Dmarcian, employed by banks and financial services among others.

Conclusion

All of the foregoing technologies are implemented as DNS records. To further secure the authenticity of your email, you might consider using DNSSEC on your domain.