Skip to content

Exchange Message Tracking Log - Praktische Befehle um die Nachrichtenzustellung zu durchsuchen

Für den Exchange Server, speziell für die 2013er Version, hatte ich erst vor wenigen Wochen ein paar praktische Befehle für die Exchange Management Shell vorgestellt. Damals ging es hauptsächlich um die Rechtevergabe oder Auswertungen von Einstellungen.

Heute soll es ebenfalls um Auswertungen gehen, aber dieses Mal in Bezug auf die Exchange Funktion an sich, den E-Mailverkehr. Gemeint ist damit das sogenannte Message Tracking Log, welches auf dem Exchange Server grobe forensische Methoden liefert, um den Mailverkehr oder einzelne Mailzustellungen zu untersuchen.

mail-exchange-srv

Ich ziehe auch unter Exchange 2013 die Auswertung via Shell vor, es wird zwar auf eine Analyse via Weboberfläche verwiesen. Diese ist aber mehr als schäbig und bringt nicht den gewünschten Komfort einer Konsole mit.

Somit muss für die folgenden Abfragen zunächst die Exchange Management Shell auf dem zu untersuchenden Server gestartet werden. Die Angaben eines Servers, in den kommenden Befehlen habe ich bewusst weggelassen, wer mehrere Server im Betrieb hat, kann eine genaue Auswahl mit "-Server Name" gerne treffen.

Befehle zur Nachrichtenuntersuchung - Exchange Server 2010/2013

Gesamten Mailverkehr ausgeben

Die Ausgabe erfolgt der Übersicht wegen, immer über die sogenannte GridView

Get-MessageTrackingLog | Out-Gridview

Mailverkehr mit Sender, Empfänger, Betreff und Datum anzeigen

Get-MessageTrackingLog -ResultSize Unlimited | select-object eventid,timestamp,source,messageid,sender,recipients,messagesubject | Out-Gridview

Mailverkehr eines bestimmten Datums ausgeben

Get-MessageTrackingLog -ResultSize Unlimited -Start "03 31 2014" | select-object eventid,timestamp,source,messageid,sender,recipients,messagesubject | Out-Gridview

E-Mails eines Zeitraums anzeigen

Get-MessageTrackingLog -ResultSize Unlimited -Start "03 31 2014" -End "04 02 2014"| select-object eventid,timestamp,source,messageid,sender,recipients,messagesubject | Out-Gridview

E-Mails eines bestimmten Nutzer in einem Zeitraum suchen

get-messagetrackinglog -Start "03 31 2014" -End "04 02 2014" -sender: nutzer@domain.de | Select timestamp,EventID,recipients,messagesubject | Out-Gridview

E-Mails eines bestimmten Nutzer in einem Zeitraum suchen und in Datei abspeichern

get-messagetrackinglog -sender: nutzer@domain.de | Select timestamp,EventID,recipients,messagesubject | Out-File D:\Maillog.txt

Mails eines bestimmten Zeitraums sortiert in Datei ablegen 

Get-MessageTrackingLog -ResultSize Unlimited -Start "03 31 2014" -End "04 02 2014" | sort Timestamp | Select timestamp,EventID,recipients,messagesubject | Out-File D:\Maillog-sortiert.txt