Inaktive Postfächer
Diese Seite beschäftigt sich mit den verschiedenen Ansätzen zur Erkennung von inaktiven Postfächern.
Warum?
Warum sollte sich eine Firma um diese Frage kümmern? Oft höre ich dazu die vereinfachte Aussage, dass die Postfächer nicht viel Platz brauchen, Speicherplatz günstiger ist, als wenn sich jemand mit einem Aufräumprozess beschäftigt oder man keine Daten löschen will, die man vielleicht doch noch mal braucht. So sammeln sich dann in den meisten Exchange Umgebungen viele Postfächer an, die durchaus Risiken haben
- Lizenzen
Genau genommen brauchen Sie für jedes Exchange Postfach eines "Menschen" auch eine Exchange CAL. Exchange OnPremises prüft das nicht und sie könnten sich auch herausreden, dass es den Mensch ja nicht mehr gibt es es eigentlich eine Shared Mailbox ist. Aber spätestens in Exchange Online müssen Sie für jedes Postfach eine Lizenz haben oder dieses aktiv in eine Shared Mailbox umkonfigurieren.
Aber auch 3rd-Party-Produkte (Archiv, Provisioning etc. zählen gerne die Postfächer, so dass hier Mehrkosten entstehen können. - Datensparsamkeit
Sie wissen schon, dass es nicht nur Vorschriften zur Archivierung und Vorhaltung von Informationen gibt, sondern dass es auch ein Lösch-Recht geben kann? Es kann daher durchaus auch aus Sicht des Datenschutzes in ihrem Interesse sein, Postfächer zu löschen. Wenn Sie z.B. die private Nutzung nicht ausgeschlossen und kontrolliert haben, dann können im weiterhin vorhandenen Postfach eines ausgeschiedenen Mitarbeiters seine privaten Mails liegen, auf die er ein Löschrecht haben kann. - Informationsverlust
Es ist zwar alles da aber sie wissen und finden es nicht. Stellen sie sich einmal vor, dass ein Kunde weiterhin mit der Mailadresse kommuniziert und die Nachrichten nachweislich erfolgreich zugestellt wurden aber niemand diese sieht und liest. Das kann auch rechtlich unangenehme Folgen nach sich ziehen. Von verärgerten, weil ignorierten, Kunden und entgangenen Geschäften ganz zu schweigen. - Öffentliche Ordner
Auch öffentliche Ordner können eine Mailadresse haben. Das war bei Exchange 4.0 bis 5.5 sogar der Default und in vielen migrierten Umgebungen sind daher immer noch sehr viele öffentliche Ordner "Mail enabled", obwohl diese Adressen nie verwendet wurden oder werden. Niemand sende aber als "öffentliche Ordner" und ich dränge jeden Kunden dazu, die Inhalte in andere Lösungen, z.B. "Shared Mailboxen" zu überführen. Ansonsten können Sie über das Messagetracking erkennen, ob und wann ein öffentlicher Ordner das letzte mal eine Mail bekommen hat und dann damit die nicht erforderlichen Ordner löschen oder zumindest die Mailadresse entfernen.
Es gibt also durchaus handfeste Gründe, dass eine Suche nach inaktiven Postfächern kein Zeitvertreib für einen gelangweilten Administrator, sondern durchaus eine organisatorische Aufgabe ist, die definiert, geplant und kontrolliert werden muss, wenn Sie nicht den kompletten Exit-Prozess von Mitarbeitern und anderen "Mailempfängern" anderweitig gelöst haben.
Aber wie kann man solche Postfächer "sicher finden". Es gibt keine 100% zuverlässige Logik. Der zuverlässigste Ansatz ist natürlich, dass es in einer Firma eine geordnete Entry/Exit-Planung gibt, um Postfächer nur anzulegen, wenn diese erforderlich sind und am Ende auch wieder geordnet aufzulösen. Das ist aber leider nicht die Regel und so schleifen die meisten Firmen immer auch Ballast in Form von alten Postfächern mit. Also müssen wir uns andere Dinge anschauen, um etwas zu finden.
Quelle: Messsagetracking
Exchange protokolliert jede gesendete und empfangene Mail. Ein Indikator für eine obsolete Mailbox oder Mailadresse könnte es sein, wenn damit keine Mails mehr gesendet oder empfangen werden. Beide Zeiten sind aber nicht 100% "sicher".
- Kein Empfang
Nur weil ein Postfach nicht mehr empfängt, ist es nicht automatisch obsolet. Zudem habe ich gesehen, dass immer mal wieder Mails an Adressen gehen, die dennoch schon lange gelöscht werden könnten. Auch tote Postfächer bekommen ab und an Mails und "Aktions"-Postfächer sollten sie nicht einfach löschen, nur weil gerade keine Aktion läuft. - Kein Versand
Auch die Gegenrichtung ist eine Überlegung wert. Normale aktive Anwender senden immer mal wieder eine Mail, sagen einer Besprechungsanfrage zu etc. Aber eine aktive Shared Mailbox oder ein öffentlicher Ordner empfängt oft nur Mails ohne je eine Mail zu senden.
Ein Postfach was schon länger nichts mehr sendet, ist zumindest ein Verdachtskandidat. Die Daten werden natürlich um so besser, je länger sie in das Message Tracking zurück schauen können. Diese Auswertung hilft auch Absender zu finden, die nicht direkt per MAPI arbeiten, z.B. Systeme die Exchange als "Relay" verwenden.
Das Messagetracking geht meist 30 tage zurück und in Exchange Online sind 90 Tage der Default aber nicht so einfach abzufragen. Es könnte erforderlich sein, immer wieder die Werte in eine Reportdatenbank zu überführen.
- Nachrichtentracking mit Exchange 2007/2010
- Exchange 2000/2003 Nachrichtentracking
- MTRACK Auswertung von Trackinglogs
- Reporting
- LogParser
Quelle: AD/EntraID-Anmeldungen
Mein erster Ansatzpunkt ist das Benutzerkonto, mit dem sich der Anwender in der Vergangenheit angemeldet hat. Jeder halbwegs organisierte Firma sollte die Anmelde-Konten ausgeschiedener Mitarbeiter zum Ende des letzten Arbeitstages deaktivieren. Dann können wir sehr sicher sagen, dass diese Benutzer sicher nicht mehr auf ihr Postfach zugreifen und Sie sich Gedanken über die weitere Verwendung machen sollten.
Quelle: Exchange Anmeldungen
Exchange protokolliert natürlich Zugriffe auf Postfächer durch den Anwender. Sie können recht einfach so ermitteln, ob noch ein Prozess das Postfach tatsächlich öffnet. Das funktioniert für aktiv genutzte Benutzerpostfächer sehr gut aber je weniger ein Postfach genutzt wird, desto ungenauer werden die Aussagen. Es passiert, dass ein inaktives Postfach von anderen Prozessen, z.B. Archiv-Programmen o.ä. gelesen wird und dies den "Last Logon"-Counter aktualisiert. Dann finden Sie das Postfach nie als "inaktiv".
Sie könnten natürlich zum Postfach das entsprechende Benutzerkonto heranziehen und dessen "Last Logon" ermitteln.
get-mailbox -ResultSize unlimited ` | Get-MailboxStatistics ` | Sort LastLogonTime ` | Format-Table Displayname,PrimarySMTPAddress,LastLogonTime
Die Information kann natürlich auch als CSV-Datei exportiert und anderweitig weiter verarbeitet werden
Wenn der Anwender sein Kennwort nicht weitergegeben hat, kann das funktionieren. Aber es kann auch dann immer noch Stellvertreter geben, die das Postfach weiter mitlesen.
- TrackLoginEvents
- LogParser
- How to find the ‘last logon time’ of
mailboxes in the Exchange Server
https://community.spiceworks.com/t/how-to-find-the-last-logon-time-of-mailboxes-in-the-exchange-server/1011236
Quelle: Elemente in Ordnern
Wie wäre es, wenn Sie einfach alle Ordner in dem Postfach durchforsten würden und das letzte "gelesene" Objekt ausfindig machen. Oder sie schauen, wann das letzte mal etwas ein "gesendete Objekte" gelandet ist. Solche Daten lassen Sie per PowerShell sehr einfach ermitteln:
Get-Mailbox ` | Get-MailboxFolderStatistics ` -IncludeOldestAndNewestItems ` | Where {$_.Name -match “Inbox”} ` | Select Identity,Name,ItemsInFolder,OldestItemReceivedDate,NewestItemReceivedDate ` | Sort-Object ItemsInFolder ` -descending
Aber auch dieses Verfahren hat Ungenauigkeiten. So könnte es sein, das der aktive Besitzer die Mails im Posteingang nach Verarbeitung löscht, in eine anderen Ordner oder gar eine PST-Datei oder Archiv verschiebt. Dann sieht das Skript nicht mehr und sie gehen davon aus, dass das Postfach nicht mehr genutzt wird. Zudem liefert die PowerShell nur das neueste und ältestes Objekt aber nicht das "neueste gelesene" o.ä.
Die meisten Anwender räumen aber zumindest ihren Ordner "Gesendete Objekte" eher nicht auf, so dass Sie hier sehr gut sehen, ob ein Postfach noch genutzt wird. Beim Posteingang ist dies nicht zuverlässig, da ja auch ein inaktives Postfach immer mal wieder eine Mail erhalten dürfte. Hier wäre es hilfreich, wenn man die zuletzt gelesene Mail im Posteingang findet, wenn danach noch ungelesene Mails vorhanden sind. Sofern der Anwender nicht aktiv den "Gelesen"-Status zur Selbstorganisation nutzt, wäre dies zumindest ein Indikator.
Quelle: Client Zugriffe
Exchange und Windows protokollieren natürlich Zugriffe auf bestimmte Dienste und Daten oder Sie können eine entsprechende Protokollierung einschalten. Die meiste Client-Kommunikation erfolgt mittlerweile über HTTPS und den IIS, d.h. Outlook, ActiveSync, EWS, MAPI/HTTP, RPC/HTTP etc. nutzen alle den IIS und sie können hier auch die authentifizierten Benutzer und die URLs ermitteln. Allerdings sind das schon sehr umfangreiche Daten, die so zu parsen wären und meist keinen direkten Rückschluss auf weitere Postfächer zulassen.
Exchange OnPremises hat selbst weitere Protokolldaten, die sie verwenden können und sehr aufschlussreich neben dem Benutzer auch den verwendeten Client und die Postfächer anzeigen.
All diese Zugriffe verwässern aber auch wieder ihre Ermittlungen, denn ein eigentlich inaktives Postfach kann weiterhin bei einem aktiven Anwender als Stellvertreter eingebunden sein oder für Frei/Belegt-Abfragen zugegriffen werden.
Quelle: ActiveSync Last SyncDate
Eine besondere Eigenschaft liefert ActiveSync. Hier protokolliert Exchange das Datum der letzten Synchronisation durch ein Mobilgerät. Das dürfte in den meisten Fällen ein klares Indiz für ein inaktives Postfach sein. Die Auswertung hilft aber nicht, wenn der Anwender noch nie ein Mobilgerät verwendet hat.
- Exchange ActiveSync Auswertungen
- ActiveSync Leichen
- Get-MobileDevice
https://learn.microsoft.com/en-us/powershell/module/exchange/get-mobiledevice - Get-MobileDeviceStatistics
https://learn.microsoft.com/en-us/powershell/module/exchange/get-mobiledevicestatistics
Quelle: "IsAlive"-Mail
Natürlich verbietet ihnen niemand, einfach eine Mail an die Postfächer zu senden mit einer Bitte zum Anklicken eines Links oder einfach einer Rückantwort. Aus den Rückläufern, auf die sie einige Tage warten sollen, sehen Sie ja die noch aktiven Postfächer. Allerdings kann die bei dem ein oder anderen Benutzer natürlich als "Störung" betrachtet werden.
Bei all den Überlegungen sollten Sie beachten, dass z.B. Ressourcen selten etwas senden und auch generische Postfächer für Dienste (z.B. Blackberry, Backup, Monitoring-Funktionen etc.) in der Regel darüber Zugriff auf andere Postfächer erhalten aber selbst nichts senden. Das Ergebnis kann also immer nur eine Liste der aktiven Postfächer sein, um die zu prüfenden Adressen einzugrenzen.
Quelle: Microsoft 365 Mailbox Usage Report
Mit Microsoft 365 stellt Microsoft ihren Kunden nicht nur Exchange Online als Service bereit, sondern auch die ein oder anderen nützlichen Reports. Hier ist insbesondere der "Mailbox Usage"-Report interessant, den Sie auch exportieren können.
Microsoft führt wohl im Hintergrund einige Statistiken kontinuierlich mit, denn der Download dauert auch bei einer Firma mit mehreren tausend Postfächern nur Sekunden. Die CSV-Datei enthält jede Menge Details zu jedem Postfach. Neben dem UPN bzw. der primären Mailadresse ist das Feld "Last Activity Date" sehr nützlich, welches in der Schreibweise "YYYY-MM-DD", also z.B. "2024-05-13" geliefert wird.
Last activity date refers to the last time the user performed a read or send
email activity.
https://learn.microsoft.com/en-us/microsoft-365/admin/activity-reports/email-activity-ww
Es kombiniert quasi, wann die letzte Aktivität eines Benutzers durch "Lesen" oder "Senden" erfolgt ist. Die Werte werden auch für "Shared Mailboxen" aktualisiert, was auf der einen Seite gut ist aber natürlich auch eigentlich schon tote Postfächer mit aktiven Stellvertretungen als aktiv liefert.
Die CSV-Datei können Sie sehr einfach mit PowerShell importieren und mit Bordmitteln einfach gruppieren. Zuerst import
# Import in eine Variable $mbreport=import-Csv 'C:\users\fcarius\Downloads\MailboxUsageDetail1_22_2025 9_12_28 AM.csv' # Auswertung nach dem Jahr $mbreport | foreach {$_."Last Activity Date".split("-")[0]} | group -NoElement
So erhalten ich die Anzahl der Mailboxen und deren "Last Activity Date" nach Jahren. Es gibt aber auch Postfächer, bei denen das Feld leer ist.
Zudem habe ich habe die Momentaufnahme am Ende Januar erstellt. Also würde ich auch 2024 noch nicht pauschal als inaktiv ansehen, sondern vielleicht noch die Monate mit in die Berechnung mit einbeziehen, z.B. indem ich einen Substring nutze, wobei der Code bei den leeren Feldern natürlich einen Fehler wirft
$mbreport | foreach {$_."Last Activity Date".substring(0,7)} | group -NoElement
Wenn ihre Postfächer in Exchange Online liegen, würde ich diesen Weg als erste Option wählen. Sie können den Bericht auch per PowerShell automatisiert extrahieren.
- Get-ExoMailboxStatistics
https://learn.microsoft.com/en-us/powershell/module/exchange/get-exomailboxstatistics?view=exchange-ps
A New Approach to Reporting Exchange Mailbox Statistics
https://office365itpros.com/2023/11/21/graph-usage-data-mailboxes/
Inaktive Postfächer in EXO
Wenn sie nach Exchange und "Inaktive Mailbox" suchen, dann finden Sie andere Dokumente von Microsoft, die eine besondere Funktion in Exchange Online darstellen. Die meisten Administratoren kennen eigentlich nur folgende Status von Postfächern:
- User mit Lizenz
Es gibt einen EntraID-Benutzer, der einen Exchange Plan lizenziert und damit ein Postfach hat. - User ohne Lizenz
Solche Postfächer kann der Anwender nicht nutzen aber Exchange Online löscht die Daten nicht sofort, sondern behält sie 30 Tage weiter vor. Würde der Anwender wieder eine Lizenz bekommen - User ohne Lizenz Grace Period
Es gibt/gab eine Option, dass ein Benutzer bei einer Hybrid-Migration schon ein Postfach in Exchange Online haben und nutzen konnte, obwohl er keine Lizenz hatte. Der Administrator hatten dann bis zu 30 Tage Zeit, eine Lizenz zuzuweisen, ehe die Mailbox doch verschwindet - Gelöschter User und "disconected Mailbox
Wurde das EntraID-Konto gelöscht, dann ist das Postfach auch erst einmal weg aber ebenfalls bis zu 30 Tage in der Datenbank - Shared Mailbox
Bis 50 GB brauchen diese Postfächer keine Lizenz und werden dennoch nicht gelöscht. Ich habe schon erlebt, dass ein Postfach eines ausgeschiedenen Benutzers zu einer "Shared Mailbox" konvertiert wurde, um bis zum finalen Deprovisioning noch die Mails dem Nachfolger oder Stellvertreter zur Verfügung zu stellen. Lizenzrechtlich ist dieses Vorgehen zweifelhaft, auch wenn ich noch nicht erlebt habe, dass es sanktioniert worden wäre.
In der Regel wird aber ein reguläres Postfach nach den 30 Tagen ohne Lizenz gelöscht. Nun gibt es aber "Legal Hold", "Retention Policies" und "eDiscovery". Sie können z.B.: für Mailboxen vorschreiben, dass Elemente vielleicht 10 Jahre gehalten werden müssen. Wenn Sie nun den Benutzer löschen und Exchange Online nach 30 Tagen das Postfach entfernen würde, wäre diese Compliance-Vorgabe natürlich nicht mehr erfüllt. Exchange Online erkennt aber, dass hier Elemente unter solch einem Löschvorbehalt stehen und behält diese, auch wenn Sie keinen Benutzer, kein Lizenz und kein richtige Postfach mehr haben.
Microsoft konvertiert das Postfach in ein "inaktives Postfach"
If a Microsoft 365 retention policy is applied to a mailbox, or one or more
email items in a mailbox have a retention label applied, and then the Microsoft
365 user account is deleted, the mailbox will be converted into an inactive
mailbox. For the inactive mailbox to be created:
Quelle:
https://learn.microsoft.com/en-us/purview/inactive-mailboxes-in-office-365#inactive-mailboxes-and-microsoft-365-retention
Sie können die inaktiven Postfächer im Purview-Portal sehen. Sie können so eine Mailbox sogar wieder zu einer regulären Mailbox zurückverwandelt, die Inhalte in ein anderes Postfach übertragen oder permanent löschen. Denken Sie aber daran, dass das Halten dieser Informationen bei Microsoft natürlich "Speicher" kostet und dieser nicht endlos und kostenfrei bleibt. Eine Firma hat pro Tenant und je nach Lizenzen ein gewisses Speichervolumen frei, ehe Sie dann pro Terabyte bezahlen.
- Informationen zu inaktiven Postfächern
https://learn.microsoft.com/de-de/purview/inactive-mailboxes-in-office-365 - Erstellen und Verwalten inaktiver
Postfächer
https://learn.microsoft.com/de-de/purview/create-and-manage-inactive-mailboxes - Learn about retention policies and retention labels
https://learn.microsoft.com/en-us/purview/retention - Recover an inactive mailbox
https://learn.microsoft.com/en-us/purview/recover-an-inactive-mailbox - Restore an inactive mailbox
https://learn.microsoft.com/en-us/purview/restore-an-inactive-mailbox - Delete an inactive mailbox
https://learn.microsoft.com/en-us/purview/delete-an-inactive-mailbox
Zusammenfassung
Es wird immer wieder passieren, dass Mitarbeiter verlassen. Sie müssen für ihre Firma einen Prozess überlegen, wie Sie mit den AD-Konten, EntraID-Identitäten und damit verbundenen Daten umgehen. Das ist keine neue Anforderung mit Microsoft 365, sondern galt schon immer auch für lokale Dateiserver und Postfächer. Sehr oft erlebe ich es aber, dass es solche Regelungen nicht gibt oder nur halbherzig durchgeführt werden.
Wenn dann eine Migration zu Exchange Online ansteht und damit auch eine genaue Lizenzierung stattfindet, müssen Sie Entscheidungen treffen. Ich hoffe, dass diese Seite ihnen dabei geholfen hat, die notwendigen Daten und Informationen zu sammeln.
Weitere Links
- Exchange 2000/2003 Nachrichtentracking
- Exchange 5.5 Nachrichtentracking
- MTRACK Auswertung von Trackinglogs
- Reporting
- Nachrichtentracking mit Exchange 2007/2010
- LogParser
- TrackLoginEvents
- EXIT-Management - Ein Mitarbeiter verlässt das Unternehmen
- Benutzer scheidet aus
-
Berichte
Welche Berichte könnten interessant sein -
Datenquellen
Welche Quellen können Sie nutzen, um Daten für die Auswertung zu erhalten. -
Reporttools
Eine Liste von Programmen, die Exchange auswerten können - Beispielreports
-
Quickly find Inactive Mailboxes in Exchange 2019 by using PowerShell. -
Everything-PowerShell
https://everything-powershell.com/exchange-2019-find-inactive-mailboxes/ -
Finding Inactive Mailboxes Based on Message Trace Data
https://office365itpros.com/2024/11/29/find-inactive-mailboxes-tracing/ -
Find Inactive Distribution Lists Using Message Trace Data
https://office365itpros.com/2018/11/15/find-inactive-distribution-lists/ -
How to Find Unused Exchange Online Mailboxes
https://office365itpros.com/2022/04/11/unused-exchange-online-mailboxes/ -
Creating an Exchange Online Inbound Email Traffic Report for the Last 90
Days
https://practical365.com/inbound-email-traffic-report-90-days/