This document contains
• A general overview of what SpamAssassin does
• Information about viewing Spam Scores
• Solutions to common problems with mail filtering and spam
• Setting up your .procmailrc and using the vacation program
is a mail filter to identify spam email. It tests each message against a
lengthy set of
rules (see below)
that are common characteristics of spam and generates a rating representing
the likelihood that the message is spam. Once a rating is generated, that
rating is included in the email headers so that a filtering program (see our procmail* page to see how to do this) can be
used to flag the email, filter it into a special folder, or discard it.
What rules does it use to determine whether a message is spam?
SpamAssassin uses an extensive list of tests to test the likelihood that a
message has been sent by a spammer. A message's score increases if, for
example, it is received via a relay in a blacklisted domain (one that has been
publicly recognized for generating spam), is forged pretending to be from MS
Outlook, contains explicit content, or if the body of the message contains a
significant amount of HTML code. On the other hand, a message's score
decreases if there is reason to suggest that it is a legitimate message, like
quoted email text (indicative of a reply), or if the sender uses a Unix-based
email client like Pine.
For a complete list of SpamAssassin's tests, see http://eu.spamassassin.org/tests.html.
Viewing Spam Score
We currently prepend "[Likely SPAM]" to messages with high SpamAssassin
scores. The level at which this string is applied is deliberately set high so
as to be conservative in our declaration of what is probably spam. This keeps
legitimate messages from being mistakenly tagged.
To view the score for a particular message, full headers need to be enabled
in your mail client of choice. There should be three extra fields reporting SpamAssassin scoring information in the
header of the message: X-Spam-Status, X-Spam-Level, and
X-Spam-Checker-Version (see the bold lines below).
Received: from localhost [127.0.0.1] by ares with SpamAssassin (2.50
Mon, 25 Aug 2003 13:33:05 %z
Subject: Re: Thank you!
Date: Mon, 25 Aug 2005 10:33:07 +0800
X-Spam-Status: Yes, score=7.9 required=5.0
X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on
Content-Type: multipart/mixed; boundary="----------=_3F4A4851.7F9D4976"
Now that you have your scoring in place you have to set up your .procmailrc to use the scoring for filtering. See our procmail* page for information on how to do this.
Legitimate email keeps
getting filtered out. What should I do?
Occasionally SpamAssassin will generate a false positive on a legitimate
message, which is why we recommend setting up filtering to move mail marked as
spam to a separate folder as opposed to deletion. Based on personal
experience, SpamAssassin seems to be a bit trigger-happy when testing for
forged mail pretending to be from Microsoft Outlook; that is, mail actually
sent by someone using Outlook as a mail client is reported as forged,
increasing those messages' scores.
SpamAssassin provides a whitelisting option that forces mail from addresses
on a user's white list to be reported as spam, never to be filtered out.
To add an address to your white list, simply create a file named
~.spamassassin/user_prefs in your home directory, and include the following
line for each address you wish to whitelist:
How can I reduce the amount of SPAM
sent out to my mailing lists?
See our page about SPAM on mailman lists*.
*This page is a "coming soon" attraction.