Postfix-Cyrus-Procmail-SpamAssassin Howto

von David Lais

+ Installation - Greylisting

Um unseren Mailserver mit Greylisting auszustatten, nehmen wir von David Schweikert seinen Postfix Greylisting Policy Server kurz Postgrey.

Wie immer laden wir als erstes das Paket herrunter und entpacken es:

wget http://isg.ee.ethz.ch/tools/postgrey/pub/postgrey-1.24.tar.gz
tar xvfz postgrey-1.24.tar.gz

Als nächstes müssen wir noch ein paar Paketabhängigkeiten erfüllen:

perl -MCPAN -eshell
install Net::Server
install IO::Multiplex
install BerkeleyDB

Jetzt kopieren wir noch die benötigten Dateien in die richtigen Verzeichnisse:

cp postgrey-1.24/postgrey /usr/sbin/
cp postgrey-1.24/postgrey_whitelist_clients /etc/postfix/
cp postgrey-1.24/postgrey_whitelist_recipients /etc/postfix/

Da wir Postgrey als Daemon laufen lassen wollen, benötigen wir noch ein start/stop script wie bei Cyrus.

#!/bin/bash
#
# postgrey startup script

case "$1" in
start)
# Startet Postgrey
/usr/sbin/postgrey --inet=127.0.0.1:10024 --daemonize \
--pidfile=/var/run/postgrey/postgrey.pid \
--whitelist-clients=/etc/postfix/postgrey_whitelist_clients \
--whitelist-recipients=/etc/postfix/postgrey_whitelist_recipients \
--greylist-action=451 --delay=420 --max-age=40 \
--lookup-by-subnet --auto-whitelist-clients=10 \
--user=filter --group=mail
;;
stop)
# Stoppt Postgrey
killall /usr/sbin/postgrey
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac

Das speichern wir nun unter /etc/init.d/postgrey ab und geben ihm die richtigen Rechte.

chmod u+x,g+x /etc/init.d/postgrey

Damit das Script später auch fehlerfrei startet, sollten wir noch den Benutzerfilter und die Gruppe Mail hinzufügen. Auf manchen Systemen existiert die Gruppe Mail jedoch bereits. Den Benutzer Mail werden wir später auch für unseren SpamAssassin verwenden.

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

Noch ein paar Verzeichnisse anlegen und die richtigen Berechtigungen, dann sind wir fertig

mkdir /var/run/postgrey/
chown -R filter:mail /var/run/postgrey/

Nun fehlt noch das passende Verzeichnis, in dem Postgrey seine Datenbank speichert.

Greylistingdatenbankverzeichnis

mkdir /var/spool/postfix/postgrey
chown mail:filter /var/spool/postfix/postgrey

Fertig!!! Postgrey ist nun bereit.


« Zurük zu Postfix | Weiter mit Procmail »