Exchange Journalfunktion
Exchange bietet die Funktion, übertragene Nachrichten an ein Journalpostfach zu senden. Der Hintergrund dabei ist, dass Nachrichten so einfach als Kopie in ein Archiv übertragen werden können. Aber auch andere Optionen sind denkbar. Doch zuerst einmal die verschiedenen Journaloptionen und Einstellungen.
Journalfunktionen
Funktion | 5.5 | 2000/2003 | 2007+ |
---|---|---|---|
|
|
|
|
Achtung: Nur eine der beiden Funktionen kann aktiv sein.
|
? |
|
|
|
|
|
|
|
IMSEXT |
|
|
|
|
|
|
Lassen Sie sich aber von allen den Funktionen nicht überfordern. Faktisch nutzen die meisten Firmen nur die Funktion, auf dem Mailboxstore alle Nachrichten in ein Journalpostfach zu kopieren und über die Funktion des Envelope Journaling können Archivsysteme auch die komplette Liste der Empfänger nachverfolgen.
Funktion im Detail
Um die Tragweite der Journalfunktion zu bewerten, müssen Sie die Funktionsweise verstehen. Der Weg einer Mail von einem Postfach in ein anderes Postfach ist bei allen Mailsystemen ähnlich. Die Nachricht wird irgendwo aus die Reise gebracht und über verschiedene Zwischenstationen bis zum Ziel übertragen. Im Bezug auf Exchange gibt es da drei Fälle.
- Mails aus einem Mailboxstore
Ein Mitarbeiter sendet eine Mail aus einem Postfach. Dazu legt Outlook oder OWA die Mail in den Postausgang, welche dann vom Mailserver abgeholt und übertragen wird. Bei einem aktivierten Mailboxjournal wird dabei eine Kopie dieser Mail an die konfigurierte Journaladresse gesendet. - Mails in ein Postfach
Wird eine Mail an ein Postfach gesendet, so erkennt der Routingprozess anhand des Empfängers, dass in dessen Mailbox ein Journalempfänger hinterlegt ist und teilt die Mail entsprechend auf (Bifurcation). - Mails durch das System
Auch Nachrichten, die nicht in eine Mailbox zugestellt werden, können mit dem MTA oder Transport Journal in einem Journalpostfach mitgeschnitten werden
Eine Mail an mehrere Personen innerhalb eines Unternehmens kann daher in mehreren Journalpostfächern landen. Wenn Se daher Informationen über eine versendete Mails erhalten wollen, dann sollten Sie im Journal des Versenders nachschauen, da dort die komplette Mail enthalten ist.
Die Information über das Journalpostfach eines Mailboxspeichers steht im Attribut "msExchMessageJournalRecipient" des Postfachspeichers.
Damit eine Mail nun nicht auf vielen Mailservern mehrfach kopiert wird, werden die Nachrichten natürlich entsprechend gekennzeichnet. Der Mailrouter kann also erkennen, ob eine Mail schon für den Empfänger in das Journal abgezweigt wurde und ob es sich um eine Mail an eine Journalmailbox handelt, welche dann ebenfalls nicht mehr verzweigt werden darf. Diese Information ist jedoch nicht im Header der Mail, sondern im Envelope hinterlegt und wird über das SMTP-Verb "XEXCH50" zwischen den Mailservern übertragen.
Es gibt nur wenige Ausnahmen, die nicht im Journal landen. Das sind:
- öffentliche Ordner Replikationsmails
Der Inhalt und die Hierarchie der öffentlichen Ordner werden selbst als Mails zwischen den Server übertragen. Diese Systemnachrichten werden nicht an das Journal kopiert, selbst wenn die Systemmailbox, welche als Absender und Empfänger agiert, in einem Postfachspeicher mit aktiviertem Journal liegt. - Verzeichnissynchronisationsmails
Das gleiche gilt für Nachrichten zur Verzeichnisreplikation. Diese kommen z.B.: bei der Verbindung mit Exchange 5.5 oder anderen Gateways zum Einsatz (Microsoft Mail etc.) - Journalmails
Zuletzt sind natürlich auch die Journalmails selbst ausgeschlossen, welche auf dem Weg in das Journalpostfach sind.
In diesem Zuge möchte ich auf einen umfangreichen KB Artikel hinweisen
- 843105 Troubleshooting message journaling in Exchange Server 2003 and in Exchange 2000 Server
Journalempfänger einrichten
Ehe Sie nun an den verschiedenen Stellen von Exchange die Journalfunktion aktivieren, müssen Sie zuerst einen oder mehrere Journalempfänger einrichten. Gültige Empfänger sind:
- Postfach
Für die Ablage von Journalnachrichten eignen sich Postfächer am besten. Zu jedem Postfach gibt es einen entsprechenden Active Directory Account und über Stellvertreterrechte ist es einfach möglich, einem Dienstkonto den Zugriff auf alle Journalpostfächer zu gewähren. Sie können selbst bestimmen, ob Sie pro Datenbank ein Journalpostfach in der gleichen Datenbank (kein Routing, Single Instance Store etc.) nutzen oder z.B. eine eigene Datenbank für das Journal auf einem anderen Server bereit stellen und Exchange die Nachrichten alle in dieses Postfach sendet. Auch ist der Zugriff auf ein Postfach durch Drittprodukte (MAPI, CDO, WebDav, POP3, IMAP, ExOLE) in vielfältiger Hinsicht möglich, so dass es einfach ist, diese Nachrichten aus Exchange heraus zu holen um Platz zu sparen. - Kontakte
Es ist möglich, die Journalnachrichten an Kontakte, auch externe Adressen, weiter zu leiten. So könnten alle Mails an ein anderes System versandt werden. Allerdings kann dies dazu führen, dass die SMTP-Warteschlange zu dieser Adresse sehr belastet wird. Kontakte sollten daher nicht genutzt werden. Sie sollten statt dessen eine Journalmailbox nutzen, die dann z.B.: über eine Serverregel eine Weiterleitung durchführt. - öffentliche Ordner
Auch öffentliche Ordner sind faktisch als Empfänger denkbar aber ebenso wenig empfehlenswert. - Verteiler
Die Nutzung von Verteilern ist NICHT ratsam, da dadurch die Journalmail erneut aufgeteilt und multipliziert wird.
Nehmen Sie mit, dass eigentlich nur ein Postfach ein geeigneter Journalempfänger ist. Aber auch hier stellt sich dann die Frage, ob man in einer Umgebung mit mehreren Servern und Datenbanken nun genau ein Journalpostfach einrichtet oder mehrere Postfächer bemüht.
Journalpostfach | Vorteile | Nachteile |
---|---|---|
Ein Journalpostfach in der Organisation |
|
|
Ein Journalpostfach pro Routinggruppe |
|
|
Ein Journalpostfach pro Server |
|
|
Ein Journalpostfach pro Datenbank |
|
|
externer Journalempfänger als Kontakt |
|
|
Allerdings empfiehlt Microsoft, dass die Journalmailbox NICHT auf der gleichen Datenbank liegt, wie die Mailboxen der Anwender, damit der zusätzliche Disk-IO abgetrennt werden kann. Man spricht von 10-15% mehr Last durch eine aktive Journalfunktion.
Sie sehen, dass es gar nicht so einfach ist, in größeren Umgebungen eine adäquate Journalkonfiguration zu erhalten. Gerade bei dezentral platzierten Systemen ist zu überlegen, ob jedes System selbst sein Journal und Archiv installiert oder die zusätzlichen Kosten für die Übertragung an die Zentrale tolerierbar sind. Wenn Sie aber eh nur einen einzelnen Server mit einem Postfachspeicher haben, dann stellen sich all diese Fragen natürlich nicht. Dann gibt es auch keine Möglichkeit, z.B. das Journalpostfach in eine eigene Speichergruppe oder sogar auf einem eigenen Server zu platzieren.
Bei der Einrichtung des Journalpostfachs sollten Sie aber auf jeden Fall folgendes beachten-
- Keine öffentliche Mailadresse
Das Journalpostfach kann nicht per Mail erreicht werden, selbst wenn es eine Mailadresse hat. Eine Email an ein Journalpostfach wird mir einer Unzustellbarkeitsquittung (Fehler 5.4.6) beantwortet. Verhindern Sie dies, indem Sie diesem Postfach keine SMTP-Adresse vergeben, die von extern zu erreichen ist. (Achtung: unter bestimmten umständen muss das Postfach jedoch eine SMTP-Adresse der Default Richtlinie haben, z.B.: damit eine Anmeldung per OWA möglich ist. - "Hide from AB"
Nachdem das Postfach angelegt und an den jeweiligen Stellen in die Konfiguration eingetragen wurde, sollten Sie das Journalpostfach wieder im Adressbuch verbergen, damit kein Mitarbeiter durch dieses Postfach gestört wird. - Export-Prozess
Aktivieren Sie bitte nie die Journalfunktion, wenn Sie keine Komponente installieren, die mit den Daten im Journalpostfach auch etwas anzufangen weiß. Nur um die Daten zu sammeln, ist das Journal zu "teuer" - Größe Überwachen
Überwachen Sie das Postfach. Sollte ihr Prozess zum exportieren und löschen nicht funktionieren, dann kann ihre Datenbank sehr schnell anwachsen. Besonders wenn das Journalpostfach nicht in der gleichen Datenbank wie der original Empfänger liegt. - Mehrfachjournal mit Archiv
Sollten Sie eine Archivlösung nutzen, um den Inhalt des Journals in einen anderen Speicher zu übertragen, dann sollte dieses Produkt wieder einen Single Instance Store herstellen können. Es ist heute sehr einfach möglich über HASH-Funktionen identische Daten zu erkennen und wieder zusammen zu führen. Das spart doch erheblich Platz - Journalbenutzer nicht verschieben
Da der "Distinguished Name" in der Exchange Konfiguration hinterlegt wird, sollten Sie diese Objekte nicht mehr nachträglich in andere OUs verschieben.
Wurden nun die erforderlichen Postfächer für das Journal konfiguriert, können diese im Exchange eingetragen werden
- Erstellen und Konfigurieren eines Journalpostfachs
http://technet.microsoft.com/de-de/library/bb124985%28EXCHG.140%29.aspx - Exchange 2010 SP1: understanding Journal Reports
http://technet.microsoft.com/en-us/library/bb331962.aspx - More Powerful Journaling in Exchange 2007
http://technet.microsoft.com/en-us/magazine/2006.12.journaling.aspx - Leistungsstarkes Journaling in Exchange 2007
http://technet.microsoft.com/de-de/magazine/2006.12.journaling.aspx - Grundlegendes zur Kopfzeilenfirewall
http://technet.microsoft.com/de-de/library/bb232136%28EXCHG.140%29.aspx
Header: X-MS-Exchange-Organization-Journal-Report - Journaling Considerations in Mixed Environments
http://blogs.technet.com/b/exchange/archive/2009/06/01/451514.aspx - E-Mail-Archivierung von Microsoft Exchange 2010
http://de.help.mailstore.com/E-Mail-Archivierung_von_Microsoft_Exchange_2010
Exchange Online
In Office 365 ist es nicht möglich ein Journal auf eine Datenbank anzulegen. Hier können Sie nur ein "Transport Journal" einrichten und das Ziel darf nicht in der Cloud liegen:
Exchange Online doesn't support
delivering journal reports to an Exchange Online mailbox.
You must specify the email address of an On-Premises
archiving system or a third-party archiving service as the
journaling mailbox.
Quelle: Configure Journaling in Exchange Online
https://docs.microsoft.com/de-de/exchange/security-and-compliance/journaling/configure-journaling
- Journaling in Exchange Online
https://docs.microsoft.com/de-de/exchange/security-and-compliance/journaling/journaling - Configure Journaling in Exchange Online
https://docs.microsoft.com/de-de/exchange/security-and-compliance/journaling/configure-journaling
Einrichten des Exchange 2003 Datenbankjournal
Exchange 2000/2003 erlaubt auf der Postfachdatenbank die Konfiguration eines Journalempfängers.
Tragen sie hier einfach die gewünschte Journalmailbox ein. Die Konfiguration setzt auf dem Mailboxstore dann das Feld "msExchMessageJournalRecipient", so dass der Mailrouter erkennt, dass die Mail an ein Postfach in dieser Datenbank an den hier angegebenen Empfänger kopiert werden muss.
Einrichten des Exchange 2007/2010 Datenbankjournal
In Exchange 2007 sieht das Dialogfenster etwas anders aus, aber die Funktion ist identisch:
Auch hier kann pro Datenbank genau ein Journalempfänger konfiguriert werden
Einrichten des Exchange 2007/2010 Transportjournal
Durch die Journalregeln in der Exchange 2007 Hub/Transport-Rolle kann man nun auch alle Mails in ein Journalpostfach kopieren, die durch den Exchange Server durch geleitet werden, selbst wenn diese nicht aus einem Mailboxstore oder in einen Mailboxstore gehen.
Die Journalregel kann allerdings nur sehr wenig Filterkriterien verwenden. Bei Exchange 2007 gibt es auch noch die Transport-Regeln, welche sehr viel feiner eingestellt werden können. Hier wäre es z.B.: möglich, nur Nachrichten von bestimmten Absendern oder mit einem bestimmten Betreff zusätzlich an die Journalmailbox zu senden. Allerdings entspricht dies dann nicht genau einem Journal, sondern eher einem zusätzlichen Empfänger für eine Mail.
Exchange 2010 Journalmail
Jede Mail, die dem Journal unterworfen ist, wird als Anlage an eine neue Nachricht angebunden, die aber wie eine ganz gewöhnliche Mail im Posteingang des Journalempfängers angesehen werden kann. Hier ein Beispiel einer Mail von User1 an User 2 bei der User1 als BCC addiert war. Das Journalziel (Exchange Postfach) wurde hier mit OWA geöffnet.
Sie sehen, dass "Microsoft Outlook" der Absender "im Auftrag des echten Senders" ist und die Mail noch den richtigen Empfänger enthält. Im Body sind die wesentlichen Metadaten enthalten, u.a. die kompletten Empfänger inklusive BC.. Die eigentliche Mail ist aber als Anlage unverändert beigefügt.
Envelope Journaling
Die normale Funktionsweise legt im Journalpostfach die gleiche Mail ein, welche auch im Postfach der Anwender abgelegt wird. Damit ist natürlich auch hier das Thema "Blindkopien" offensichtlich. Eine Mail, welche an Personen als "BCC" geht, liegt zwar mit im Journal, aber an der Mail selbst ist nicht mehr erkennbar, an welche Empfänger Sie zugestellt wurde
Ab Exchange 2000 PostSP3 Hotfix (Also SP4 installieren) kann die Journalfunktion um das "Envelope Journaling" erweitert werden. Durch diese Einstellung, die sich nicht mit dem BCC-Journal verträgt, kann das Journal auch die Blindkopien korrekt nachweisen.
Ist das Envelope Journaling aktiv, dann wird nicht die original Mail an die Journalmailbox gesendet, sondern eine neue Mail erstelle, in der die originalen Empfänger im Body der Mail enthalten sind und die eigentliche Mail als Anlage beigefügt wird.
Das Envelope Journal wird über das Programm EXEJCFG aktiviert, welches im Paket der Exchange Tools enthalten ist.
exejcfg -e
- How Exchange Server 2003 Envelope Journaling Works
http://technet.microsoft.com/en-us/library/aa996081.aspx - 834634 An Update rollup is available to enable the Envelope Journaling feature in Exchange 2000 Server
-
Exchange Server 2003 How to Enable Envelope Journaling
http://technet.microsoft.com/en-us/library/59ad8423-5c5b-4f34-b086-9ba266338d75.aspx -
The E-Mail Journaling Advanced Configuration tool (Exejcfg.exe)
Bestandteil der "Exchange 2003 All-In-One Tools"
http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=e7f73f10-7933-40f3-b07e-ebf38df3400d&displaylang=en
Exchange 5.5 MTA Journaling
Exchange 5.5 kann seit dem Service Pack 1 ebenfalls angewiesen werden, zumindest all die Nachrichten an eine Journalmailbox zu kopieren, die durch den MTA übertragen werden. Allerdings sind diese Einstellung nicht über die grafische Oberfläche zu erreichen, sondern erfordern manuelle Eingriffe mittels Registrierungseditor, welche aber im KB Artikel 239427 gut beschrieben sind. So sind folgende Dinge einzustellen
- Journalpostfach anlegen
Zuerst muss auch bei Exchange 5.5 ein Postfach angelegt werden. Dann müssen Sie sich den "DistinguishedName" des Postfachs besorgen (Exchange ADMIN /RAW) - Journalpostfach auf dem MTA einstellen
Diese DistinguishedName muss nun in der Registrierung beim MTA eingetragen werden. Nun leitet der MTA eine Kopie jeder Mail, die er routet, an das Journalpostfach weiter. Diese Einstellung muss natürlich auf jedem MTA erfolgen. Zudem müssen Sie angeben, ob das Journal für die Organisation oder nur für Mails innerhalb der Site gilt. - Internet Mails durch den MTA umleiten
Alle Nachrichten, die vom Internet Mail Connector auf den lokalen Postfachspeicher übertragen werden, gehen normalweise nicht durch den MTA. Damit diese Mails auch vom Journal erfasst werden, muss der IMC angewiesen werden, die Mails nicht mehr direkt zuzustellen, sondern dem MTA zur Zustellung zu übergeben - Lokale Mails über MTA zustellen
Das gleiche gilt für Nachrichten von einem Postfach zum anderen Postfach in der gleichen Datenbank. Ein entsprechender Registrierungsschlüssel weist den Informationsspeicher an, die Mails ebenfalls durch den MTA zu leiten.
All dies bedeutet natürlich eine größere Belastung für die Systeme. Dies ist bei der Planung zu berücksichtigen.
- 239427 XADM: How to Enable Message Journaling in Exchange Server 5.5
Messagetracking
Wenn Sie z.B.: auf der Datenbank ein Journal aktivieren, dann finden Sie im Messagetracking (Hier Exchange 2003) auch, dass jede Mail auch in das Journalpostfach gesendet wird.
Ideen
Denkbar ist ein Journal in eine ganz eigene Datenbank auf einem eigenen Server mit Envelope Journaling. Fällt dann einer der Server aus, könnte man diesen Server als Recovery Quelle nutzen. Auch könnte ein Export diese Mails aus dem Journalpostfach als MSG-Dateien nach Postfächern ablegen und so wieder importierbar machen. Auch das Problem von versehentlich oder per Regeln gelöschten Mails (Siehe auch Dumpster) kann man damit vielleicht entschärften.
Das Journal ist einfach eine ideale Lösung, eine Kopie einer Mail auf einen anderen Server zu verschaffen und für Notfälle aber auch Langzeitarchive vorzuhalten.
Weitere Links
- Archivieren mit Exchange
- Technet: Leistungsstarkes Journaling in Exchange 2007
http://www.microsoft.com/technet/technetmag/issues/2006/12/journaling/default.aspx?loc=de - PowerShell Commandleet: Set-JournalRule
http://www.microsoft.com/technet/prodtechnol/exchange/E2k7/DE/Help/ExchHelp/e72562c6-64d2-43c3-81b0-062e7d7b28c9.mspx?mfr=true - The "Journaling with Exchange Server 2003" guide für Microsoft Exchange
Server 2003 is available
http://www.microsoft.com/technet/prodtechnol/exchange/2003/library/journaling.mspx - 198783 XCON: Receipt Behavior with Message Journaling
- 199325 XCON: MTA Size Restrictions Affect Local Delivery with Message Journaling
- 239427 XADM: How to Enable Message Journaling in Exchange Server 5.5
- 280347 XCON: MTA Journaling Does Not Work on Certain Days
- 843105 Troubleshooting message journaling in Exchange Server 2003 and in Exchange 2000 Server
- 885281 You receive an "Out of virtual memory" error message after you enable the Envelope Journaling feature in Exchange Server 2003 SP1
- How to Enable Bcc Recipient Archiving on a Mailbox Store
http://technet.microsoft.com/en-us/library/aa996520(EXCHG.65).aspx - Exchange 2007 understanding Journaling in a Mixed Exchange 2003 and
Exchange 2007 Environment
http://technet.microsoft.com/en-us/library/aa997918(EXCHG.80).aspx - Exchange 2007 understanding Journaling in a Mixed Exchange 2003 and
Exchange 2007 Environment
http://technet.microsoft.com/en-us/library/aa997918(EXCHG.80).aspx - Exchange Server 2007 More Powerful Journaling in Exchange 2007
http://technet.microsoft.com/en-us/magazine/cc160869.aspx