Mail-Ablehnung durch SPF bei Weiterleitungen: Unterschied zwischen den Versionen

Aus all-connect Hilfe-Center
Zur Navigation springen Zur Suche springen
Zeile 14: Zeile 14:
''Anmerkung: Alle Warn- oder Fehlermeldungen haben in der Praxis oft nur einen ähnlichen Wortlaut.''
''Anmerkung: Alle Warn- oder Fehlermeldungen haben in der Praxis oft nur einen ähnlichen Wortlaut.''


====Ursache====
Der Spam-Filter des empfangenden Mailservers für Ihr Weiterleitungsziel lehnt die weitergeleitete (temporär) E-Mail ab. Der Grund liegt an der SPF-Einstellung im DNS des Absenders bzw. der Absender-Adresse (s. https://de.wikipedia.org/wiki/Sender_Policy_Framework).
Dabei passiert folgendes:
*Firma A schickt an Kunden B.
*Kunde B nutzt ein mail-connect Postfach und leitet ankommende Mails an Yahoo weiter.
*Firma A hat einen ''strikten SPF-Record'', der den Versand von E-Mails mit Absender von ''mail@firma-a.de'' nur für die eigenen Mailserver der Firma A erlaubt.
*Wenn jetzt Firma A eine Mail an den Kunden B schickt, leiten die Mailserver von ''mail-connect.net'' diese E-Mail an Yahoo weiter.
*Der Spam-Filter von Yahoo stellt fest, dass ''mail-connect.net'' nicht für Firma A versenden darf und lehnt die Mail ab.
*Firma A oder Kunde B beschweren sich, dass E-Mails abgelehnt werden. O-Ton: ''"Alle anderen Mails kommen an!"''.
====Hintergrund====
Die Funktion zur E-Mail-Weiterleitung ist so implementiert ist, dass die Absenderadresse bei der Weiterleitung nicht geändert wird. Auch nach der Weiterleitung lautet der Absender noch so wie der Original-Absender. Dieses ''Forwarding'' ist ein riesiges Problem für die Durchsetzung von SPF. Unter Mailserver-Experten ist die Technik „Sender Policy Framework“ (SPF) aus diesem Grund seit Jahren umstritten.
Das Problem entsteht also auf der einen Seite durch strikte (und teilweise überzogene) Anti-Spam-Filter und deren Einstellungen. Und auf der anderen Seite durch Benutzer, die zusätzlichen E-Mail-Verkehr generieren, indem jede E-Mail und damit natürlich auch Spams nicht nur einmal, sondern automatisch noch einmal versendet (= weitergeleitet) werden. Beides für sich genommen ist schon kein schöner Zug, weil technisch dynamische Systeme zu extrem oder zu verschwendend eingesetzt werden. Die Folge sind Fehler, die in der Verantwortung des Administrators auftreten können.
In diesem Fall wirken alle "Einstellungen" zusammen und man muss klarstellen, dass es sich dabei um keinen Fehler handelt. Vielmehr wird der Wille des Absenders (striktes SPF) und der Wille des Empfängers (1. Weiterleitung und 2. strikter Spam-Filter am Weiterleitungsziel) umgesetzt.
Die Folge ist, dass die mail-connect Server derartige "Konstellationen" mit der Fehlermeldung ''"unable to relay"'' (diese Fehlermeldung muss an dieser Stelle wörtlich auch so verstanden werden) folgerichtig beenden und die Mail-Weiterleitung insofern nicht mehr funktioniert.


====Ursache====
Bei der blockierten E-Mail handelt es sich um eine automatisch generierte E-Mail von einem E-Mail-Server, welche an fremde, externe Internet-Teilnehmer adressiert ist. Typischerweise werden solche automatisch generierten Nachrichten wegen der Unzustellbarkeit einer E-Mail versendet.


;Beispiel
====Lösungsmöglichkeiten====
*Die Postfächer der Domain ''@BeispielDomain.eu'' werden von Ihrem eigenen Server (z.B. Exchange) bereitgestellt und Sie empfangen Mails über Ihren eigenen MX-Record direkt oder lassen sich eingehende Mails über mail-connect per SMTP an Ihren eigenen Server senden (Funktion ''"An Ihren eigenen SMTP-Server weiterleiten"'').
Es gibt unterschiedliche Ansätze. In jedem Fall muss der o.g. Wille
*Die Absenderin ''Erika.Mustermann@Internet-User.de'' sendet an ''Hans@BeispielDomain.eu'', jedoch gibt es diese Adresse auf Ihrem Server nicht. *Entsprechend generiert Ihr E-Mail-Server eine ''Bounce-Nachricht'' (auch ''DSN - Delivery Status Notification'' genannt) und sendet diesen Status-Report an ''Erika.Mustermann@Internet-User.de'' zurück.
#


====Missbrauch====
Im o.g. Beispiel ist eine eigentlich sinnvolle Funktion beschrieben, die jedoch wie folgt missbraucht werden kann:
Im o.g. Beispiel ist eine eigentlich sinnvolle Funktion beschrieben, die jedoch wie folgt missbraucht werden kann:
*Ein Spammer oder (DoS-)Angreifer fälscht E-Mails und trägt die Absenderin ''Erika.Mustermann@Internet-User.de'' vorsätzlich falsch ein.
*Ein Spammer oder (DoS-)Angreifer fälscht E-Mails und trägt die Absenderin ''Erika.Mustermann@Internet-User.de'' vorsätzlich falsch ein.

Version vom 25. Mai 2019, 01:18 Uhr


Probleme bei E-Mail-Weiterleitungen an E-Mail-Adressen mit externer Domain

Sie haben Ihr mail-connect Postfach so eingestellt, dass Ihre Mails an eine externe E-Mail-Adresse weitergeleitet werden (z.B. an ein E-Mail-Konto bei Google oder Yahoo).

Manche E-Mails erhalten Sie über diese Weiterleitung und manche E-Mail gehen verloren, bzw. der jeweilige Absender erhält in regelmäßigen Abständen E-Mails mit einer der Betreffzeile

Warning: message …xyz… delayed X hours 

In anderen Fällen können die E-Mails gar nicht zugestellt werden und der Absender erhält die E-Mail als unzustellbar zurück. Im Betreff steht dann z.B,

Mail delivery failed: returning message to sender

oder im Text steht die Fehlermeldung:

mx.mail-connect.net [80.254.138.xxx] #SMTP; 550 Unable to relay

Anmerkung: Alle Warn- oder Fehlermeldungen haben in der Praxis oft nur einen ähnlichen Wortlaut.

Ursache

Der Spam-Filter des empfangenden Mailservers für Ihr Weiterleitungsziel lehnt die weitergeleitete (temporär) E-Mail ab. Der Grund liegt an der SPF-Einstellung im DNS des Absenders bzw. der Absender-Adresse (s. https://de.wikipedia.org/wiki/Sender_Policy_Framework).

Dabei passiert folgendes:

  • Firma A schickt an Kunden B.
  • Kunde B nutzt ein mail-connect Postfach und leitet ankommende Mails an Yahoo weiter.
  • Firma A hat einen strikten SPF-Record, der den Versand von E-Mails mit Absender von mail@firma-a.de nur für die eigenen Mailserver der Firma A erlaubt.
  • Wenn jetzt Firma A eine Mail an den Kunden B schickt, leiten die Mailserver von mail-connect.net diese E-Mail an Yahoo weiter.
  • Der Spam-Filter von Yahoo stellt fest, dass mail-connect.net nicht für Firma A versenden darf und lehnt die Mail ab.
  • Firma A oder Kunde B beschweren sich, dass E-Mails abgelehnt werden. O-Ton: "Alle anderen Mails kommen an!".

Hintergrund

Die Funktion zur E-Mail-Weiterleitung ist so implementiert ist, dass die Absenderadresse bei der Weiterleitung nicht geändert wird. Auch nach der Weiterleitung lautet der Absender noch so wie der Original-Absender. Dieses Forwarding ist ein riesiges Problem für die Durchsetzung von SPF. Unter Mailserver-Experten ist die Technik „Sender Policy Framework“ (SPF) aus diesem Grund seit Jahren umstritten.

Das Problem entsteht also auf der einen Seite durch strikte (und teilweise überzogene) Anti-Spam-Filter und deren Einstellungen. Und auf der anderen Seite durch Benutzer, die zusätzlichen E-Mail-Verkehr generieren, indem jede E-Mail und damit natürlich auch Spams nicht nur einmal, sondern automatisch noch einmal versendet (= weitergeleitet) werden. Beides für sich genommen ist schon kein schöner Zug, weil technisch dynamische Systeme zu extrem oder zu verschwendend eingesetzt werden. Die Folge sind Fehler, die in der Verantwortung des Administrators auftreten können.

In diesem Fall wirken alle "Einstellungen" zusammen und man muss klarstellen, dass es sich dabei um keinen Fehler handelt. Vielmehr wird der Wille des Absenders (striktes SPF) und der Wille des Empfängers (1. Weiterleitung und 2. strikter Spam-Filter am Weiterleitungsziel) umgesetzt.

Die Folge ist, dass die mail-connect Server derartige "Konstellationen" mit der Fehlermeldung "unable to relay" (diese Fehlermeldung muss an dieser Stelle wörtlich auch so verstanden werden) folgerichtig beenden und die Mail-Weiterleitung insofern nicht mehr funktioniert.


Lösungsmöglichkeiten

Es gibt unterschiedliche Ansätze. In jedem Fall muss der o.g. Wille

Im o.g. Beispiel ist eine eigentlich sinnvolle Funktion beschrieben, die jedoch wie folgt missbraucht werden kann:

  • Ein Spammer oder (DoS-)Angreifer fälscht E-Mails und trägt die Absenderin Erika.Mustermann@Internet-User.de vorsätzlich falsch ein.
  • Ihr Mailserver sendet nun eine neue Nachricht (oft sogar mit der originalen Nachricht im Anhang) an Erika.Mustermann@Internet-User.de zurück.
  • Auf diese Weise empfängt die unbeteiligte, dritte Person, nämlich Erika.Mustermann@Internet-User.de E-Mail-Spam von Ihrem Server, ohne dass sich Erika.Mustermann@Internet-User.de dagegen wehren könnte.
  • Weil Ihr Mailserver über uns als Postausgang versendet, wird diese Spam-Mail in Folge auch über unsere Server versendet, was unseren mail-connect Dienst erheblich schadet. Für Außenstehende z.B. Google-Mail sähe es so aus, als würden wir Spam versenden.

Diesen Missbrauch nennt man "Backscatter": http://de.wikipedia.org/wiki/Backscatter_(E-Mail)

Aus diesem Grund erlauben unsere Postausgangsmailserver (manchmal auch in Ihrem Mailserver als Smarthost bezeichnet) keine Bounce-Nachrichten (also keine DSNs) an externe/fremde E-Mail-Adressen. Ihre E-Mails werden blockiert.

Abhilfe

Sie müssen die DSN- bzw. Bounce-Nachrichten-Funktion richtig konfigurieren.

Mails an nicht existierende Adressen im SMTP-Protokoll mit 550-Fehler ablehnen

Richten Sie Ihren Mailserver so ein, dass E-Mails an nicht existierende Adressen (im o.g. Beispiel also an Hans@BeispielDomain.eu) nicht angenommen werden. Das SMTP-Protokoll sieht hierfür den SMTP-Status-Code 550 (SMTP Fehler, z.B. "User unknown") vor.

Diesen Status-Code wertet unser mail-connect Server ebenfalls (in Echtzeit!) aus und blockiert dann mit dem selben Status eingehende Mails an nicht existierende Adressen. So wird verhindert, dass später Bounce-Mails (DSNs) generiert werden.

Typischerweise kann diese "Annahme-Sperre" mit der richtigen Einstellung eines Anti-Spam-Filters konfiguriert werden.

DSN Nachrichten nur an interne Benutzer

Richten Sie Ihren Mailserver so ein, dass DSN bzw. Bounce-Nachrichten wie im o.g. Beispiel nur an Ihre eigenen, authentifizierten Benutzer gesendet werden (= an E-Mail-Adressen aus Ihrer eigenen Domain).

An fremde Benutzer ist dann kein Status-Report mehr erforderlich.

Catchall Funktion deaktivieren

Häufig werden E-Mails in sogenannte Sammelpostfächer (Catchall Funktion) empfangen und dann später weiterverarbeitet und durch interne Mail-Dienste verteilt.

Deaktivieren Sie diese Sammel-Funktion und richten Sie stattdessen jede genutzte E-Mail Adresse individuell und explizit ein. Dies verhindert, dass Sie Spam an falsche Adressen empfangen und es macht den E-Mail-Missbrauch des Backscatting unter Ihrer Domain unmöglich.


Backscatter Problem auch umgekehrt

Im obigen Abschnitt wurde das Problem in der Konstellation eingehender Mails an Ihren Mailserver behandelt, bei denen in der Folge ein bei Ihnen automatisch generierter Bounce/DSN ausgehend versendet wird.

Das Problem gibt es aber natürlich auch umgekehrt: Ihre E-Mail-Adresse könnte Ziel eines Backscatter-Missbrauchs sein, wie er nach o.g. Muster auf einem fremden Mailserver stattfindet.

Wie oben schon im Nebensatz angedeutet, können Sie in diesen Fall kaum abwehren. Schließlich besitzt die generierte Bounce-E-Mail ein technisch vollständig gültiges Format und der Absenderserver könnte ein großer Firmen-Mailserver sein über den ansonsten auch viele gültige und gewollte Mails versendet werden. Diesen zu sperren "schießt über das Ziel hinaus".

Aus diesem Grund bietet unser Spam-Filter in der STR-Funktion eine Mustererkennung von Bounce- und DSN-Mails an. Werden solche Bounces erkannt, blockiert die STR-Funktion die betreffende E-Mail. Als Filterkriterium gilt dabei, dass ein Bounce an ein mail-connect Konto gerichtet ist, dieser aber nicht von mail-connect generiert wurde. Dies funktioniert unter der Annahme, dass Sie Ihre Mails über mail-connect versenden: Wenn also eine Mail tatsächlich unzustellbar ist, erhalten Sie "echte" Bounce-/DSN-Mails nur von uns und von sonst niemanden.

IT Service durch all-connect

Gerne helfen wir Ihnen beim Setup Ihres Mailservers weiter und bieten Ihnen dazu unsere Unterstützung von der Planung bis zum operativen Betrieb.

Als Systemhaus bieten wir Ihnen individuelle IT-Dienstleistungen: Rufen Sie uns an und fragen Sie uns: Unser Service Team erreichen Sie unter unserer kostenlosen Hotline!