Inhaltsverzeichnis

erweiterter SPAM-Schutz mit Hilfe von SpamAssassin

Zur weiteren Absicherung unseres Mailservers bzw. -verkehrs bedienen wir uns des Dienstes spamassassin.

Installation

Wie üblich installieren wir die benötiten Programmpakete via YUM.

yum install spamassassin 

Programminfo

Info

Auch bei diesem Paket spamassassin informieren wir uns erst einmal an Hand der RPM-Info:

# yum info spamassassin

Name   : spamassassin
...
Summary: Spam-Filter für E-Mails, der durch Mail-Agenten aufgerufen werden kann.
Description:
SpamAssassin provides you with a way to reduce if not completely eliminate
Unsolicited Commercial Email (SPAM) from your incoming email.  It can
be invoked by a MDA such as sendmail or postfix, or can be called from
a procmail script, .forward file, etc.  It uses a genetic-algorithm
evolved scoring system to identify messages which look spammy, then
adds headers to the message so they can be filtered by the user's mail
reading software.  This distribution includes the spamd/spamc components
which create a server that considerably speeds processing of mail.

To enable spamassassin, if you are receiving mail locally, simply add
this line to your ~/.procmailrc:
INCLUDERC=/etc/mail/spamassassin/spamassassin-default.rc

To filter spam for all users, add that line to /etc/procmailrc
(creating if necessary).

Programmpfade und -inhalte

Über die einzelnen Dateien und Pfade der installierten Programme, informieren wir uns auch hier mittels:

