I've been working on building a linux-based mail server over the last month or so. I started off with sendmail and some realtime blackhole lists, then I added SpamAssassin, and today I topped it off with Vipul's Razor.
One of the other sysadmins on campus (a total Linux guru) offered to replace my sendmail with qmail, which he says is superior, though no one can really explain why to me in less than two paragraphs. After a couple hours of re-compiling and tweaking, sendmail has been replaced, but my realtime blackhole lists are gone!
I can add them back in with qmail, but to do so, I'll have to compile a tcpwrapper to wrap around the qmail smtp service. It makes my head hurt just thinking about it...
On the plus side, the spam-filtering is great! I invoke SpamAssassin and Razor via my .procmailrc file, and divert all the junk into folders to be reviewed and deleted at my leisure. Razor seems to do a better job of detecting the true spam, but Assassin catches a lot of other assorted junkmail and moves it out of my inbox.
You might be thinking "I just push the delete button, and it works for me". Well, that's nice, but try reading your e-mail on your "Visor" over a 14.4K cell-phone link, and you'll appreciate having fewer junk messages to download.