ASSP mit eingebettetem ClamAV, integriert in Postfix mit virtuellen Benutzern und Domains

Version 1.0
Author: Oliver Meyer <o [dot] meyer [at] projektfarm [dot] de>


Diese Anleitung veranschaulicht, wie man ASSP (Anti-Spam SMTP Proxy) mit eingebettetem ClamAV in einen Mail Server, basierend auf Postfix mit virtuellen Benutzern und Domains, integriert. Das heißt Benutzer und Domains, die sich in einer MySQL Datenbank befinden. Dies beruht auf Teilen der Anleitung Users And Domains With Postfix, Courier And MySQL (Debian Etch) von Falko Timme.

Der daraus resultierende Postfix Server ist funktionsmäßig fast identisch mit dem, in der oben genannten Anleitung, er benötigt allerdings kein Amavisd. ASSP bietet ein angenehmes Web Interface für Setup/Konfiguration.

Diese Anleitung ist ein praktischer Leitfaden; theoretisches Hintergrundwissen wird nicht abgedeckt. Dies findest Du in zahlreichen anderen Dokumenten im Netz.

Dieses Anleitung ist ohne jegliche Gewähr! Ich möchte darauf hinweisen, dass dies nicht der einzige Weg ist, ein solches System einzurichten. Es gibt viele Möglichkeiten dieses Ziel zu erreichen - dies ist der Weg, den ich gewählt habe. Ich übernehme keine Garantie, dass dies auch bei Dir funktioniert!

1 Vorbereitung

Bitte folge den Anweisungen der Anleitung Users And Domains With Postfix, Courier And MySQL (Debian Etch) von Falko Timme von Schritt 1 - 8 + 13 bevor Du weiter machst.

2 Benötigte Pakete

Zuerst müssen wir ein paar Pakete installieren, die von ASSP benötigt werden:

apt-get install libcompress-zlib-perl libdigest-md5-perl libemail-valid-perl libfile-readbackwards-perl libmail-spf-query-perl libmail-srs-perl libnet-dns-perl libsys-syslog-perl libnet-ldap-perl libtime-hires-perl unzip


3 ASSP beziehen

Lade ASSP runter und entpacke es:

cd /usr/src/
wget http://mesh.dl.sourceforge.net/sourceforge/assp/ASSP_1.3.3.1-Install.zip
unzip ASSP_1.3.3.1-Install.zip

4 ASSP installieren

Bereite einige Verzeichnisse vor:

mkdir -p /usr/share/assp/spam
mkdir /usr/share/assp/notspam
mkdir /usr/share/assp/errors
mkdir /usr/share/assp/errors/spam
mkdir /usr/share/assp/errors/notspam

Kopiere ASSP an den richtigen Zielort:

cd /usr/src/ASSP_1.3.3.1-Install/
cp -R ASSP/* /usr/share/assp/

5 Ein Skript erstellen

Für die Anwendung von ASSP erstellen wir folgendes Skript (Dank an Ivo Schaap) und die Runlevel-Einträge für den Autostart:

vi /etc/init.d/assp


#!/bin/sh -e
# Start or stop ASSP # # Ivo Schaap <ivo@lineau.nl> PATH=/bin:/usr/bin:/sbin:/usr/sbin case "$1" in start) echo -n "Starting the Anti-Spam SMTP Proxy" cd /usr/share/assp perl assp.pl ;; stop) echo -n "Stopping the Anti-Spam SMTP Proxy" kill -9 `ps ax | grep "perl assp.pl" | grep -v grep | awk '{ print $1 }'` ;; restart) $0 stop || true $0 start ;; *) echo "Usage: /etc/init.d/assp {start|stop|restart}" exit 1 ;; esac exit 0
Ändere die Berechtigung:

chmod 755 /etc/init.d/assp

Erstelle die Runlevel-Einträge:

update-rc.d assp defaults

Starte ASSP erstmalig:

/etc/init.d/assp start


6 ASSP Basis-Konfiguration

Jetzt wird es Zeit für die anfängliche Konfiguration. Öffne http://%host%:55555 in einem Browser Deiner Wahl. Melde Dich mit einem Namen und dem Passwort nospam4me an.


Öffne nun die Registerkarte Server Setup. Markiere das Ankreuzfeld Run ASSP as a daemon und gib als Nächstes nobody für die UID und nogroup für die GID ein. Übernimm die Änderungen mit dem entsprechendem Feld rechts unten.


Aufgrund der Änderungen der UID und GID müssen wir die Berechtigungen für das ASSP-Verzeichnis ändern:

chown -R nobody:nogroup /usr/share/assp/

Öffne danach die Registerkarte Relaying und füge Deine Accept All Mail und Local Domains hinzu. Übernimm die Änderungen.


Öffne nun die Registerkarte Test Modes und markiere alle Ankreuzfelder. Nachdem ASSP 500 - 1000 Mails gelernt hat, wird die Spam-Erkennung wirksam und Du kannst die Markierungen dieser Ankreuzfelder entfernen.

7 Installation von ClamAV

Wir installieren ClamAV aus der Debian Paketdatenbank:

apt-get install clamav clamav-daemon


8 Installation des ClamAV Perl Moduls

Die Installation des ClamAV Perl Moduls ist etwas knifflig, da dieses Modul eine alte Version ist. Der folgende Perl-Test wird mit vielen Fehlern fehlschlagen, ist aber für den Download des Modules notwendig.

Merke: Wenn Du gefragt wirst, ob Du Perl manuell konfigurieren möchtest, wähle no ? Die Konfiguration wird automatisch durchgeführt.

perl -MCPAN -e shell
test File::Scan::ClamAV
look File::Scan::ClamAV
vi clamav.conf

Ändere:

LocalSocket /root/.cpan/build/File-Scan-ClamAV-1.8/clamsock
Foreground
MaxThreads 1
ScanArchive
ArchiveMaxFileSize 1M
ArchiveMaxRecursion 1
ArchiveMaxFiles 2
zu:
LocalSocket /root/.cpan/build/File-Scan-ClamAV-1.8/clamsock
Foreground true
MaxThreads 1
ScanArchive true
ArchiveMaxFileSize 1M
ArchiveMaxRecursion 1
ArchiveMaxFiles 2
Installiere danach das Modul:

make install


9 ClamAV in ASSP integrieren

Nach der Installation von ClamAV und dem dazugehörigen Perl Modul, ist ClamAV für ASSP zugänglich. Wechsle zurück zum ASSP Web-Interface und öffne die Registerkarte Attachments & Viruses. Füge /var/run/clamav/clamd.ctl Port or file socket for ClamAV hinzu und übernimm die Änderungen.

10 ASSP in Postfix integrieren

Der einfachste Teil...

vi /etc/postfix/master.cf

Ändere:
smtp	inet	n	-	-	-	-	smtpd
zu:
125	inet	n	-	-	-	-	smtpd
Starte Postfix neu:

/etc/init.d/postfix restart


11 Links

0 Kommentar(e)

Zum Posten von Kommentaren bitte