Zum Inhalt springen

Das Problem der abgelehnten E-Mail

Problem

Ein sehr „nettes“ Problem hat mich die Tage beschäftigt.
Ein Kunde hat gemeldet, dass sie von einem bestimmten Kunden keine E-Mails erhalten.
Eine kurze Abfrage mit „Get-MessageTrackingLog“ hat das bestätigt.
Normalerweise wird die Sende-Domain in die Liste der BypassedDomains eingetragen und das Problem ist erledigt.
Leider war diese Domain schon eingetragen.

Ursachenforschung

Im nächsten Schritt habe ich den Sender direkt kontaktiert und habe mir die komplette E-Mail sowie den Zustellungsbericht weiterleiten lassen.
Der Zustellungsbericht zeigte nur „550 5.7.1 TRANSPORT.RULES.RejectMessage; the message was rejected by organization policy“.
Da bei vielen unserer Kunden, wie auch bei diesem, ein individueller Text in den Zustellungsmitteilung steht, tappte ich erst mal im Dunkeln warum es zur Annahmeverweigerung kam.

Die versandten Anhänge waren ein PDF und ein PNG. Also eigentlich unverdächtig und auch im völligen Einklang mit den Transportregeln.
Die Anhänge habe ich von meinem Rechner an ein Test-Konto beim Kunden geschickt und bekam ebenfalls einen Zustellungsfehler.
Danach habe ich die Anhänge einzeln verschickt. Das PNG kam zurück.
Aus Jux habe ich das PNG zu JPG konvertiert. Gleicher Fehler.
Es begann seltsam zu werden.
Ein Kollege meinte aus Spaß: benenne doch mal die Datei um.
Die umbenannte Datei ging durch.
Bei einem weiteren gedanklichen Austausch mit den Techniker-Kollegen fragte einer nach dem ursprünglichen Namen der Datei und begann danach zu lachen.

Lösung

Hier kamen mehrere Ursachen zusammen.
Zu einen wurde der Exchange früher von 2010 auf 2013 migriert. Zum anderen existierten diverse Transportregeln, um gewisse Anhänge zu blockieren, die ebenfalls migriert wurden. Unter anderem werden auch RTF-Dateien abgewiesen.
Die Regel wurde mit PowerShell unter 2010 angelegt.

New-TransportRule -Name "Blockiere RTF-Anhänge" -Priority '0' -Enabled 1 -AttachmentNameMatchesPatterns " .rtf" -FromScope "NotInOrganization" -SentToScope "InOrganization" -RejectMessageEnhancedStatusCode 5.7.1 -RejectMessageReasonText "Server akzeptiert RTF-Anhänge nicht - noreply@der-eigelb-laden.de"

Da wurden die RTF-Anhänge auch zuverlässig herausgefiltert.
Unter Exchange 2013 nimmt die Transportregel den Parameter „-AttachmentNameMatchesPatterns“ wörtlich. Sie prüft den kompletten Namen des Anhangs. Wenn nun wie im vorliegenden Fall der Dateiname das Wort „Portfolio“ enthält, trifft die Regel zu und die Annahme der E-Mail wird verweigert.

Exchange 2013 bringt nun einen weiteren Parameter mit, der das Problem löst: „-AttachmentExtensionMatchesWords“.
New-TransportRule -Name "Blockiere RTF-Anhänge" -Priority '0' -Enabled 1 -AttachmentExtensionMatchesWords "rtf" -FromScope "NotInOrganization" -SentToScope "InOrganization" -RejectMessageEnhancedStatusCode 5.7.1 -RejectMessageReasonText "Server akzeptiert RTF-Anhänge nicht - noreply@der-eigelb-laden.de"
Man beachte den kleinen aber feinen Unterschied bei den Werten “ *.rtf“ und „rtf“.
Ein abschließender Test liess „Portfolio.png“ durch und blockierte „Test.rtf“.

Der Frage nach dem standardisierten Zustellungsbericht wird in einem weiteren Artikel nachgegangen.