qmail – How to lose 3 night’s sleep in a hurry
I’ve been having a few major problems with my FreeBSD server for over a year now. In a nutshell, a bad CPU caused compiling to fail quite often, which trashed the installed software packages pretty badly. Even after replacing the CPU, I could never quite get PHP working. No matter what I did, it wouldn’t take POST data! I tried upgrading to FreeBSD 7.0, and that didn’t do the trick, and even created additional problems in the process. So why didn’t I just rebuild the server? One word: “qmail”.
See, qmail is a mail system. Like “sendmail” but without sendmail’s insecurity. But qmail likes to be “special”. It’s creator has certainly principles that he likes to stick to, which spill over into the software. In this case, he beleives that the directory hierarchy that he prefers is so much better than the default for your OS (directory hierarchy is a favorite religious arguement in Unix-land), that his stuff is really tricky to make work outside of his structure. On top of that, most of the tutorials out there are from the “compile from source” crowd, so they don’t help too much for people (like me) who use the OS’s package or port system.
To make matters worse, qmail takes the Unix modularization to a truly sick extreme. There are so many sub-programs that it seems like each class in the code became its own module, so the functionality can be “drop-in replaced” at an extremely granular level. While there is something commendable and “elegant” in this, it makes problem solving nearly impossible.
The last time I set up this server, qmail took me nearly 3 days of non-stop effort to get working the way I wanted it to. The first time I did it, qmail took me nearly a week of 20 hour days. when I finally broke down this week and rebuilt the server, qmail took me merely 3 nights’ worth of effort. It is a measure of how twisted this is, that I consider spending three nights’ worth of effort an “improvement”. Indeed, I could have earned enough money in that period of time to purchase a Windows Server SBS license, provided that I had enough articles lined up.
I am not going to go into what went wrong this time and what the resolution was. A quick summary would simply be, “qmail’s strong preference for certain defaults, coupled with qmail’s preference for pure source compilation, multiplied by the extreme modularity of qmail, with a small dose of operator error, created a situation which was untenable”. In other words, the system is so bloody complex that a simple mistake not only makes the whole thing unworkable, but eliminates the possibility of getting any kind of meaningful troubleshooting information, and the resources online are all wildly different as well as often being quite out of date.
If you value your time, stay clear of qmail. Sadly, it is the best game in town for BSD users, but if you are on a Linux distribution that supports Scallix or Zimbra, go with them and save yourself some pain.
J.Ja
Have you looked at dovecot?
http://www.dovecot.org/
I haved looked at postfix and Dovecot, the reason why I’m not using either one is because I use Webmin for my adminstration. It works well with Dovecot, but then I would need Sendmail back (or keep using qmail) as an MTA for outbound mail. Postfix is not supported, as far as I know, by Webmin. The bigger issue is that I was migrating my Webmin settings, so I really couldn’t shift mail systems. The sad irony is, as part of the process of getting qmail working, I had to delete and recreate all of the mail users. At the end of the day, I could have gotten away with the Sendmail/Dovecot combination after all, but I didn’t know it until I was done.
J.Ja
That is why postfix was created. Pure, simple, straightforward, and secure as well…..
I’ved used Postfix with Courier-IMAP and WebMin on Mandriva for most of this decade… what am I missing in terms of supportability?
Older versions of WebMin did not *seem* to support Postfix, but I may have missed it. Older versions of WebMoin were certainly laid out in a way that it was easy to miss things, that is for sure! The biggest problem for me is that I have years of painfully gained qmail experience… I have a huge fear that transitioning to another system might entail a similarly painful learning curve. Maybe I’m just being silly. I *do* know that I am fairly certain that the next time I need to do this, I will venture beyond qmail. I’ve been using it since around 2003, and the process has not gotten any easier, nor any other aspects of managing it! Meanwhile, there are plenty of alternatives out there, which can’t be nearly as painful…
J.Ja