We're using MailCleaner OSE -
MailCleaner OpenSource Edition Forum • Index page
Setup with TrustedSources, SpamClam, PreRBL, URIBL and Spamc.
Greylisting helps (obviously) but is a pain (one DB per host, even in cluster mode).
Can also be trained (through IMAP) to learn, for bayesian filtering.
Works nicely enough for me for the price (free beside the servers/bandwidth): never more than 3 spam per day in my Inbox.
And is full of reports (domain admins love reports) 8))
Can be setup per domain for quarantaine or drop or delivery.
In delivery mode, works very nicely with a single rule in ZCS' SpamAssassin (all other rules removed) in order to deliver the tagged messages in "Spam" folder.
We also had excellent results with IronPort (well, some of our rich customers, not us 8)).