BenV's notes

Slackware(64), Qmail and IPv6

by on Oct.06, 2009, under Software

Now that we have Xenbro up and running with a domain attached to it and a bunch of toy domU’s running, we soon ran into the need for a dns server and mailer.
Needless to say I don’t like the default Sendmail and Bind junk very much (wonder why Slackware still ships it…), and my experiences with Exim and Postfix aren’t all too great either.
Sure, they work, but they’re too complex for my liking. I like to know what’s going on, so I still use my trusty old Qmail and Djbdns for mail and dns.
However, since those packages haven’t been updated in years, some newer features are missing. So I patch them 4 times over and stab them a bit so they work the way I like 😉

So what things are missing in the vanilla Qmail 1.03 package?

  • IPv6 support
  • A ton of antispam features like SPF, DomainKeys, MFCHECK, etc
  • Authentication support
  • Filter support for stuff like Spamassassin, ClamAV, /dev/null
  • Virtual domains

Probably more, but these are things I care about. Some of these points are not entirely true, for instance you could add filter support by mangling the .qmail files for all users, but these are things you want centralized so all things have to pass the filter, not for only a few accounts.
In order to fix the missing features I use a few things.
First of all: John M. Simpson’s combined patch. This patch fixes more than half of the list. It’s a collection of smaller patches all rolled together in a nice patch that cleanly applies to qmail 1.0.3 as supplied by D.J. Bernstein. Thanks a lot to Mr Simpson! His pages also have a lot of notes and scripts on how to get qmail up and running, and how to run the services from daemontools. You might want to check them out.
Next, I use vpopmail to handle the virtual domains problem. Together with qmailadmin they make the virtual domains thing very easy.

Anyway, that is all old stuff. New stuff is having Qmail working correctly using IPv6.
It’s easy to get it up and running, basically just compile qmail as usual and patch ucspi-tcp using Fefe’s IPv6 patch. Make a few new qmail-smtp services for the IPv6 enabled addressses and go!
While this does work for receiving mail, it fails for a few things in the combined patch – like SPF checking.
You will run into stuff like:

@400000004acb39440ca58a8c qmail-smtpd[28952]: Received-SPF: unknown (service.xenbro.nl: No IP address in conversation)

Obviously this is a lie, but at least it’s dealt with gracefully. However, you want SPF checking for the IPv6 address!
Fortunately, Brandon Turner has patched this with a patch that applies to Qmail 1.0.3 when already patched with John’s patch. Enough patches for you? 😉
After recompiling and restarting your services you will see that it works now. Thanks Brandon! 🙂

@400000004acb4025340a0b5c qmail-smtpd[31526]: Received-SPF: none (service.xenbro.nl: domain at je.moeder.com does not designate permitted sender hosts)

What does Slackware have to do with this?
Nothing, I just like the way it runs the qmail services :-p




:, , ,

Leave a Reply

You must be logged in to post a comment.