* * * * *

                         Notes on an anti-spam system

At the weekly meeting the other day, Smirk asked me to look into some
alternative anti-spam measures, since more and more spam is making it past
the spam firewall. I mentioned the success of greylisting [1] and he told me
to look into it.

I've currently downloaded several packages for both Sendmail [2] (what we use
at The Office) and Postfix [3] (what I personally use) and there's better
support for greylisting now than there was three years ago, but I'm rather
puzzled that all the implementations so far use some form of database backend
to keep track of all the requests (tumgreyspf [4] uses the filesystem, but as
Mark [5] likes to point out, that's a form of database) when one could just
as easily keep track of the requests in memory.

It's not like we're stuck with 256M (Megabytes) of RAM (Random Access Memory)
these days. Even on my Mac mini, the resident set size of Firefox [6] is 16M
and I figure you could store about 65,000 requests (which would be swept
clean every hour anyway) in 16M.

So my plan is to write some greylist software that keeps everything in
memory, so it should be fast, with no worries about resource exhaustion. The
protocol used in Postfix is easy, and I can cannibalize code from two
previous [7] daemons [8] I wrote to get up and running rather quickly.

[1] gopher://gopher.conman.org/0Phlog:2004/06/18.2
[2] http://www.sendmail.org/
[3] http://www.postfix.org/
[4] http://www.tummy.com/Community/software/tumgreyspf/
[5] http://gladesoft.com/
[6] http://www.mozilla.com/firefox/
[7] gopher://gopher.conman.org/0Phlog:2006/01/17.2
[8] gopher://gopher.conman.org/0Phlog:2007/03/08.1

Email author at [email protected]