Dies ist die archivierte Version des Blogs vom 05.01.2017. Aktuelle Beiträge findest du unter thomas-leister.de
 

Das Spamhaus Projekt unterhält eine Blacklist mit IPs von Servern, die aktiv für den Versand von Spam E-Mails missbraucht werden. Diese Liste kann in den eigenen Postfix Server integriert werden. Auf diese Weise können E-Mail von den betreffenden Servern sofort geblockt werden und eine Zustellung findet gar nicht erst statt.

In der Postfix Konfigurationsdatei „main.cf“ wird dazu die Einstellung „smtpd_recipient_restrictions“ bzw „smtpd_relay_restrictions (Ab Postfix 2.10) wie folgt gesetzt:

##### allow mail sending if Client is authenticated or in own network (PHP scripts, ...) , block spam servers ######

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_rbl_client zen.spamhaus.org

Nach einem

service postfix reload

ist die Server-Blacklist aktiv. Um die Funktion der Blacklist / „Blocklist“ zu testen, wird eine E-Mail (über den eigenen Mailserver) an die Adresse nelson-sbl-test@crynwr.com geschickt. Der Inhalt der Mail ist egal. Ein paar Sekunden später trifft eine Antwort mit dem Testergebnis ein:

Spamhaus Testergebnis

Die unterste Zeile im Protokoll zeigt, dass ein Verbindungsaufbau zu meinem Mailserver gescheitert ist, weil der Spamserver durch die Spamhaus Blacklist geblockt wurde. Der Blocker funktioniert also.

Update am 07.06.2014:
Mir wurde mitgeteilt, dass Google DNS die Adressen von Spamhaus nicht auflöst. Falls der Spamfilter nicht greift und ihr G DNS nutzt, liegt dort der Fehler ;)

Update am 24.02.2016:
Das Problem mit Google DNS kann umgangen werden, indem einfach ein eigener kleiner DNS Resolver statt des Google DNS genutzt wird.


Post published on 30. März 2014 | Last updated on 4. Dezember 2016
Tags:             

Diesen Blog unterstützen

Wenn Dir der Beitrag gefallen hat, freue ich mich über einen kleinen Obolus :-) Bitcoin QR Code

PayPal-Seite: https://www.paypal.me/ThomasLeister
Meine Bitcoin-Adresse: 15z8 QkNi dHsx q9WW d8nx W9XU hsdf Qe5B 4s

Siehe auch: Unterstützung

Informationen zum Autor

Thomas Leister

Geb. 1995, Kurzhaar-Metaller, Geek und Blogger. Nutzt seit Anfang 2013 ausschließlich Linux auf Desktop und Servern. Student der Automobilinformatik an der Hochschule für angewandte Wissenschaften in Landshut.