rpm -ql spamassassin
/etc/cron.d/sa-update
/etc/logrotate.d/sa-update
/etc/mail/spamassassin
/etc/mail/spamassassin/init.pre
/etc/mail/spamassassin/local.cf
/etc/mail/spamassassin/spamassassin-default.rc
/etc/mail/spamassassin/spamassassin-helper.sh
/etc/mail/spamassassin/spamassassin-spamc.rc
/etc/mail/spamassassin/v310.pre
/etc/mail/spamassassin/v312.pre
/etc/mail/spamassassin/v320.pre
/etc/rc.d/init.d/spamassassin
/etc/sysconfig/spamassassin
/usr/bin/sa-compile
/usr/bin/sa-learn
/usr/bin/sa-update
/usr/bin/spamassassin
/usr/bin/spamc
/usr/bin/spamd
/usr/lib/perl5/vendor_perl/5.8.8/Mail
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/AICache.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/ArchiveIterator.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/AsyncLoop.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/AutoWhitelist.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Bayes
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Bayes.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Bayes/CombineChi.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Bayes/CombineNaiveBayes.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore/DBM.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore/MySQL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore/PgSQL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore/SDBM.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/BayesStore/SQL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Client.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Conf
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Conf.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Conf/LDAP.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Conf/Parser.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Conf/SQL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Constants.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/DBBasedAddrList.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Dns.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/DnsResolver.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/HTML.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locales.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locker
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locker.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locker/Flock.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locker/UnixNFSSafe.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Locker/Win32.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Logger
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Logger.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Logger/File.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Logger/Stderr.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Logger/Syslog.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/MailingList.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message/Metadata
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message/Metadata.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message/Metadata/Received.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Message/Node.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/NetSet.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/PerMsgLearner.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/PerMsgStatus.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/PersistentAddrList.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/ASN.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/AWL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/AccessDB.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/AntiVirus.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/AutoLearnThreshold.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Bayes.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/BodyEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Check.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/DCC.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/DKIM.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/DNSEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/DomainKeys.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/HTMLEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/HTTPSMismatch.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Hashcash.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/HeaderEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/ImageInfo.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/MIMEEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/MIMEHeader.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/OneLineBodyRuleType.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Pyzor.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Razor2.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/RelayCountry.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/RelayEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/ReplaceTags.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Rule2XSBody.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/SPF.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Shortcircuit.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/SpamCop.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/Test.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/TextCat.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/URIDNSBL.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/URIDetail.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/URIEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/VBounce.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/WLBLEval.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Plugin/WhiteListSubject.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/PluginHandler.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Reporter.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/SQLBasedAddrList.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/SpamdForkScaling.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/SubProcBackChannel.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Timeout.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util/DependencyInfo.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util/Progress.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util/RegistrarBoundaries.pm
/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/Util/TieOneStringHash.pm
/usr/lib/perl5/vendor_perl/5.8.8/spamassassin-run.pod
/usr/share/doc/spamassassin-3.2.4
/usr/share/doc/spamassassin-3.2.4/CREDITS
/usr/share/doc/spamassassin-3.2.4/Changes
/usr/share/doc/spamassassin-3.2.4/LICENSE
/usr/share/doc/spamassassin-3.2.4/NOTICE
/usr/share/doc/spamassassin-3.2.4/README
/usr/share/doc/spamassassin-3.2.4/TRADEMARK
/usr/share/doc/spamassassin-3.2.4/UPGRADE
/usr/share/doc/spamassassin-3.2.4/USAGE
/usr/share/doc/spamassassin-3.2.4/sample-nonspam.txt
/usr/share/doc/spamassassin-3.2.4/sample-spam.txt
/usr/share/man/man1/sa-compile.1.gz
/usr/share/man/man1/sa-learn.1.gz
/usr/share/man/man1/sa-update.1.gz
/usr/share/man/man1/spamassassin-run.1.gz
/usr/share/man/man1/spamassassin.1.gz
/usr/share/man/man1/spamc.1.gz
/usr/share/man/man1/spamd.1.gz
/usr/share/man/man3/Mail::SpamAssassin.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::AICache.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::ArchiveIterator.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::AsyncLoop.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::AutoWhitelist.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Bayes.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::BayesStore.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::BayesStore::MySQL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::BayesStore::PgSQL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::BayesStore::SQL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Client.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Conf.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Conf::LDAP.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Conf::Parser.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Conf::SQL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::DnsResolver.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Logger.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Logger::File.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Logger::Stderr.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Logger::Syslog.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Message.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Message::Metadata.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Message::Node.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::PerMsgLearner.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::PerMsgStatus.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::PersistentAddrList.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::ASN.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::AWL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::AccessDB.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::AntiVirus.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::AutoLearnThreshold.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Check.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::DCC.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::DKIM.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::DomainKeys.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Hashcash.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::MIMEHeader.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::OneLineBodyRuleType.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Pyzor.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Razor2.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::RelayCountry.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::ReplaceTags.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Rule2XSBody.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::SPF.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Shortcircuit.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::SpamCop.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::Test.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::TextCat.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::URIDNSBL.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::URIDetail.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::VBounce.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Plugin::WhiteListSubject.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::PluginHandler.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::SQLBasedAddrList.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::SubProcBackChannel.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Timeout.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Util.3pm.gz
/usr/share/man/man3/Mail::SpamAssassin::Util::Progress.3pm.gz
/usr/share/man/man3/spamassassin-run.3pm.gz
/usr/share/spamassassin
/usr/share/spamassassin/10_default_prefs.cf
/usr/share/spamassassin/20_advance_fee.cf
/usr/share/spamassassin/20_body_tests.cf
/usr/share/spamassassin/20_compensate.cf
/usr/share/spamassassin/20_dnsbl_tests.cf
/usr/share/spamassassin/20_drugs.cf
/usr/share/spamassassin/20_dynrdns.cf
/usr/share/spamassassin/20_fake_helo_tests.cf
/usr/share/spamassassin/20_head_tests.cf
/usr/share/spamassassin/20_html_tests.cf
/usr/share/spamassassin/20_imageinfo.cf
/usr/share/spamassassin/20_meta_tests.cf
/usr/share/spamassassin/20_net_tests.cf
/usr/share/spamassassin/20_phrases.cf
/usr/share/spamassassin/20_porn.cf
/usr/share/spamassassin/20_ratware.cf
/usr/share/spamassassin/20_uri_tests.cf
/usr/share/spamassassin/20_vbounce.cf
/usr/share/spamassassin/23_bayes.cf
/usr/share/spamassassin/25_accessdb.cf
/usr/share/spamassassin/25_antivirus.cf
/usr/share/spamassassin/25_asn.cf
/usr/share/spamassassin/25_dcc.cf
/usr/share/spamassassin/25_dkim.cf
/usr/share/spamassassin/25_domainkeys.cf
/usr/share/spamassassin/25_hashcash.cf
/usr/share/spamassassin/25_pyzor.cf
/usr/share/spamassassin/25_razor2.cf
/usr/share/spamassassin/25_replace.cf
/usr/share/spamassassin/25_spf.cf
/usr/share/spamassassin/25_textcat.cf
/usr/share/spamassassin/25_uribl.cf
/usr/share/spamassassin/30_text_de.cf
/usr/share/spamassassin/30_text_fr.cf
/usr/share/spamassassin/30_text_it.cf
/usr/share/spamassassin/30_text_nl.cf
/usr/share/spamassassin/30_text_pl.cf
/usr/share/spamassassin/30_text_pt_br.cf
/usr/share/spamassassin/50_scores.cf
/usr/share/spamassassin/60_awl.cf
/usr/share/spamassassin/60_shortcircuit.cf
/usr/share/spamassassin/60_whitelist.cf
/usr/share/spamassassin/60_whitelist_dk.cf
/usr/share/spamassassin/60_whitelist_dkim.cf
/usr/share/spamassassin/60_whitelist_spf.cf
/usr/share/spamassassin/60_whitelist_subject.cf
/usr/share/spamassassin/72_active.cf
/usr/share/spamassassin/languages
/usr/share/spamassassin/sa-update-pubkey.txt
/usr/share/spamassassin/sa-update.cron
/usr/share/spamassassin/user_prefs.template
/var/lib/spamassassin
/var/run/spamassassin

