Background of MTX

Whitelist in place of Blacklists

Classically, a whitelist was a list of people you wanted to make sure you got email from by skipping spam filtering.

For a long time, people have collected blacklists of IPs known to send spam, and then later included IPs known to not send legitimate email. These are used to block email from those IPs.

Years ago it seemed odd to me to maintain these very large lists of IPs that I didn't want to get mail from, instead of the comparatively tiny list of IPs that I did want to get mail from. I decided to create such a whitelist of IPs I tended to get good email from, and in my spam filter give bonuses to emails that matched, and penalties to emails that were not on the list.

Then I could make the list public. Then I could get other people to help maintain it. Then everyone would use it.

DNSWL

Not being new to this situation, I went looking for existing implementations. I was happy to find the work had been done: DNSWL by Matthias Leisi. He had different intentions (no penalty for absence from the list), but it was the same data, and I could use it how I wanted. And I was happy with the implementation. I helped some.

I never did get to the point where I suggested that people start penalizing email for not being on this list. The creator objected, I didn't know how to Reject a spam during delivery (so false positives were a major problem), and I wasn't sufficiently confident that everyone would get on the list.

SPF

SPF came along. New whitelists to use in place of blacklists! I created my records, and waited to see where it went. I still didn't know how to Reject spam.

Rejection during SMTP Delivery

Finally, a couple days before the creation of MTX, I configured my mail server to Reject mail during delivery based on SpamAssassin's output, so I could send error messages for false positives without causing backscatter.

I finally configured SpamAssassin to give a bonus to any email that got a "pass" from SPF, and a penalty to any email that didn't, even if only because the domain had no SPF record. I also created a blacklist for the few spammer domains that used SPF. Easy. Worked great. I sent emails to domains I got legitimate email from which did not have SPF records, asking for them to be created.

I got a couple emotional responses to my requests which indicated that they would never create SPF records because it breaks forwarding. I also discovered that the (envelope from munging) solutions to the forwarding problem were found similarly objectionable. SPF had a major barrier to adoption.

MTX

As I drove home that night, I lamented again that everyone doesn't just use DNSWL. While it has the disadvantage of dependence on a central authority, it doesn't have the forwarding breakage of SPF. Then I realized that we could have both: DNSWL's lack of forwarding breakage with SPF's decentralization, by storing DNSWL style whitelist records on the DNS servers of the owners of the IPs of each legitimate mail server.

In that instant, MTX was born, and practically finalized.

MTX Policy was tacked on a week later.

The only remaining problem is spammers that implement MTX, which is the reason for the ability to blacklist domains.


MTX Home.
Contact.
Return to Darxus' home page.
Sat Feb 13 13:01:26 EST 2010
HTML validate this page.