introduction features readme download
updates help todo

SourceForge Logo

The first spam filter capable of blocking 100% of your spam!


The NAGS (Netizens Against Gratuitous Spamming) Spam Filter is a Perl script written by Ian Leicht, which can be used by netizens who have access to a shell account on a UNIX/Linux system. Ian released version 1.0 back in September 1996! Tony Cureington started using it in 2000 and made many modifications to it over the years, resulting in version 4.0 being released containing those contributions.

Why NAGS? NAGS provides another hurdle for spammers. The more obstacles between spammers and you, the less spam you are likely to receive. NAGS is like your postal delivery person sending all mail that is not addressed to you back to the sender for verification. The ok_required feature of NAGS takes this a step further, the postal person would send any mail that does not have a return address from someone you know back to the sender for authentication. This feature stops junkmail dead in its tracks.

Through the use of a .forward file, all incoming mail is first passed through the NAGS Spam Filter. The filter then decides whether the mail should be passed along to your mailbox, rejected and a challenge message sent to the sender, or just ignored. The script has been tested with fetchmail (fetchmail fetches mail from POP, IMAP, ETRN, or ODMR-capable servers).

This software is released under the terms of the GNU General Public License. The nags-filter project is maintained on SourceForge.

Below is a screenshot of the nags_stats.tcl script showing the messages that has processed.
Screenshot of nags_stats.tcl in action


Just a few of the many NAGS-Filter features are:
The main NAGS configuration file provides more insight to the available features. A brief description of the other configuration files is provided below.
      spam_sites      - domain names that will cause mail to be marked as spam
      to_exceptions   - to allow email from lists you subscribe to
      junkmailers     - for finding "Xmailer: junkmailer" header strings
      spam_subjects   - text in the subject that marks message as spam
      from_exceptions - to allow domains and email address through


The README provides details on configuring, testing, and the system requirements of NAGS. In addition, the FAQ provides answers to frequently asked questions. Please review these two documents before asking questions.


Download the latest version of nags and untar it in your home directory using the following command (where x.x is the version):

tar xzf nags-x.x.tar.gz

Now cd into the nags directory and follow the instructions in the README file.

If you currently have version 3.B2 or an older version installed, you will need to save off your current directory then install and configure this version. There is no automatic upgrade method for versions older than v4.0. A method is in place for automatically upgrading v4.0 and future releases.

You can view the README online from the CVS repository if you desire.


Getting Update Notices

To get an announcement when a new version of NAGS is released, subscribe to the nags-filter-announce list. When a new version is released, a notice will be posted there shortly afterwords.

Release Information

See the CHANGES file for specific changes in each release.
   Released version 4.0 on June 5, 2005.

Getting Help

Be patient, maintainers go on vacation, have grass to mow, dishes to wash, and other tasks that may take priority. That's life. Others on the lists below may be able to answer your question - that is the beauty of the lists.

Getting Help

Any type of questions should be posted to the nags-filter users list , you must be subscribed to the list to post (send email) messages to it. You can browse previously posted questions and answers .

Please search this list for an answer to your question, it is frustrating to see questions posted that have already been answered - take the time, do a little research. Really. Don't attempt to send email directly to the maintainers, it won't make it to us (no one will ever see it), others do not benefit from your questions or answers in private emails. No kidding.

Reporting Bugs

Before submitting a bug, be sure to browse the submitted bugs to ensure it has not already been reported. If you don't see a similar bug, then submit a new bug with the following information:
  1. Version of the NAGS-Filter.
  2. Describe the sequence of steps that exposed the bug.
  3. Provide the exact text displayed, if any, when the bug is exposed.
  4. Any known work-around for this bug.


A list of things on the back burner can be found in the TODO document.


! - filter first available 1996, enable ok_required option for 100% spam blocking capability.