Konfiguration

Unter gewissen Umständen, bei Verwendung von header- und body-cheks mit und AMaViS als smtpd_proxy_filter kann es passieren, dass Postfix und AMaViS Bounced, also backscatter erzeugen. Eine Diskussion auf der Postfix-Mailingliste beleuchtet die damaligen Hintergründe. Die aktuelle amavisd-.new Version vom Juli 2009 wurde zwar dahingegen optimiert und geändert. Aber für den laufenden Betrieb wollen wir die Headerchecks in Richtung AMaVis und Spamassassin verlagern.

Postfix

Die Headerchecks auf seiten von Postfix deaktivieren wir, in dem wir die angelegte Datei header_checks wegsichern und eine leere Datei anlegen.

 # mv /etc/postfix/header_checks /etc/postfix/header_checks.old
 # touch /etc/postfix/header_check

Anschließend führen wir einen Reload unseres Mailservers durch.

 # service postfix reload

Spamassassin

Die Regeln für die Header-Checks tragen wir nun in die Datei /etc/mail/spamassassin/local.cf ein.

# vim /etc/mail/spamassassin/local.cf
local.cf
# These values can be overridden by editing ~/.spamassassin/user_prefs.cf 
# (see spamassassin(1) for details)

# These should be safe assumptions and allow for simple visual sifting
# without risking lost emails.

# Ab welchem Punktestand soll eine eMail als Spam betrachtet werden?
required_hits 5
# Diese Option legt fest, wie SpamAssassin eine als Spam eingestufte E-Mail markieren soll. Wenn report_safe 0 angegeben ist, fügt 
# Spamassassin lediglich einige X-Spam-Header ein und lässt die E-Mail ansonsten unverändert.
report_safe 0
# Mit dieser Option wird definiert, daß eine Nachricht, welche als SPAM klassifiziert wurde, zusätzlich mit dem Hinweis "**** SPAM ****" 
#in der Betreffzeile gekennzeichnet werden sollen.
rewrite_header Subject [SPAM]

# Django: 15.07.2010
# Diese Direktive bestimmt, welche Sperrmethode verwendet wird, um die beiden Datenbanken (Bayes- und Autowhitelisting) vor gleichzeitigem 
# Zugriffen zu schützen. Wenn sichergestellt ist, daß auf die beiden Datenbanken nie über ein NFS zugegriffen wird, kann auf Unix-Plattformen 
# erheblich an Performance gewonnen werden, indem die Sperrmethode flock verwendet wird.
lock_method flock

# Headercheck-Filterliste für die Absicherung des Postfix-Mailservers Information aus der vorhandenen Postfixdatei /etc/postfix/header_checks
# übernommen, da es unter gewissen Umständen zu Backscatter-Problemen kommen könnte (Stand. 10-07-2009 AMaViS Version 
# amavisd-new-2.5.4-1.el5.rf.src.rpm Version 0.02 / 2009-08-19

# /i = i Case-Insensitivity (die Nichtbeachtung von Groß- und Kleinschreibung) einschalten
# /m = m Multiline-Faehigkeit - Zeilenumbrueche ignorieren


# Header-Checks "From" (Nummerierung 1000 ...)

header          HEADER_FROM_CHECKS_NR1008       From =~ /^.*ic-drei.de/im
score           HEADER_FROM_CHECKS_NR1008       20
tflags          HEADER_FROM_CHECKS_NR1008       noautolearn

