SPAMGrinder

Updated 6/19/2003

What is it?

SPAMGrinder is an e-mail filtering program.  It runs on the client (Windows platforms) and communicates with POP3 mail servers.  Once configured, it will log onto your mail server and show you all new messages waiting to be read.  It will analyze each message and try to determine if it's spam, giving you the option to delete messages without reading them first.

How does it work?

In addition to supporting user-configured blacklists and whitelists, SPAMGrinder can check e-mails against DNSBL lists.  It also makes some other checks, like looking for a valid return e-mail address, including checking the existence of the sender's domain.

How do I use it?

It's quite simple, really.  Download, unzip, and run the setup.exe file to install it on your computer.  You will need the Microsoft .Net Framework 1.0 installed on your machine since the program was written in Visual Basic.Net.  Once installed, you'll need to find and edit the config.xml file which should be located in the same folder that you installed the program to.  This is a standard XML file and it contains a POP section which holds the server names, user names, and passwords to each of your POP3 servers.  You can add as many servers as you need, as shown below:

<POP>
  <server Name="server1dnsname">
    <username>user1</username>
    <password>pw1</password>
  </server>
  <server Name="server2dnsname">
    <username>user2</username>
    <password>pw2</password>
  </server>
...
</POP>

There is also an <emailpath> tag in the file.  This line is used to tell SPAMGrinder where your default e-mail client is located.  If you're using something other than Outlook Express (or if it's not installed on the C: drive in the path indicated) you'll need to modify this line.

The <DNSBL> section lists all the DNSBL servers that SPAMGrinder will check to try and determine if an e-mail is spam.  You can add or remove servers if you choose.

How do the blacklist and whitelist files work?

Two text files are used to store blacklist and whitelist addresses: blacklist.txt and whitelist.txt.  You can add complete e-mail addresses to these files (user@domain.com) or specify a wildcard character to block or add an entire domain (*routerfive.com).  For example, if you're getting a lot of spam from e-mail addresses at routerfive.com (spam@routerfive.com), the previous example will cause SPAMGrinder to mark them all as spam.

What else do I need to know?

The program works, but no doubt has a few bugs.  There isn't a lot of error checking in the code, so if something doesn't work as expected (like your POP3 server isn't online) the program may crash.  Also, the Bounce feature is not functional yet.  Checking this box on an e-mail message will not accomplish anything.  Ultimately I want to add the ability to bounce messages back to the sender so that it appears your e-mail address is no longer valid, in the hopes that they will remove it from their list.

As far as the user interface is concerned, you need to know that you can right-click on an e-mail message to get a submenu showing additional commands that can be performed on the message.  The "Process Mail" button will perform whatever tasks you've chosen and then attempt to launch your e-mail client so you can read your messages.

Who can I contact if I have a problem?

The author can be reached here.  The program, source, and other related information is available at http://sourceforge.net/projects/spamgrinder/