Postfix-Cyrus-Procmail-SpamAssassin Howto

von David Lais

+ Installation - SpamAssassin und Tools

Vorbereitungen

Die Installation von SpamAssassin ist etwas umfangreich. Das bedeutet für uns, dass wir, bevor wir SpamAssassin benutzen können, ein paar perl module installieren müssen. Dies erledigen wir mit cpan oder dem kleinen Perl script, welches ich geschrieben habe. Ihr könnt es hier --> finden

Als erstes erstellen wir einen Benutzer für den Mailfilter:

useradd -d /home/filter -s /bin/false -g mail filter

Jetzt kommen Perl Module dran:

perl -MCPAN -eshell

install Bundle::LWP
install ExtUtils::MakeMaker
install Pod::Usage
install HTML::Parser
install HTML::Tagset
install DB_File
install Net::DNS
install Net::Ping
install Time::HiRes
install Test::More
install Digest::SHA1
install Digest::Nilsimsa
install Digest::MD5
install Digest::HMAC
install URI
install URI::Escape
install Getopt::Long

Damit wären vorerst alle Abhängigkeiten für SpamAssassin erfüllt

Distributed Checksum Clearinghouse

Jetzt kommen wir zur Installation von DCC. DCC wird benutzt, um Prüfsummen (Checksum) von Mails zu erstellen und so bekannte SpamMails schnell filtern zu können.

Source herrunterladen und entpacken:

wget http://www.rhyolite.com/anti-spam/dcc/source/dcc.tar.Z
tar xfz dcc.tar.Z

Kompilieren:

cd dcc-dccproc
./configure --homedir=/usr/local/dcc

make
make install

Mit dem Suffix "--homedir" legen wir das Installationsverzeichnis von DCC fest.

Jetzt brauchen wir eine gültige map

cdcc new map
cdcc info

DCC kann nun seine Arbeit aufnehmen.

Razor

Als nächstes Installieren wir Razor

Source herrunterladen und entpacken:

wget http://mesh.dl.sourceforge.net/sourceforge/\
razor/razor-agents-2.81.tar.bz2
tar xjfz razor-agents-2.81.tar.bz2

Die Installation ist wie immer sehr leicht:

cd razor-agents
perl Makefile.PL
make
make test
make install

razor-client
razor-admin -create
razor-admin -register -user=filter -pass=Password

Das Passwort kannst du dir ausdenken. Wir brauchen es nicht mehr, da der Benutzer keine Login Shell hat. Damit ist auch Razor betriebsbereit.

Pyzor

Als nächstes is Pyzor dran. Pyzor war früher die Umsetzung von razor in Python. Doch mittlerweile kann es einiges mehr, allerdings benötigt es Python. Wer die objektorientierte Scriptsprache lieber nicht auf einem Server hat, kann Pyzor auch einfach weglassen und diesen Teil überspringen.

Wer Python bereits installiert hat, kann diesen Teil überspringen.

Source von Python herrunterladen und entpacken:

wget http://www.python.org/ftp/python/2.4.3/Python-2.4.3.tgz
tar xfz Python-2.4.3.tgz

Installation von Python:

cd python-2.4.3
./configure
make
make install

Damit wäre Python installiert und die Voraussetzungen für Pyzor geschaffen.

Source von Pyzor herrunterladen und entpacken:

wget http://mesh.dl.sourceforge.net/sourceforge/pyzor/pyzor-0.4.0.tar.bz2
tar xjfz pyzor-0.4.0.tar.bz2

Pyzor installiert sich etwas anders als die anderen Pakete:

cd pyzor

python setup.py build
python setup.py install

chmod -R a+rX /usr/share/doc/pyzor \
/usr/lib/python2.2/site-packages/pyzor \
/usr/bin/pyzor \
/usr/bin/pyzord

Damit hätten wir auch Pyzor installiert.

SpamAssassin

Endlich haben wir es geschafft. Wir kommen nun zur SpamAssassin Installation. SpamAssassin ist sehr leicht und schnell zu installieren. Die Herausforderung liegt eher in der Konfiguration.

Source herrunterladen und entpacken:

wget http://mirror.serversupportforum.de/apache/\
spamassassin/source/Mail-SpamAssassin-3.1.1.tar.gz
tar xfz Mail-SpamAssassin-3.1.1.tar.gz

Die Installation:

cd Mail-SpamAssassin-3.1.1
perl Makefile.PL PREFIX=/home/filter SYSCONFDIR=/etc/spamassassin/ $CFLAGS=DSPAMC_SSL

make
make install

- "PREFIX", gibt unser Installationsverzeichnis an.
- "SYSCONFDIR", gibt unser Verzeichnis für die Konfigurationsdaten an.
- "$CFLAGS=DSPAMC_SSL", macht SpamAssassin SSL fähig.

Damit wir später SpamAssassin komfortabel starten / stoppen / restarten können, legen wir noch das Script /etc/init.d/spamassassin an:

#!/bin/sh
case $1 in
start)
/home/filter/bin/spamd -d -u filter
;;
stop)
pkill spamd
;;
restart)
pkill spamd
/home/filter/bin/spamd -d -u filter
;;
esac

Das Script ausführbar machen:

chmod +x /etc/init.d/spamassassin

Jetzt müssen wir nur noch SpamAssassin im System verfügbar machen. Das erledigen wir mit einigen Verknüpfungen:

ln -s /home/filter/bin/spamassassin /usr/bin
ln -s /home/filter/bin/spamd /usr/bin
ln -s /home/filter/bin/spamc /usr/bin
ln -s /etc/init.d/spamassassin /etc/init.d/spamd

RulesDuJour

Da es immer wieder neue Arten von Spammails gibt, sollte man seinen SpamAssassin regelmäßig pflegen. Gerade am Anfang kennt man sich noch nicht so gut aus. Daher ist es sinnvoll, sich von anderen helfen zu lassen. Es gibt die sogenannten RulesDuJour, eine Sammlung von SpamAssassin Scripten. Sie werden von fleißigen Spambekämpfern regelmäßig aktualisiert und sind somit sehr sinnvoll einzusetzen. Einer der schönen Vorteile ist, dass sich die Scripte durch ein Shell-script selbst aktualisieren.

Source herrunterladen und entpacken:

wget http://sandgnat.com/rdj/rules_du_jour -P /etc/mail/spamassassin/
chmod +x /etc/mail/spamassassin/rules_du_jour
mkdir /etc/rulesdujour/
touch /etc/rulesdujour/config

RulesDuJour sind fertig installiert.

Das war schon alles. SpamAssassin ist erfolgreich installiert.


« Zurük zu Procmail | Weiter mit ClamAV »