Spam is a huge problem for everyone. Running a mail server these days is particularly painful. Spam, viruses, and phishing are enough to drive me insane. Our spamassassin + amavis solution worked well for a while but something changed recently that made it a total bitch to keep running. Amavis would just hang randomly and mail would just sit in the queue until I noticed it. I was complaining about it to Jorge and he mentioned that he migrated to MailScanner.
MailScanner does some rather nifty things like act as a gateway to all sorts of mail filtering, like spam, phishing, and viruses. It basically calls whatever application you want to use for filtering, but also does things like making sure the filters don’t hang or take too long. The configuration might take a while to get right but it’s easy to follow and well-documented. In the week or so since I installed it it’s run rock solid. The only problem I had was a misconfiguration, not enough child threads to do the work so it fell behind. It never just hung or stopped working, though.
One of these days I’ll get around to writing something about the entire mail setup we are using.