eximspamy is a low maintenance, light weight spam filter system.
Version: 0.2eximspamy is a spam filter framework that uses exim's perl extension.
Operating System: Linux
It is supposed to be solution which requires no maintenance and will use only very little cpu power. I am using this on a pentium 100 Mhz server with no problems.
eximspamy processes or rejects the mail in one go. That is: the mail does not run twice through exim as with most other mail filter systems.
Exim offers the possibility to execute perl subroutines from filter files.
To use this feature you must specify a file which contains perl subroutines in the exim.conf file:
perl_startup = do '/etc/exim/exim.pl'
and you need to have a version of exim which had perl support enabled at compile time
in the file:
add the line
of the exim source tree.
In the system filter (normally system_filter.exim) you can use those perl subroutines
to execute various tests on any line of the header (e.g $header_subject: $header_from:) or even the message body ($message_body)
eximspamy uses the following idea to catch the spam: you need to setup one user to which you re-direct all spam-traps.
That is old accounts which are no longer used and catch only spam or special seeds which you spread on webpages to catch only spam (use e.g white font on white background so that normal users do not see them).
All mail which is sent to the spamtrap is run through a filter which will take a checksum on the subject line. Those checksums are stored in a file (/usr/local/spamy/tmp/sums.txt)
Any mail coming into your system will then be checked against the known "spam" checksums in /usr/local/spamy/tmp/sums.txt.
In other words you compute again a checksum on the subject line and then you check if this checksum is already known. If it is known then you consider it spam.