Good-bye Sendmail

As an experiment, when I built my new “home” server (the one hosting my personal email and websites, including this one), I chose Sendmail for my MTA. I’d been using Postfix in the server’s last incarnation, but I was a little tired of what I thought were the oddities in configuring it, and it looked like Sendmail had a nice interface for in-line content filtering.

The experiment is now concluded. Between the three MTAs with which I have experience (Postfix, Sendmail, and Qmail), Postfix is still handily the best.

The arcane and abstruse configuration for Sendmail is worse than setting up Postfix, to be sure. However, what finally tipped the scales is the poor way that virtual domains are handled. I was trying to set up Mailman for a domain that I host, and I discovered that Mailman can only create new lists on the fly if you’re running Postfix. This is due, at least in part, to the fact that you can’t have an address in a virtual domain delivered directly to a program. This effectively means that I’d have to create a local address along with every virtual address used by Mailman. This pollutes the namespace for one of my local domains with accounts which don’t need to be in it and requires me to shell in to my server and update the aliases file every time I add a list.

As an added blow, I discovered several days ago that Postfix also has a nice mechanism for delegating policy enforcement built into it, with a couple of sample SPF and greylisting policy scripts that seem to work well. So much for Sendmail having an advantage because of libmilter.

2 thoughts on “Good-bye Sendmail

  1. Oh! So I was wrong: the sample greylisting policy server is prone to corrupting its database, which will cause your mail server to defer mail until its fixed. Check out Postgrey. Much more featureful and stable.

Leave a Reply