header          HEADER_FROM_CHECKS_NR1007       From =~ /^.*Lottery/im
score           HEADER_FROM_CHECKS_NR1007       20
tflags          HEADER_FROM_CHECKS_NR1007       noautolearn

header          HEADER_FROM_CHECKS_NR1006       From =~ /^.*Apotheken-News/im
score           HEADER_FROM_CHECKS_NR1006       20
tflags          HEADER_FROM_CHECKS_NR1006       noautolearn

header          HEADER_FROM_CHECKS_NR1005       From =~ /^.*Online.*Spiele/im
score           HEADER_FROM_CHECKS_NR1005       20
tflags          HEADER_FROM_CHECKS_NR1005       noautolearn

header          HEADER_FROM_CHECKS_NR1004       From =~ /^.*Kasino/im
score           HEADER_FROM_CHECKS_NR1004       20
tflags          HEADER_FROM_CHECKS_NR1004       noautolearn

header          HEADER_FROM_CHECKS_NR1003       From =~ /^.*Pharmacy/im
score           HEADER_FROM_CHECKS_NR1003       20
tflags          HEADER_FROM_CHECKS_NR1003       noautolearn

header          HEADER_FROM_CHECKS_NR1002       From =~ /^.*Royal Club Casino/im
score           HEADER_FROM_CHECKS_NR1002       20
tflags          HEADER_FROM_CHECKS_NR1002       noautolearn

header          HEADER_FROM_CHECKS_NR1001       From =~ /^.*Euro Dice Casino/im
score           HEADER_FROM_CHECKS_NR1001       20
tflags          HEADER_FROM_CHECKS_NR1001       noautolearn

header          HEADER_FROM_CHECKS_NR1000       From =~ /^.*happydigits.de/im
score           HEADER_FROM_CHECKS_NR1000       20
tflags          HEADER_FROM_CHECKS_NR1000       noautolearn

# Header-Checks "Subject" (Nummerierung 2000 ...)

