Spam mit Greylisting bekämpfen
Wer einen Mail-Server auf Open Source-Basis betreibt, kann sehr viel Spam-Aufkommen verhindern, indem Greylisting zum Einsatz kommt.
Greylisting ist ein ganz einfaches Prinzip: Will ein Mail-Server eine Mail anliefern, wird diese erstmal abgewiesen. Gut konfigurierte Mail-Server versuchen die Zustellung einige Zeit später nochmals. Nun wird die Mail auch angenommen und alles geht den gewohnten Gang.
Die meisten Spammer jedoch verschicken ihren Müll nur einmal - und somit kommt der Spam nicht an, da er beim ersten Zustellversuch abgewiesen wird.
Der Einsatz dieser Methode hat das Spam-Aufkommen ziemlich genau halbiert. Greylisting blockt 50% meines Spams, bevor dieser überhaupt das System erreicht. Sehr effizient. (Um den Rest kümmert sich SpamAssassin.)
Das Manko an dieser Methode ist, dass es - je nach Konfiguration des Senders - zu gehörigen Verzögerungen kommen kann. Ich konnte beobachten, dass Mails erst nach 20 Minuten ein zweites Mail gesendet wurden. Das heißt, auch erwünschte Mails verzögern sich bis zu 20 Minuten, anstatt sofort im Posteingang zu landen. Allerdings nur beim ersten Verbindungsaufbau: Ist die Quelle schon als "sicher" eingestuft, geht beim zweiten Mal das Einliefern ohne Verzögerung.
Unter Debian/Ubuntu ist die Installation und Konfiguration sehr einfach, wenn Postfix als MTA zum Einsatz kommt. Dann kann das Programm Postgrey eingesetzt werden, das in den Quellen verfügbar ist. (Postgrey soll auch mit Exim laufen, aber das habe ich nicht getestet.)
Nach dem Installieren mit
Danach muss Postfix noch neu die Konfiguration einlesen mittels
Dieses Beispiel war eine Spam-Mail, die ich kein zweites Mal gesehen hab.
Die Debian/Ubuntu-Standard-Postgrey-Konfiguration sieht eigentlich so gut aus, dass man da nichts machen muss. Falls doch, liegen die Config-Files unter
Greylisting ist ein ganz einfaches Prinzip: Will ein Mail-Server eine Mail anliefern, wird diese erstmal abgewiesen. Gut konfigurierte Mail-Server versuchen die Zustellung einige Zeit später nochmals. Nun wird die Mail auch angenommen und alles geht den gewohnten Gang.
Die meisten Spammer jedoch verschicken ihren Müll nur einmal - und somit kommt der Spam nicht an, da er beim ersten Zustellversuch abgewiesen wird.
Der Einsatz dieser Methode hat das Spam-Aufkommen ziemlich genau halbiert. Greylisting blockt 50% meines Spams, bevor dieser überhaupt das System erreicht. Sehr effizient. (Um den Rest kümmert sich SpamAssassin.)
Das Manko an dieser Methode ist, dass es - je nach Konfiguration des Senders - zu gehörigen Verzögerungen kommen kann. Ich konnte beobachten, dass Mails erst nach 20 Minuten ein zweites Mail gesendet wurden. Das heißt, auch erwünschte Mails verzögern sich bis zu 20 Minuten, anstatt sofort im Posteingang zu landen. Allerdings nur beim ersten Verbindungsaufbau: Ist die Quelle schon als "sicher" eingestuft, geht beim zweiten Mal das Einliefern ohne Verzögerung.
Unter Debian/Ubuntu ist die Installation und Konfiguration sehr einfach, wenn Postfix als MTA zum Einsatz kommt. Dann kann das Programm Postgrey eingesetzt werden, das in den Quellen verfügbar ist. (Postgrey soll auch mit Exim laufen, aber das habe ich nicht getestet.)
Nach dem Installieren mit
sudo aptitude install postgrey muss Postfix darüber unterrichtet werden, Postgrey einzubinden. Dazu fügen wir in der Datei /etc/postfix/main.cf die Zeile check_policy_service inet:127.0.0.1:60000 ein im Abschnitt smtpd_recipient_restrictions. Das ganze sieht bei mir so aus:smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
reject_non_fqdn_recipient
reject_unknown_recipient_domain
check_policy_service inet:127.0.0.1:60000
permit
Danach muss Postfix noch neu die Konfiguration einlesen mittels
sudo /etc/init.d/postfix reload. Wenn alles klappt, sieht man nun Dinge wie folgende Zeile in den log-Files:Oct 24 04:40:01 bheil postfix/smtpd[8878]: NOQUEUE: reject: RCPT from 227.52.218.87.dynamic.jazztel.es[87.218.52.227]: 450 4.2.0 benjamin.heil@bheil.net: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/bheil.net.html; from=imetak1959@BIGSKYLAWYERS.COM to=benjamin.heil@bheil.net proto=ESMTP helo=227.52.218.87.dynamic.jazztel.es
Dieses Beispiel war eine Spam-Mail, die ich kein zweites Mal gesehen hab.
Die Debian/Ubuntu-Standard-Postgrey-Konfiguration sieht eigentlich so gut aus, dass man da nichts machen muss. Falls doch, liegen die Config-Files unter
/etc/postgrey bzw. /etc/default/postgrey.