Unter Debian/wheezy ist postgrey in einer Minute eingerichtet.
apt-get install postgrey
Die /etc/postfix/main.cf um „check_policy_service inet:127.0.0.1:10023“ ergänzen, sieht bei mir dann so aus:
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination check_policy_service unix:private/policy-spf check_policy_service inet:127.0.0.1:10023
Bei Debian Wheezy läuft postgrey default auf 10023.
Postfix neu starten
/etc/init.d/postfix restart
Prüfen ob postgrey läuft mit
$ps aux|grep postgr postgrey 32421 0.0 0.1 67932 14804 ? Ss 21:51 0:00 /usr/sbin/postgrey --pidfile=/var/run/postgrey.pid --daemonize --inet=10023
Will man die Verzögerungszeit von default 300 Sekunden anpassen, kann man dies in der /etc/default/postgrey tun z.B.
POSTGREY_OPTS="--inet=10023 --delay=120"
Schaut man in /var/log/mail.info nach postgrey, sollte man bald Einträge in der Art
...postgrey[32421]: action=greylist, reason=new...
finden.
Will man wissen, wer alles so erfolgreich abgelehnt wurde, kann man z.B. einfach mal
cat /var/log/mail.info|postgreyreport
oder etwas übersichtlicher
cat /var/log/mail.log | postgreyreport --nosingle_line --check_sender=mx,a --show_tries --separate_by_subnet=":===============================================================================================\n"
ausführen.
Es gibt noch die Möglichkeit Ausnahmeregeln zu definieren (whitelist_clients, whitelist_recipients).
Links:
http://de.wikipedia.org/wiki/Greylisting
http://www.debuntu.org/postfix-and-postgrey-a-proactive-approach-to-spam-filtering-page-2/
Postgrey „unter“ Exim installieren : apt-get install postgrey