header          HEADER_SUBJECT_CHECKS_NR2073    Subject =~ /.*IHRE E-MAIL HAT GEWONNEN DIE.*/im
score           HEADER_SUBJECT_CHECKS_NR2073    20  
tflags          HEADER_SUBJECT_CHECKS_NR2073    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2072    Subject =~ /.*Potenzschw.che.*/im
score           HEADER_SUBJECT_CHECKS_NR2072    20
tflags          HEADER_SUBJECT_CHECKS_NR2072    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2071    Subject =~ /.*Sicherheitsaktualisierung.*/im
score           HEADER_SUBJECT_CHECKS_NR2071    20
tflags          HEADER_SUBJECT_CHECKS_NR2071    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2070    Subject =~ /.*PARTNERSHIP.*/im
score           HEADER_SUBJECT_CHECKS_NR2070    20
tflags          HEADER_SUBJECT_CHECKS_NR2070    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2069    Subject =~ /.*TEMPORARY JOB OFFER.*/im
score           HEADER_SUBJECT_CHECKS_NR2069    20
tflags          HEADER_SUBJECT_CHECKS_NR2069    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2068    Subject =~ /.*URGENT ATTENTION.*/im
score           HEADER_SUBJECT_CHECKS_NR2068    20
tflags          HEADER_SUBJECT_CHECKS_NR2068    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2067    Subject =~ /.*Penis.*/im
score           HEADER_SUBJECT_CHECKS_NR2067    20
tflags          HEADER_SUBJECT_CHECKS_NR2067    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2066    Subject =~ /.*saxaelle.*/im
score           HEADER_SUBJECT_CHECKS_NR2066    20
tflags          HEADER_SUBJECT_CHECKS_NR2066    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2065    Subject =~ /.*formula for men.*/im
score           HEADER_SUBJECT_CHECKS_NR2065    20
tflags          HEADER_SUBJECT_CHECKS_NR2065    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2064    Subject =~ /.*wife happiness.*/im
score           HEADER_SUBJECT_CHECKS_NR2064    20
tflags          HEADER_SUBJECT_CHECKS_NR2064    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2063    Subject =~ /.*rentiert sich.*/im
score           HEADER_SUBJECT_CHECKS_NR2063    20
tflags          HEADER_SUBJECT_CHECKS_NR2063    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2062    Subject =~ /.*caught on camera.*/im
score           HEADER_SUBJECT_CHECKS_NR2062    20
tflags          HEADER_SUBJECT_CHECKS_NR2062    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2061    Subject =~ /.*Betriebsstaette sucht Beschaeftigte.*/im
score           HEADER_SUBJECT_CHECKS_NR2061    20
tflags          HEADER_SUBJECT_CHECKS_NR2061    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2060    Subject =~ /.*Stimulate her.*/im
score           HEADER_SUBJECT_CHECKS_NR2060    20
tflags          HEADER_SUBJECT_CHECKS_NR2060    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2059    Subject =~ /.*WITH DUE RESPECT.*/im
score           HEADER_SUBJECT_CHECKS_NR2059    20
tflags          HEADER_SUBJECT_CHECKS_NR2059    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2058    Subject =~ /.*Bigger snake..*/im
score           HEADER_SUBJECT_CHECKS_NR2058    20
tflags          HEADER_SUBJECT_CHECKS_NR2058    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2057    Subject =~ /.*Bang her.*/im
score           HEADER_SUBJECT_CHECKS_NR2057    20
tflags          HEADER_SUBJECT_CHECKS_NR2057    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2056    Subject =~ /.*young and enhanced.*/im
score           HEADER_SUBJECT_CHECKS_NR2056    20
tflags          HEADER_SUBJECT_CHECKS_NR2056    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2055    Subject =~ /.*YOUR ASSISTANCE.*/im
score           HEADER_SUBJECT_CHECKS_NR2055    20
tflags          HEADER_SUBJECT_CHECKS_NR2055    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2054    Subject =~ /.*Helping people.*/im
score           HEADER_SUBJECT_CHECKS_NR2054    20
tflags          HEADER_SUBJECT_CHECKS_NR2054    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2053    Subject =~ /.*Enhancing.*/im
score           HEADER_SUBJECT_CHECKS_NR2053    20
tflags          HEADER_SUBJECT_CHECKS_NR2053    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2052    Subject =~ /.*Blaue Pillchen.*/im
score           HEADER_SUBJECT_CHECKS_NR2052    20
tflags          HEADER_SUBJECT_CHECKS_NR2052    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2051    Subject =~ /.*Impotenz.*/im
score           HEADER_SUBJECT_CHECKS_NR2051    20
tflags          HEADER_SUBJECT_CHECKS_NR2051    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2050    Subject =~ /.*ge.fi.ckt.*/im
score           HEADER_SUBJECT_CHECKS_NR2050    20
tflags          HEADER_SUBJECT_CHECKS_NR2050    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2049    Subject =~ /.*Softshell.*/im
score           HEADER_SUBJECT_CHECKS_NR2049    20
tflags          HEADER_SUBJECT_CHECKS_NR2049    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2048    Subject =~ /.*rollige Ramona.*/im
score           HEADER_SUBJECT_CHECKS_NR2048    20
tflags          HEADER_SUBJECT_CHECKS_NR2048    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2047    Subject =~ /.*Dringende Gesch.ft.*/im
score           HEADER_SUBJECT_CHECKS_NR2047    20
tflags          HEADER_SUBJECT_CHECKS_NR2047    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2046    Subject =~ /.*Se-xy.*/im
score           HEADER_SUBJECT_CHECKS_NR2046    20
tflags          HEADER_SUBJECT_CHECKS_NR2046    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2045    Subject =~ /.*private party.*/im
score           HEADER_SUBJECT_CHECKS_NR2045    20
tflags          HEADER_SUBJECT_CHECKS_NR2045    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2044    Subject =~ /.*williges Teeny.*/im
score           HEADER_SUBJECT_CHECKS_NR2044    20
tflags          HEADER_SUBJECT_CHECKS_NR2044    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2043    Subject =~ /.*Special Offer.*/im
score           HEADER_SUBJECT_CHECKS_NR2043    20
tflags          HEADER_SUBJECT_CHECKS_NR2043    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2042    Subject =~ /.*LiveCams.*/im
score           HEADER_SUBJECT_CHECKS_NR2042    20
tflags          HEADER_SUBJECT_CHECKS_NR2042    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2041    Subject =~ /.*gevoegelt.*/im
score           HEADER_SUBJECT_CHECKS_NR2041    20
tflags          HEADER_SUBJECT_CHECKS_NR2041    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2040    Subject =~ /.*gefi.ckte.*/im
score           HEADER_SUBJECT_CHECKS_NR2040    20
tflags          HEADER_SUBJECT_CHECKS_NR2040    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2039    Subject =~ /.*medications.*/im
score           HEADER_SUBJECT_CHECKS_NR2039    20
tflags          HEADER_SUBJECT_CHECKS_NR2039    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2038    Subject =~ /.*Drecksstueck.*/im
score           HEADER_SUBJECT_CHECKS_NR2038    20
tflags          HEADER_SUBJECT_CHECKS_NR2038    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2037    Subject =~ /.*Miststueck.*/im
score           HEADER_SUBJECT_CHECKS_NR2037    20
tflags          HEADER_SUBJECT_CHECKS_NR2037    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2036    Subject =~ /.*verdorbene Hausfrau.*/im
score           HEADER_SUBJECT_CHECKS_NR2036    20
tflags          HEADER_SUBJECT_CHECKS_NR2036    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2035    Subject =~ /.*Ficken.*/im
score           HEADER_SUBJECT_CHECKS_NR2035    20
tflags          HEADER_SUBJECT_CHECKS_NR2035    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2034    Subject =~ /.*verdorbene Schlampe.*/im
score           HEADER_SUBJECT_CHECKS_NR2034    20
tflags          HEADER_SUBJECT_CHECKS_NR2034    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2033    Subject =~ /.*fi.ckbereit.*/im
score           HEADER_SUBJECT_CHECKS_NR2033    20
tflags          HEADER_SUBJECT_CHECKS_NR2033    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2032    Subject =~ /.*immer feucht.*/im
score           HEADER_SUBJECT_CHECKS_NR2032    20
tflags          HEADER_SUBJECT_CHECKS_NR2032    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2031    Subject =~ /.*lets chat.*/im
score           HEADER_SUBJECT_CHECKS_NR2031    20
tflags          HEADER_SUBJECT_CHECKS_NR2031    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2030    Subject =~ /.*bumbsbare.*/im
score           HEADER_SUBJECT_CHECKS_NR2030    20
tflags          HEADER_SUBJECT_CHECKS_NR2030    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2029    Subject =~ /.*geiles Weib.*/im
score           HEADER_SUBJECT_CHECKS_NR2029    20
tflags          HEADER_SUBJECT_CHECKS_NR2029    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2028    Subject =~ /.*Dild_o.*/im
score           HEADER_SUBJECT_CHECKS_NR2028    20
tflags          HEADER_SUBJECT_CHECKS_NR2028    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2027    Subject =~ /.*kommen einmal pro Stunde.*/im
score           HEADER_SUBJECT_CHECKS_NR2027    20
tflags          HEADER_SUBJECT_CHECKS_NR2027    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2026    Subject =~ /.*secret to pleasuring.*/im
score           HEADER_SUBJECT_CHECKS_NR2026    20
tflags          HEADER_SUBJECT_CHECKS_NR2026    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2025    Subject =~ /.*will schlucken.*/im
score           HEADER_SUBJECT_CHECKS_NR2025    20
tflags          HEADER_SUBJECT_CHECKS_NR2025    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2024    Subject =~ /.*an-algeiles.*/im
score           HEADER_SUBJECT_CHECKS_NR2024    20
tflags          HEADER_SUBJECT_CHECKS_NR2024    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2023    Subject =~ /.*impotence.*/im
score           HEADER_SUBJECT_CHECKS_NR2023    20
tflags          HEADER_SUBJECT_CHECKS_NR2023    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2022    Subject =~ /.*deutscher Freund.*/im
score           HEADER_SUBJECT_CHECKS_NR2022    20
tflags          HEADER_SUBJECT_CHECKS_NR2022    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2021    Subject =~ /.*Po-rno.*/im
score           HEADER_SUBJECT_CHECKS_NR2021    20
tflags          HEADER_SUBJECT_CHECKS_NR2021    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2020    Subject =~ /.*Entspannt 60 Minuten nicht kommen.*/im
score           HEADER_SUBJECT_CHECKS_NR2020    20
tflags          HEADER_SUBJECT_CHECKS_NR2020    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2019    Subject =~ /.*Never be small and tiny again.*/im
score           HEADER_SUBJECT_CHECKS_NR2019    20
tflags          HEADER_SUBJECT_CHECKS_NR2016    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2018    Subject =~ /.*Haben Sie wieder Spass am Leben.*/im
score           HEADER_SUBJECT_CHECKS_NR2018    20
tflags          HEADER_SUBJECT_CHECKS_NR2018    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2017    Subject =~ /.*D ildo.*/im
score           HEADER_SUBJECT_CHECKS_NR2017    20
tflags          HEADER_SUBJECT_CHECKS_NR2017    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2016    Subject =~ /.*chat with you.*/im
score           HEADER_SUBJECT_CHECKS_NR2016    20
tflags          HEADER_SUBJECT_CHECKS_NR2016    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2015    Subject =~ /.*zu frueh kommen.*/im
score           HEADER_SUBJECT_CHECKS_NR2015    20
tflags          HEADER_SUBJECT_CHECKS_NR2015    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2014    Subject =~ /.*aufgeschlossene Kontakte.*/im
score           HEADER_SUBJECT_CHECKS_NR2014    20
tflags          HEADER_SUBJECT_CHECKS_NR2014    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2013    Subject =~ /.*Viagra.*/im
score           HEADER_SUBJECT_CHECKS_NR2013    20
tflags          HEADER_SUBJECT_CHECKS_NR2013    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2012    Subject =~ /.*gefic-kt.*/im
score           HEADER_SUBJECT_CHECKS_NR2012    20
tflags          HEADER_SUBJECT_CHECKS_NR2012    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2011    Subject =~ /.*Frau sucht aufgeschlossenen Mann.*/im
score           HEADER_SUBJECT_CHECKS_NR2011    20
tflags          HEADER_SUBJECT_CHECKS_NR2011    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2010    Subject =~ /.*Nach 10 Minuten kommen.*/im
score           HEADER_SUBJECT_CHECKS_NR2010    20
tflags          HEADER_SUBJECT_CHECKS_NR2010    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2009    Subject =~ /.*Mann lebt nur einmal.*/im
score           HEADER_SUBJECT_CHECKS_NR2009    20
tflags          HEADER_SUBJECT_CHECKS_NR2009    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2008    Subject =~ /.*You have received an eCard.*/im
score           HEADER_SUBJECT_CHECKS_NR2008    20
tflags          HEADER_SUBJECT_CHECKS_NR2008    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2007    Subject =~ /.*D.i.l.d.o.*/im
score           HEADER_SUBJECT_CHECKS_NR2007    20
tflags          HEADER_SUBJECT_CHECKS_NR2007    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2006    Subject =~ /.*naturgeil.*/im
score           HEADER_SUBJECT_CHECKS_NR2006    20
tflags          HEADER_SUBJECT_CHECKS_NR2006    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2005    Subject =~ /.*So werden sie von jeder Frau vergoettert!.*/im
score           HEADER_SUBJECT_CHECKS_NR2005    20
tflags          HEADER_SUBJECT_CHECKS_NR2005    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2004    Subject =~ /.*Advocacy.Notary Notice.*/im
score           HEADER_SUBJECT_CHECKS_NR2004    20
tflags          HEADER_SUBJECT_CHECKS_NR2004    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2003    Subject =~ /.*Webcam Luder.*/im
score           HEADER_SUBJECT_CHECKS_NR2003    20
tflags          HEADER_SUBJECT_CHECKS_NR2003    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2002    Subject =~ /.*Potenzprobleme.*/im
score           HEADER_SUBJECT_CHECKS_NR2002    20
tflags          HEADER_SUBJECT_CHECKS_NR2002    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2001    Subject =~ /.*RedBull fur Ihr bestes Stueck.*/im
score           HEADER_SUBJECT_CHECKS_NR2001    20
tflags          HEADER_SUBJECT_CHECKS_NR2001    noautolearn

