Book review: SpamAssassin – A Practical Guide to Integration and Configuration

Spam is unsolicited emails with advertisements, which costs money. According to one survey spam costs up to $1000 per employee per year. Spam is send without the permission of the recipients. According to wikipedia, in June 2006 55 billion spam emails send per day (see MAAWG Issues First Global Email Spam Report for more information).

Adblock detected 😱

My website is made possible by displaying online advertisements to my visitors. I get it! Ads are annoying but they help keep this website running. It is hard to keep the site running and producing new content when so many people block ads. Please consider donating money to the nixCraft via PayPal/Bitcoin, or become a supporter using Patreon.

Computer users can avoid e-mail spam in several ways like end user use e-mail filtering and email server administrators run special software such as SpamAssassin to trap e-mail spam at the mail server level itself.

The book SpamAssassin is a practical guide to configure and install one of the most popular open source effective spam filter software. The entire book is divided into 18 chapters that cover from Spam basis, installing and configuring SpamAssassin software. This book almost covers every feature of spamassassin. The most important part the book is full of practical examples and authors advice.

In order to use this book you must have access to SpamAssassin software.

Chapter 1: Introducing Spam

This chapter defines the term spam and points out how profitable business spamming is. It also covers other factors such as low cost of spam and its history etc.

Chapter 2: Spam and Anti-Spam techniques

Spam is a cat and mouse game. This chapter highlights the tool used to create and filter the spam. This chapter is like a guided tour of SpamAssassin.

Chapter 3: Open relays

An open mail relay occurs when a mail server processes a mail message where neither the sender nor the recipient is a local user. This chapter describes how-to test an email server for open relay and offers configuration option to block an open mail relay for Postfix, Qmail and other mail servers.

Chapter 4: Protecting email addresses

How spammers operate or how do they gather your email addresses? This chapter explains variety of techniques used by spammers to collect your email address. This chapter also offers some techniques to protect your email address.

Chapter 5: Detecting Spam

Now you know how spammers work and collect your email address. Next logical step is detecting spam and ham.

We human can easily distinguish between spam and ham but computer program required rock solid logic to find out difference between two types of email. This chapter covers various method used to identify spam.

Chapter 6: Installing SpamAssassin

You will learn how to install SpamAssassin using source code and binary packages. It covers installation under Windows and different Linux distributions.

Chapter 7: Configuration files

This chapter talks about these 3 level of configuration files and rules/scores used my SpamAssassin for filtering out mail.

Chapter 8: Using SpamAssasin

This chapter covers configuration and integration of SpamAssassin with your MTA. You can run SpamAssassin various ways.

Chapter 9: Bayesian Filtering

These days many mail software and mail client program such as Mozilla Thunderbird implement Bayesian spam filtering.

Bayesian spam has mathematical foundation i.e. it use Bayes’ theorem that classifies the probability that an email is spam.

This chapter talks about spam filtering and spam filter training. This is one of the most important part of SpamAssassin, IMPO.

Chapter 10: Look and Feel

You can modify email headers with the help of SpamAssassin so that email client program or your own scripts can identify both spam and ham.

This chapter demonstrates how to use these capabilities with your SpamAssassin software.

Chapter 11: Network Tests

This chapter talks about how to use other RBL and SURBL with SpamAssassin. It covers following three services:

VipulÃ¢â‚¬â„¢s Razor

Pyzor

The Distributed Checksum Clearinghouse (DCC)

With these external services, you can improve chances of spam detection.

Chapter 12: Rules

A rule allows you to define both spam and ham. This chapter talks about the most important build block of SpamAssassin. You will learn how to use a corpus for calculating the effectiveness of rules to improve filtering.

Chapter 13: Improving Filtering

Learn how to use whitelisting to improve detection of spam using a number of techniques.

Topic disused here is useful for both sysadmin and end users.

Chapter 14: Performance

If you run large mail service, you will notice various factors may slow down both MTA and SpamAssassin. This chapter talks about the main bottleneck occurs while using SpamAssassin. It also offers suggestion to get rid of bottleneck to improve SpamAssassin performance.

Chapter 15: Housekeeping and Reporting

Once SpamAssassin configured it runs quite smoothly. But as a sysadmin you need to generate reports such as

Spam and Ham Reports

Spam Counter

Detect when SpamAssassin failed etc

These reports used to improve SpamAssassin filtering.

Chapter 16: Building an Anti-spam Gateway

You will learn how to build an antispam gateway with Linux, SpamAssassin, Postfix MTA, and Amavisd-new software. So that each email can be tagged as Spam.

Chapter 17: Email Clients

Usually webmail program send spam to Spam folder but email client such as Outlook or Thunderbird needs a little configuration to send email to spam folder with the help of header based filtering.

Chapter 18: Choosing other spam tools

SpamAssassin is one of the best tools available. But you can increase spam detection using other third party spam tools. This is result into better and accurate spam detection.

Summary

Overall, I find the book useful and informative for new sys admins. The book is highly recommended if you want to understand and implement following topics: a) Install and configure SpamAssassin with MTA b) Blacklisting and whitelisting configuration c) Creating an antispam gateway d) Bayesian Filtering etc

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Your support makes a big difference:

I have a small favor to ask. More people are reading the nixCraft. Many of you block advertising which is your right, and advertising revenues are not sufficient to cover my operating costs. So you can see why I need to ask for your help. The nixCraft takes a lot of my time and hard work to produce. If everyone who reads nixCraft, who likes it, helps fund it, my future would be more secure. You can donate as little as $1 to support nixCraft: