Fehlersuche in E-Mails mit Kopfzeilen
Das Medium E-Mail ist mittlerweile sehr zuverlässig geworden. Stabile Serversoftware und gute Protokollierung machen es dem Administrator zumeist recht einfach, die wenigen auftretenden Probleme zu meistern. Kommt es dennoch einmal zu Problemen, so ist neben der Serverprotokollierung auch die Analyse des Clients und der dort eingesetzten Software vonnöten. Die Analyse der sogenannten Kopfzeile einer zugestellten Nachricht kann dabei wertvolle Hilfe leisten. Was beinhaltet dieser meist unsichtbare Teil der Nachricht und wie ist dieser zu lesen?
Eine elektronische Nachricht besteht im Prinzip aus drei Teilen: dem Envelope, dem Header und dem Body.
- Der Envelope einer E-Mail kann mit einem Briefumschlag verglichen werden. Dieser ist für den Anwender meist nicht sichtbar und dient in erster Linie der Kommunikation der beiden Mailserver. In einem SMTP-Dialog teilt der sendende Host dem Mailserver des Empfängers vor der eigentlichen Zustellung der Nachricht die grundlegenden Parameter mit (wer, an wen, welcher Sender, etc.). Dieser Teil wird von manchen Mailservern in die Nachricht (versteckt) mit aufgenommen, was aber kein definierter Standard ist.
- Der zweite Teil der Nachricht besteht aus dem sogenannten Header, also der Kopfzeile einer Nachricht. Dessen Inhalt wollen wir folgend genauer ansehen.
- Der dritte Teil ist der sogenannte Body einer Nachricht. Dieser enthält den eigentlichen Inhalt der E-Mail.
Was bedeutet die „Internetkopfzeile“?
Wozu der detaillierte Blick auf den Header? Ganz einfach – dieser bietet eine technische Sicht auf die Zustellung einer E-Mail. Der gesamte Weg einer Nachricht ist damit nachvollziehbar. Jeder Mailserver (sowohl der eigene wie auch alle „Zwischenstationen“) hinterlässt darin einen Eintrag. Sowohl der Ersteller einer Nachricht wie auch die verwendete Software kann hier ausgelesen werden – Spammer-Mails ausgenommen, diese manipulieren auch den Header.
Der Lauf der Nachricht
Jeder einzelne Eintrag in diesem versteckten Teil einer Nachricht hat seine Syntax: Variable / Bezeichner, Doppelpunkt, Inhalt. Die wichtigsten Bestandteile des Headers sind in erster Linie der Absender („From“), der Empfänger („To“) und die Betreffzeile („Subject“). Die weitergehenden Informationen sind im Rahmen einer Fehleranalyse aber weitaus interessanter.
Viele Zusteller, viele Vermittler
Am interessantesten im Rahmen der Zustellung ist der Parameter „Received“. Dieser listet alle Stationen der Nachricht auf – so nicht manipuliert (bei Spammern durchaus üblich). Der sendende Mailserver trägt sich als erster in diese Liste ein. Danach folgt jede „Zwischenstation“, die diese Nachricht aufnimmt und – weil nicht zuständig – weiterleitet. Die Anzahl der weiterleitenden Server kann vielfältig sein. Der Mailserver des Absenders übergibt die Nachricht an ein Mail-Gateway (durchaus üblich in einer Unternehmensinfrastruktur), diese sucht den Mailserver des Empfängers und auch der empfangende Server ist nur die erste Station innerhalb eines Netzwerks. Dasselbe „Hopping“ einer E-Mail findet statt, wenn Nachrichten zwar an einen Mail-Account zugestellt werden, von diesem aber wieder zu einem nächsten zur zentralen Sammlung weitergeleitet werden (Mail-Umleitung).
Received, received und nochmals received
Jeder Mailserver und Vermittler trägt sich (nach Standard) in diese Liste ein. Jede Aufnahme und Weiterleitung wird damit im Header mitprotokolliert. Sie senden eine Nachricht über den Firmenserver nach außen – der erste „Received“-Eintrag wird von diesem Mailhost generiert. Im nächsten Schritt wird die ausgehende Nachricht an das Mail-Gateway übertragen (und dort auf unternehmensspezifische Kriterien wie Compliance überprüft) – der nächste „Received“-Eintrag im Header der Nachricht wird eingetragen. Danach kommt die Nachricht beim Empfänger an, aber noch nicht am eigentlichen Mailserver. Erst prüft dessen Mail-Gateway die Nachricht auf Viren oder Spam. Wiederum eine weitere Zeile im „Received“-Protokoll. Letztlich landet die Mitteilung im Postfach des Empfängers. Auch hier trägt sich der Server nochmals im Header ein.
Wer, wann und von wem?
Die Zustellungskette bietet im Header einer E-Mail also – so nicht manipuliert – eine wertvolle Hilfestellung, wie die Nachricht den Weg zum eigenen Postfach gefunden hat. Verdächtige Eingänge im Postfach können auf diese Weise einfach (wenn auch nicht mit Sicherheit) geprüft werden.
Beachten Sie beim Lesen jener Kopfzeilen: Jeder Mailserver oder Weiterleiter schreibt an den Anfang des Headers. Die gesamte „Received“-Kette muss folglich von unten nach oben gelesen werden. Der erste Sender steht als letzter in der Liste, der abschließende Empfangsvorgang an oberster Stelle. Die Reihenfolge: Server C übermittelt an Server B, Server B an Server A – die oberste Zeile sollte Ihr Mailserver sein.
Ping-Pong im eigenen Netzwerk?
Wundern Sie sich nicht, wenn derselbe Server mehrmals in der Liste vorkommt. Eine Anti-Virus-Instanz auf dem eigenen Mailserver kann zur Folge haben, dass die E-Mail „offiziell“ auf demselben Server hin- und hergeschoben wird. Der Server nimmt also als Mailgateway die Nachricht in Empfang, um diese – nach einer Überprüfung – an den eigentlichen Mailserver (auf demselben Server beheimatet) zuzustellen.
Weitere Protokolldaten
Der Mail-Header bietet meist noch eine Vielzahl von weiteren Informationen.
- Die Message-ID: Jede Nachricht hat eine eindeutige Kennung. Diese enthält – ähnlich einer Seriennummer – eine generierte eindeutige Nummer, gefolgt vom Servernamen (Host). Diese Kennung (Syntax entspricht 123@server.com) zeichnet auch der empfangende Server auf, was eine Problemanalyse über Unternehmen hinweg ermöglicht.
- Der Content-Type: Mithilfe dieses Eintrags wird dem Empfänger mitgeteilt, welcher Inhalt in der Nachricht zu finden ist. Eine angehängte Video-Datei? Ein Bild als Mail-Inhalt? Oder einfach unformatierter Text. Vielleicht (und in vielen Fällen) einfach eine Mischung aus Dateitypen – dann verzeichnet der Content-Type „mixed“. All diese Standards sind in RFCs definiert, die „Multipurpose Internet Extension“ z.B. im RFC 2046.
Jede Menge X
Unabhängig von jedem Standard darf jeder Server noch zusätzliche Einträge vornehmen. In der Regel sind diese durch ein „X“ gekennzeichnet. Beispiel: Ihr Virenscanner prüft eine ausgehende Mail und verewigt diese (hoffentlich erfolgreiche) Prüfung in einem eigenen Eintrag. Auch ein Exchange-Server hinterlässt auf diese Weise seine Prüfmechanismen: Der Spam-Faktor wird hier ebenso festgehalten wie ein SPF-Rating-Faktor. Uninteressant für den Empfänger, sehr hilfreich für den Administrator bei der Fehlersuche.
Die Header-Einsicht für Endanwender
Jedes Mailprogramm zeichnet (erst mal verborgen) diese Header-Informationen mit auf. Im Rahmen der Fehlersuche ist diese Protokollierung sehr hilfreich. Am Beispiel von Outlook 2010: Haben Sie die problematische E-Mail aufgerufen, reicht ein Klick auf die Eigenschaften der Nachricht (bei geöffneter Mail im Menü auf „Datei“ und „Eigenschaften“), um die Internetkopfzeile zur Ansicht zu bringen. Das gesamte Textfeld kann nun einfach markiert werden und in ein Störungsticket eingefügt werden. Im Fall von Outlook 2000 bis Outlook 2007 ist dieselbe Funktion über einen Rechtsklick auf die Mail und dann über die Auswahl „Optionen“ erreichbar.
My way?
Den Weg einer E-Mail in Ihr Postfach können Sie nicht beeinflussen, aber nachvollziehen. Haben Sie sich schon einmal die Frage gestellt, warum Sie eine „Nicht-Zustellbar“-Rückmeldung auf eine Nachricht bekommen haben, die Sie gar nicht versendet haben? Ja, hier waren Spammer am Werk. Und die Einsicht in den Header dieser Rückmeldung gibt darüber schnell Auskunft. Ein Blick in die Kopfzeile der Nachricht bringt so manches Fragezeichen zur schnellen Antwort.
Fragen? Nutzen Sie die Kommentar-Funktion. Wir untersuchen Ihr Mailproblem. Oder kontaktieren Sie unseren Support.
Anzeige