header          HEADER_SUBJECT_CHECKS_NR2000    Subject =~ /.*geile Zuckerschnute.*/im
score           HEADER_SUBJECT_CHECKS_NR2000    20  
tflags          HEADER_SUBJECT_CHECKS_NR2000    noautolearn

Eine aktuelle Version, der Header-Checks kann man sich bei Bedarf auch hier herunterladen.

Abschließend starten wir unseren AMaViS-Dämon einmal durch:

 # service amavisd restart

Test

Nun schicken wir eine Testmessage an einen unserer User:

$ telnet mx1.nausch.org 25
Trying 88.217.187.21...
Connected to mx1.nausch.org (88.217.187.21).
Escape character is '^]'.
220 mx1.nausch.org ESMTP Postfix
HELO spamschleuder.com
250 mx1.nausch.org
MAIL FROM: <django@mnet-mail.de>
250 2.1.0 Ok
RCPT TO: <michael@nausch.org>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
From: <django@mnet-mail.de>
To: <michael@nausch.org>
Subject: Du kleines WEBCam Luder!

test
.
554 5.7.0 Reject, id=24409-03 - SPAM
quit
221 2.0.0 Bye
Connection closed by foreign host.

Die Testmessage wird natürlich nicht angenommen und direkt und nur einmal rejected.

 554 5.7.0 Reject, id=24409-03 - SPAM

