Postfix/Greylisting

Aus Foxwiki

Greylisting

Greylisting ist eine Form der SPAM-Bekämpfung. Hierbei wird sich zunutze gemacht, dass normale Mailserver einen gescheiterten Zustellversuch später wiederholen, während Spammer sich im Allgemeinen nicht diese Mühe machen. Der Greylisting-Dienst identifiziert dabei jeden Client über eine Kombination aus IP-Adresse, Absenderadresse und Empfängeradresse. Taucht eine derartige Kombination das erste Mal auf, so wird der Zustellversuch mit einer Fehlermeldung bzgl. eines temporären Problems abgelehnt und diese ID in einer Liste eingetragen. Wird die Kombination erneut zugestellt, wird diese dann vom Mailer akzeptiert.

Nachteil dieser Methode ist, dass die jeweils ersten Emails von neuen Kontakten ein wenig verzögert eintreffen. Vorteil gegenüber herkömmlichen, analyse-gestützten Spamerkennungsverfahren ist, dass die Mail gar nicht erst angenommen und unter Aufwendung von Rechenzeit untersucht werden muss, sondern direkt abgelehnt wird. Gerade auf ausgelasteten Servern stellt das einige günstige Möglichkeit dar, einen Großteil des Mülls gar nicht erst aufs System zu lassen.

Installation

$sudo apt-get install postgrey  

Konfiguration

/etc/postfix/main.cf

smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
check_policy_service inet:127.0.0.1:60000 

Nach einem Postfix-Neustart

/etc/init.d/postfix restart 

oder

/etc/init.d/postfix reload 

ist Postgrey als Policy-Server aktiviert. Unter /var/log/mail.log sollten ab sofort Meldungen auftauchen wie z.B.

Jul 24 18:17:45 v212910458 postfix/smtpd[24178]: NOQUEUE: reject: RCPT from unknown[83.234.156.154]: 450 4.7.1 <edwardsm.edwardscv@blubberbla.de>: Recipient address rejected: Greylisted, see http://isg.ee.ethz.ch/tools/postgrey/help/blubberbla.de.html; from=<august26joke@askmen.com> to=<edwardsm.edwardscv@blubberbla.de> proto=ESMTP helo=<home-01590bcaf2>
Jul 24 18:17:46 v212910458 postfix/smtpd[24178]: lost connection after DATA (0 bytes) from unknown[83.234.156.154]

TMP

Dieser Artikel oder Abschnitt benötigt Sprach-, Wiki-Syntax- oder Stilverbesserungen.

Grund: Siehe Help:Style (Diskutieren in Talk:Postfix )

Postgrey kann verwendet werden, um Greylisting für einen Postfix-Mailserver zu aktivieren.

Installation

Installieren Sie das postgrey -Paket.

  • Um es schnell zum Laufen zu bringen, bearbeiten Sie die Postfix-Konfigurationsdatei und fügen Sie diese Zeilen hinzu:
/etc/postfix/main.cf
smtpd_recipient_restrictions =
check_policy_service inet:127.0.0.1:10030

Dann starten/aktivieren Sie die postgreyService.

  • Laden Sie anschließend die postfixService.
  • Jetzt sollte Greylisting aktiviert sein.

Aufbau

Konfiguration erfolgt durch Erweiterung der Einheit postgrey.service.

Weiße Liste

Um eine automatische Whitelist hinzuzufügen (erfolgreiche Zustellungen werden auf die Whitelist gesetzt und müssen nicht mehr warten), fügen Sie die hinzu --auto-whitelist-clients=NOption und ersetzen Num eine angemessen kleine Zahl (oder belassen Sie es auf dem Standardwert von 5).

/etc/systemd/system/postgrey.service.d/override.conf
[Service]
ExecStart=
ExecStart=/usr/bin/postgrey --inet=127.0.0.1:10030 \
       --pidfile=/run/postgrey/postgrey.pid \
       --group=postgrey --user=postgrey \
       --daemonize \
       --greylist-text="Für %%s Sekunden auf der Greylist" \
       --auto-whitelist-clients

Erstellen Sie die Datei, um zusätzlich zu den Standardclients Ihre eigene Liste mit Whitelist-Clients hinzuzufügen /etc/postfix/whitelist_clients.localund geben Sie einen Host oder eine Domäne pro Zeile ein und starten Sie dann neu postgrey.servicedamit die Änderungen wirksam werden.

Fehlerbehebung

Wenn Sie angeben --unix=/path/to/socketund die Socket-Datei nicht erstellt wird, stellen Sie sicher, dass Sie die Standardeinstellung entfernt haben --inet=127.0.0.1:10030aus der Servicedatei.

Eine vollständige Dokumentation möglicher Optionen finden Sie unter perldoc postgrey.