| |
EWL
A GPL/freeware email whitelisting program
July 2004
Ewl is my own email whitelisting tool for fighting spam. It is intended
to run under procmail, but could run under any tool that can take smart actions
(e.g. "reply") based on header tags.
Features:
- Very fast -- minimal footprint C++ code and based on hash code lookups.
- Secure -- it requires no root privileges for any part of the process.
- Easy to install -- it's simply a single-task user process, no system
directory installs, no daemons, no funny symlinks, no perl, python, etc.
library dependences.
- Not client specific -- it works as a server side (e.g. procmail) filter
and thus will apply for any POP client.
- Ready for real use -- it has been tuned with some extra features to handle
real-world problems like businesses that will never register, whitelist
ringing, and many others.
- Usually more accurate than filter-based approaches with no need for
updating as spammers work around filters.
- Registration process is less painful that other commercial systems.
In the simplest mode, it parses an email on stdin and decides if the From: email address is
in the whitelist. If it isn't, a "please register" reply will be generated. When that is returned, and a registration string in the
Subject: line seen, the email address will be added to the whitelist.
For a regular lookup, the output is the original email with a header tag (intended for procmail) added. The tag
indicates what to do (keep, drop, reply).
Sufficient command-line options for maintenance are included. A
readme.txt file explaining all options is included.
Shortcomings:
- It is a whitelist. People initially sending you email (that you
didn't first send email to) must register.
- It prefers running in procmail and near the server. It's not suitable
for a client-only Windows environment.
- Automatically registering addresses in outgoing email requires the
alwaysbcc feature of procmail 2.1 and and an extra email account.
Improvements and suggestions are welcome.
Download source
If you get some use out of EWL, a $5 suggested donation will help
motivate improvements (or contribute your own code improvements).
|