Optional Modules
----------------
In addition, the following modules will be used for some checks, if
available and the version is high enough. If they are not available or if
their version is too low, SpamAssassin will still work, just not as
effectively because some of the spam-detection tests will have to be
skipped.
Note: SpamAssassin will not warn you if these are installed, but the
version is too low for them to be used.
- MIME::Base64
This module is highly recommended to increase the speed with which
Base64 encoded messages/mail parts are decoded.
- DB_File (from CPAN, included in many distributions)
Used to store data on-disk, for the Bayes-style logic and
auto-whitelist. *Much* more efficient than the other standard Perl
database packages. Strongly recommended.
There seems to be a bug in libdb 4.1.25, which is
distributed by default on some versions of Linux. See
http://wiki.apache.org/spamassassin/DbFileSleepBug for details.
- Net::SMTP (from CPAN)
Used when manually reporting spam to SpamCop.
- Mail::SPF (from CPAN) or Mail::SPF::Query (from CPAN)
Used to check DNS Sender Policy Framework (SPF) records to fight email
address forgery and make it easier to identify spams.
Either of Mail::SPF or Mail::SPF::Query can be used but Mail::SPF is
preferred as it is the current reference implementation for RFC 4408.
Net::DNS version 0.58 or higher is required to use Mail::SPF.
Net::DNS version 0.34 or higher is required to use Mail::SPF::Query.
If using Mail::SPF note that NetAddr::IP (required by Mail::SPF)
versions up to and including version 4.006 include a bug that will
slow down the entire perl interpreter. NetAddr::IP version 4.007 or
later fixes this.
- IP::Country::Fast (from CPAN)
Used by the RelayCountry plugin (not enabled by default) to determine
the domain country codes of each relay in the path of an email.
- Net::Ident (from CPAN)
If you plan to use the --auth-ident option to spamd, you will need
to install this module.
- IO::Socket::INET6 (from CPAN)
This is required if the first nameserver listed in your IP
configuration or /etc/resolv.conf file is available only via an IPv6
address.
- IO::Socket::SSL (from CPAN)
If you wish to use SSL encryption to communicate between spamc and
spamd (the --ssl option to spamd), you need to install this
module. (You will need the OpenSSL libraries and use the
ENABLE_SSL="yes" argument to Makefile.PL to build and run an SSL
compatibile spamc.)
- Compress::Zlib (from CPAN)
If you wish to use the optional zlib compression for communication
between spamc and spamd (the -z option to spamc), useful for
long-distance use of spamc over the internet, you need to install
this module.
- Time::HiRes (from CPAN)
If this module is installed, the processing times are logged/reported
more precisely.
- Mail::DKIM (from CPAN)
If this module is installed, and you enable the DKIM plugin,
SpamAssassin will perform DKIM lookups when a DKIM-Signature header is
present in the message headers. If Mail::DKIM version 0.20 or later
is installed, this will also perform Domain Key lookups on
DomainKey-Signature headers, without requiring the Mail::DomainKeys
module.
Note that the Mail::DKIM module in turn requres the OpenSSL libraries.
- Mail::DomainKeys (from CPAN)
If this module is installed, and you enable the DomainKeys plugin,
SpamAssassin will perform Domain Key lookups when Domain Key
information is present in the message headers.
Note that Mail::DKIM version 0.20 or later will perform Domain Key
lookups, so this may be redundant.
Note that the Mail::DomainKeys module in turn requres the OpenSSL
libraries and the CPAN module Crypt::OpenSSL::Bignum.
- DBI *and* DBD driver/modules for your database (from CPAN)
If you intend to use SpamAssassin with an SQL database backend for
user configuration data, Bayes storage, or other storage, you will need
to have these installed; both the basic DBI module and the driver for
your database.
- Encode::Detect (from CPAN)
If you plan to use the normalize_charset config setting to detect
charsets and convert them into Unicode, you will need to install
this module.
- Apache::Test (from CPAN)
If you plan to run the Apache2 version of spamd in the
"spamd-apache2" directory, you will need to install this
module.
- Apache 2 and mod_perl
If you plan to run the Apache2 version of spamd in the "spamd-apache2"
directory, you will need to ensure these are installed.
Ubuntu: sudo apt-get install apache2 libapache2-mod-perl2
- Razor2
If you plan to use Vipul's Razor, note that versions up to and
including version 2.82 include a bug that will slow down the entire
perl interpreter. Version 2.83 or later fixes this.
If you do not plan to use this plugin, be sure to comment out
its loadplugin line in "/etc/mail/spamassassin/v310.pre".