Im Maillog können wir dann den genauen Ablehnungsgrund, an Hand des übermitteltet AMaViS-Codes 24409-03 ermitteln. (Voraussetzung ist hierzu das der Loglevel in der /etc/amavisd.conf mindestens auf dem Wert 2 steht!):

Jul 14 21:57:52 nss postfix/smtpd[27787]: connect from office.nausch.org[192.168.10.20]
Jul 14 21:58:03 nss postfix/smtpd[27787]: NOQUEUE: client=office.nausch.org[192.168.10.20]
Jul 14 21:58:06 nss amavis[24409]: (24409-03) ESMTP::10024 /var/amavis/tmp/amavis-20090714T215454-24409: <django@mnet-mail.de> -> <michael@nausch.org> Received: from mx1.nausch.org ([127.0.0.1]) by localhost (amavis.nausch.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP for <michael@nausch.org>; Tue, 14 Jul 2009 21:58:03 +0200 (CEST)
Jul 14 21:58:56 nss amavis[24409]: (24409-03) Checking: fT1PyS4yVPfT MYNETS [192.168.10.20] <django@mnet-mail.de> -> <michael@nausch.org>
Jul 14 21:58:56 nss amavis[24409]: (24409-03) p001 1 Content-Type: text/plain, size: 5 B, name: 
Jul 14 21:58:56 nss amavis[24409]: (24409-03) check_header: 7, Missing required header field: "Date"
Jul 14 21:58:56 nss amavis[24409]: (24409-03) SPAM, <django@mnet-mail.de> -> <michael@nausch.org>, Yes, score=20.654 tag=2 tag2=6.31 kill=6.31 tests=[ALL_TRUSTED=-1.44, AWL
=2.092, HEADER_SUBJECT_CHECKS_NR2003=20, MISSING_DATE=0.001, MISSING_MID=0.001] autolearn=no
Jul 14 21:58:56 nss amavis[24409]: (24409-03) Blocked SPAM, MYNETS LOCAL [192.168.10.20] [192.168.10.20] <django@mnet-mail.de> -> <michael@nausch.org>, mail_id: fT1PyS4yVPf
T, Hits: 20.654, size: 275, 52435 ms
Jul 14 21:58:56 nss amavis[24409]: (24409-03) TIMING [total 52442 ms] - SMTP greeting: 2 (0%)0, SMTP EHLO: 1 (0%)0, SMTP pre-MAIL: 0 (0%)0, SMTP pre-DATA-flush: 3070 (6%)6,
 SMTP DATA: 49167 (94%)100, check_init: 1 (0%)100, digest_hdr: 1 (0%)100, digest_body_dkim: 0 (0%)100, gen_mail_id: 2 (0%)100, mime_decode: 11 (0%)100, get-file-type1: 23 (
0%)100, decompose_part: 1 (0%)100, parts_decode: 0 (0%)100, check_header: 3 (0%)100, AV-scan-1: 8 (0%)100, spam-wb-list: 3 (0%)100, SA parse: 4 (0%)100, SA check: 97 (0%)10
0, update_cache: 14 (0%)100, decide_mail_destiny: 3 (0%)100, prepare-dsn: 5 (0%)100, main_log_entry: 19 (0%)100, update_snmp: 4 (0%)100, SMTP pre-response: 1 (0%)100, SMTP 
response: 0 (0%)100, unlink-2-files: 0 (0%)100, rundown: 1 (0%)100
Jul 14 21:58:59 nss postfix/smtpd[27787]: disconnect from office.nausch.org[192.168.10.20]  

Die Regel HEADER_SUBJECT_CHECKS_NR2003 hat also zugeschlagen - so könnten wir bei einem etwaigen FalsePositiv die Ursache einer Ablehnung ergründen.

erster Programmstart

 service spamassassin start

automatisches Starten der Dienste beim Systemstart

Damit nun unser spamassassion-daemon beim Booten automatisch gestartet wird, nehmen wir noch folgende Konfigurationsschritte vor.

chkconfig spamassassin on

Anschließend überprüfen wir noch unsere Änderung:

 chkconfig --list | grep spamassassin
 spamassassin    0:Aus   1:Aus   2:Ein   3:Ein   4:Ein   5:Ein   6:Aus