13 thoughts on “Postfix: Annahme von SPAM E-Mails mit der Spamhaus Blacklist blockieren

  • Hi Thomas,

    ich kann mich den anderen Lesern zu Deinem Mailserver How2 nur anschließen, alles ist sehr transparent gestaltet! Klasse!

    Seit dem Hinzufügen der Blacklist Einstellungen:

    ##### allow mail sending if Client is authenticated or in own network (PHP scripts, …) , block spam servers ######
    smtpd_relay_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination,
    reject_rbl_client zen.spamhaus.org

    erscheint nach dem Neustart:

    * Reloading Postfix configuration…

    folgenden Fehler:
    postfix: fatal: /etc/postfix/main.cf, line 41: missing ‚=‘ after attribute name: „permit_mynetworks,“

    Hast Du einen Tipp, warum bei meiner Konfig das Gleichheitszeichen nach dem permit_mynetworks verlangt wird?

    Ich habe es von Dir so übernommen:

    smtpd_relay_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination,
    reject_rbl_client zen.spamhaus.org

    Nun stelle ich eben fest, dass beim Verändern der Darstellung auf:

    smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,reject_rbl_client zen.spamhaus.org

    folgender Fehler nach dem Reload erscheint:

    postfix/postfix-script: fatal: the Postfix mail system is not running

    Ändere ich auf Deine Syntax Vorgabe zurück, erhalte ich den Fehler mit dem ‚ = ‚.

    Würdest Du mir bitte aus Deiner main.cf die Stelle mit smtpd_relay_restrictions 1 zu 1 heraus kopieren und
    hier erneut senden? Ich habe es mit und ohne Leerzeichen nach den Kommata probiert. Der Fehler bleibt gleich.

    Vielen Dank im Voraus und
    viele Grüße aus München,
    non

    • Nachtrag:
      Manchmal muss man nur einmal etwas anderes machen, als in der Konsole oder im Konfig-Editor zu verweilen. ;-)

      Nach einem Neustart mit:

      service postfix start
      * Starting Postfix Mail Transport Agent postfix [ OK ]

      und einem:

      service postfix reload
      * Reloading Postfix configuration… [ OK ]

      funktioniert es mit:

      smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_rbl_client zen.spamhaus.org

      in der main.cf und meine Linuxwelt ist wieder in Ordnung!

      Es war einfach…. zu einfach! ;-)

      Viele Grüße,
      non

  • Herzlichen Dank für die Anleitung!

    Ich bekomme den Fehler:

    postfix: warning: /etc/postfix/main.cf, line 42: overriding earlier entry: smtpd_relay_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
    /usr/sbin/postconf: warning: /etc/postfix/main.cf, line 42: overriding earlier entry: smtpd_relay_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
    postsuper: warning: /etc/postfix/main.cf, line 42: overriding earlier entry: smtpd_relay_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination

    Eine Idee was da schief läuft?

    Viele Grüße

  • Hi und Danke für deine schnelle Antwort. Ich nach deiner Anleitung:

    https://legacy.thomas-leister.de/internet/mailserver-ubuntu-server-dovecot-postfix-mysql/

    vorgegangen und da wurde es unter „LMTP aktivieren“ eingestellt.

    Muss ich es jetzt auch dort eintragen ?

    Viele Grüße
    Frank

  • Danke und sorry…war doch doppelt :-(

    Einfach schon zu spät…

    Viele Grüße

    PS. Deine Seite hätte mal wirklich einen „Donate-Button“ verdient!

  • Deine Tutorials sind inklusive der englischsprachigen die hilfreichsten die ich nach langer Suche finden konnte. Ich hatte zwar Anfangs einige Schwierigkeiten mit unverständlichen bis unvorstellbaren Fehlermeldungen, aber nach ein paar mal probieren hat alles perfekt geklappt. Ein so komplettes und in sich stimmiges Tutorial hat wirklich Respekt verdient!

    Vielen Dank und Grüße aus Italien!

    Michael

  • Hi,
    Dein Update vom 07.06.2914, dass Google DNS die Adressen von Spamhaus nicht auflöst hat gerade meinen Tag gerettet.
    Ich suche wie wild warum die Sperrlisten nicht mehr arbeiten, die Testemails kommen hier an und ich wußte keinen Rat, doch siehe da, der Tipp greift auch für Nicht Linux Umgebungen!

    Danke!

    ;-))

  • Hallo Thomas,

    ein weiterer Tipp den ich in meine Postfix-Config übernehmen konnte. TOP!
    Thomas Leister 4 Präsident ;-)

    Ach, und viel Spass beim lesen ;-)

    Ein Tipp vielleicht noch zusätzlich an die anderen Postfix-Anfänger (wie ich auch einer bin).
    Ich lasse mir in einer Linux-Umgebung nun mit grep noch alle entsprechenden Logfile-Einträge ausgeben, um zu sehen, das auch wirklich nur korrekte Spamschleudern rejected werden. Bei restriktiven Einstellungen macht es sicher Sinn, am Anfang ein Auge auf das Ergebnis zu werfen:

    z.B.
    grep –color „blocked using zen.spamhaus.org“ /var/log/mail.log

    Kann man auch als Alias in die .bashrc eintragen und kann sich so ein Shortcut erstellen (auch mit anderen Einträgen, nach denen man schauen möchte):

    alias meineshortcutbezeichnung =’grep –color „blocked using zen.spamhaus.org“ /var/log/mail.log‘

    An der Konsole gebt ihr dann als nur das Alias (z.B. short1) ein und bekommt eine schön eingefärbte Auflistung aller mit Spamhaus geblockten Inhalte.

    LG
    Micha

  • Der Hinweis mit dem Google DNS hat mir den Tag gerettet. Vielen Dank!

  • Hallo Thomas,

    ‚Update am 07.06.2914‘ ?? :D

    From the future
    Henrik

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.