I currently run my own mail server on linode, and I use client-side spam filtering on my Mac. It works great. If I happen to get spam in my inbox, which happens maybe once or twice a week, I mark it as spam using a handy GUI in my email client and the email is moved to the spam filter, and the filter learns from the email. Similarly, if a message goes to spam erroneously, I simply mark it as “not spam”, the message is moved to my inbox, and the filter corrects itself again.
This system works because I have three main machines: a desktop, a laptop, and my iPhone. The desktop runs my “main client,” so I leave it always on and always filtering spam. In this way, when I check email on my phone or laptop, the spam has been filtered.
I’m not going to have an always-on machine as I transition to a mobile lifestyle. So I have been looking at server-side spam filtering. The trouble with that is the interface. How do I mark an email as spam or not spam? The process of training on a server is much more cumbersome and spammers continually adapt to the filters. I wonder, is there a reasonably good server-side spam filter system out there for my circumstances?