Home / Blogs

DKIM for Discussion Lists

J.D. Falk

There's a pernicious meme floating around that DomainKeys Identified Mail (DKIM) doesn't work with discussion lists, particularly those hosted on common open source software packages like MailMan. It's particularly odd to see this claim after I set it up successfully on a stock Debian server in less than half an hour, just a few weeks ago. Here's how it can, should, and does work:

1.  The inbound MTA handles DKIM signature verification, and applies an Authentication-Results header (or a custom X header.) For example, Sendmail's DKIM Milter does this out of the box for Sendmail, Postfix, and other popular MTAs.

2.  If the list /won't/ be modifying the message — in other words, if it acts like a simple forwarder — skip to step 5.

3.  Either the MDA or the list handler strips the DKIM-Signature header, effectively rendering the message unsigned.

4.  The list handler modifies the message in accordance with its configuration, often by adding a footer, placing a tag in the Subject: header, and adding List-* headers.

5.  The MSA or outbound MTA (re-)signs the message. This is appropriate because even if the message is passing through the system unchanged, the list handler is now the Originator, and thus responsible for that message (from a technical perspective, if not in a legal sense). I'd recommend using a different selector (perhaps a different subdomain) for each list, or at least for lists vs. non-list mail from that host, but that's not required.

6.  The outbound MTA transmits the message as per usual.

There's no wacky hacking required — it all works exactly as documented, and exactly as intended.

(Much of the terminology used in this article — MTA, MSA, Originator, et cetera — is defined in draft-crocker-email-arch-15.)

By J.D. Falk, Internet Standards and Governance. Visit the blog maintained by J.D. Falk here.

Related topics: Email, Security, Spam

WEEKLY WRAP — Get CircleID's Weekly Summary Report by Email:

Comments

Oops, one correction: step #3 above doesn't J.D. Falk  –  Jun 02, 2009 2:38 PM PST

Oops, one correction: step #3 above doesn't happen by default, but MailMan and other list software can easily be configured to strip particular headers — or you can use procmail or other mail filtering software between the MTA and the list handler.

Works great John Levine  –  Jun 03, 2009 1:12 AM PST

I did the same thing for majordomo2, and it was similarly easy.

I don't bother to put in an authentication-results header since the list software has plenty of logs in the unlikely event that I need to track how a particular message got through a list.

Authentication-results Jim Fenton  –  Jun 04, 2009 10:38 AM PST

A couple of things relating to the application and use of the Authentication-Results header field in step 1:

- Does the signature applied in Step 5 include the Authentication-Results header field just added?  The signing of Authentication-Results header fields strikes me as implying somewhat different semantics (correctness of the header field) than a DKIM signature has (taking responsibility for the message, but saying nothing about its correctness) which makes me a bit conflicted on this idea.

- Prior to applying Authentication-Results, the list software should look for and remove any existing Authentication-Results header fields that purport to be from the list.  Otherwise it's possible for an attacker to spoof the A-R header field.

Are there any other recommendations on header fields that the list should sign, such as List-Id?

To my mind, signing the Authentication-Results header J.D. Falk  –  Jun 05, 2009 10:14 AM PST

To my mind, signing the Authentication-Results header still has the same concept of taking responsibility for that header.  Downstream entities will have to make up their own minds whether that responsibility is sufficient to denote correctness.  Even so, I'm also conflicted about whether it's a good idea.

Shouldn't hurt for the list software to remove it, though — or to remove any other Authentication-Results headers that might be lying around — because recipients will only be using the new signature to decide whether the message is trustworthy.

additional discussion J.D. Falk  –  Jun 13, 2009 4:52 AM PST

There's been some additional discussion about this on the ietf-dkim list, with a few people vehemently against the recipe above.  Hector Santos summed up the differences nicely in this message.  My reply is here.

If all you care about is making sure that your discussion list is signing effectively with DKIM, though, just read the original article above.  This particular debate is lost deep in the weeds.

draft-ietf-dkim-mailinglists J.D. Falk  –  Sep 01, 2010 10:12 AM PST

There's now an IETF draft being developed with additional advice for mailing list operators:

http://tools.ietf.org/html/draft-ietf-dkim-mailinglists

That draft has now been published as J.D. Falk  –  Sep 25, 2011 8:17 AM PST

That draft has now been published as RFC 6377.

https://tools.ietf.org/html/rfc6377

To post comments, please login or create an account.

Related Blogs

Related News

Topics

Industry Updates – Sponsored Posts

MarkMonitor to Exhibit at Internet Tech Policy Exhibition and Reception to be Held on Capitol Hill

Verisign to Award New Infrastructure Research Grants

Nixu SNS 2.5 Series Gives Fresh Views on DNS

Neustar Names Joe Pasqua to Head Neustar Labs

Q3 2011 Fraud Intelligence Report

The Spookiest DDoS Attacks in History

Protecting Your Business from DDoS Attacks: Advice from Neustar

A Different Kettle of Phish

Introduction to Nixu Software: End-to-End Software-Based DNS, DHCP, IPAM Solutions for Your Network

MarkMonitor Fraud Intelligence Report Released for Q2 2011

Dyn Releases New Powerhouse in Enterprise Class Email Delivery

President Obama Names Neustar President and CEO Lisa Hook to NSTAC

Verisign's Matt Larson Wins 2011 InfoWorld Technology Leadership Award

Internet Adds 4.5 Million Domain Names in First Quarter of 2011

Businesses Lack Safeguards Against DDoS Attacks and DNS Failures, New Research Shows

Q1 2011 Fraud Intelligence Report

Neustar Launches SiteProtect for DDoS Protection

The Botnet-Counterfeit Drugs Connection

Verisign Enhances Its Managed DNS Service With Full Support for DNSSEC Compliance and Geo Location

Verisign Achieves Critical DNSSEC Milestone by Deploying Security Extensions in .com TLD

Hot Topics

dotMobi

Mobile

Sponsored by
dotMobi
Afilias

DNSSEC

Sponsored by
Afilias
Minds + Machines

Top-Level Domains

Sponsored by
Minds + Machines
Verisign

Security

Sponsored by
Verisign
Neustar UltraDNS

DNS

Sponsored by
Neustar UltraDNS