Mobile-Menu

Troubleshooting in Sachen Exchange Server 10 Tipps für die Lösung von Exchange-Problemen

Autor / Redakteur: Thomas Joos / Dipl.-Ing. (FH) Andreas Donner

Beim Einsatz von lokalen Exchange-Servern gibt es immer wieder Szenarien, in denen eine Reparatur der Mailing-Infrastruktur notwendig ist. Vor allem der Zustand der Datenbanken spielt hier eine wichtige Rolle. Der Beitrag zeigt 10 wichtige Tipps.

Firma zum Thema

Sind Exchange-Datenbanken fehlerhaft, können diese mit Stellar Repair for Exchange auf Fehler gescannt und unter Umständen repariert werden.
Sind Exchange-Datenbanken fehlerhaft, können diese mit Stellar Repair for Exchange auf Fehler gescannt und unter Umständen repariert werden.
(Bild: Joos / Stellar)

In diesem Beitrag zeigen wir verschiedene Weg, um Probleme auf Exchange-Servern in allen Versionen ab Exchange 5.5/2000/2003/2007/2010 zu lösen. Auch die aktuellen Versionen Exchange 2016/2019, bis hin zu Exchange Server 2022 lassen sich mit diesen Tipps reparieren. Im Beitrag „10 Tipps zur Fehlerbehebung bei Exchange-Servern“ zeigen wir weitere Tipps, wie Probleme in Exchange behoben werden können. Auch die dortigen Tipps lassen sich mit Exchange genauso 2019/2022 umsetzen, wie mit älteren Versionen.

Einstieg in die Lösung von Exchange-Problemen

Die häufigsten Probleme beim Einsatz von Exchange sind sicherlich Datenbankschwierigkeiten. Diese sind zudem besonders schwerwiegend, da bei defekten Datenbanken die Anwender nicht mehr ordnungsgemäß mit dem Server arbeiten können und Datenverlust droht. Bei der Reparatur von Exchange-Servern helfen auch Tools wie Stellar Repair for Exchange. Stellar Repair for Exchange kann Postfächer aus defekten EDB-Dateien exportieren und in andere Postfächer importieren. Zusätzlich steht auch die Möglichkeit zur Verfügung, Postfächer direkt zu Microsoft 365/Office 365 zu exportieren.

Bildergalerie
Bildergalerie mit 7 Bildern

Tipp 1 – Defekte EDB-Dateien scannen

Wenn Exchange-Datenbanken nicht mehr ordnungsgemäß funktionieren, kann bspw. mit Stellar Repair for Exchange kostenlos der Zustand der EDB-Datei überprüft werden. Dazu ist keine Installation auf dem Exchange-Server notwendig Repair for Exchange benötigt nur die EDB-Datei, die problemlos auf einen anderen Rechner kopiert werden kann.

Die kostenfreie Testversion ist dann in der Lage, festzustellen, ob Datenbanken noch so funktionsfähig sind, dass eine Datenwiederherstellung möglich ist. Eine Reparatur kann dann die kostenpflichtige Version von Stellar Repair for Exchange ab 399 Euro durchführen.

Tipp 2 – Datenbanken auf Konsistenz prüfen

Um Exchange-Datenbanken bei Problemen auf Konsistenz zu überprüfen, wird das Befehlszeilentool „eseutil.exe“ aus den Exchange-Bordmitteln genutzt, zum Beispiel mit:

Eseutil /mh "Mailbox Database.edb"

Zusätzlich kann auch noch die Option /k genutzt werden. Im Bereich State sollte Clean Shutdown erscheinen. Ist die Datenbank nicht korrekt heruntergefahren, erscheint hier Dirty Shutdown. Steht bei Bad Checksum Error Count nicht der Wert none, muss die Datenbank repariert werden.

Ein weiterer Test besteht darin, die Integrität der Datenbank zu überprüfen:

Eseutil /g "Mailbox Database <ID>.edb"

Tipp 3– Exchange-Datenbanken in der Exchange Management Shell reparieren

Ab Exchange 2010/2013 SP1 kann das Cmdlet „New-MailboxRepairRequest“ zur Reparatur verwendet werden. Das funktioniert auch in Exchange 2019 /2022:

New-MailboxRepairRequest -Database "Mailbox Database" -CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView

Tipp 4 – Offlinedefragmentierung einer Exchange-Datenbank

Die Offline-Defragmentierung von Exchange-Datenbanken löscht leere Bereiche und kann Defekte ebenfalls reparieren. Auch dazu wird „eseutil.exe“ genutzt. Für die Offline-Defragmentierung muss die Bereitstellung der Datenbank aufgehoben werden:

Dismount-Database -Identity <Name der Datenbank>

Die Syntax in der Befehlszeile für eine Offlinedefragmentierung lautet zum Beispiel:

Eseutil /d "Mailbox Database.edb"

Während der Defragmentierung werden automatisch auch defekte Bereiche der Datenbank gelöscht. Durch diese Option können also korrupte Datenbanken wieder repariert oder nach einer Reparatur überprüft werden. Funktioniert die Reparatur nicht, helfen Tools wie Stellar Repair for Exchange.

Tipp 5– Fehlerbehebung während der Installation von Exchange

In manchen Situationen bricht die Installation des Servers ab. Die Installationsroutine von Exchange 2019 führt eine eigene Protokolldatei, in der alle Informationen der Installation gespeichert sind. Diese Datei trägt die Bezeichnung ExchangeSetup.log und wird im Ordner C:\ExchangeSetupLogs gespeichert. Die Datei kann auch während der Installation geöffnet werden, um den Status der Installation zu überprüfen.

Tipp 6 – Exchange-Reparaturinstallation durchführen

Funktionieren Systemkomponenten in Exchange nicht, kann eine Reparatur-Installation helfen. Bei diesem Vorgang werden keine Daten gelöscht, sondern nur die Systemdateien repariert. Dazu wird die Exchange-Installationsdatei mit dem folgenden Befehl gestartet:

Setup /m:upgrade /IAcceptExchangeServerLicenseTerms

Lassen sich neue Exchange-Server nicht installieren, kann es helfen, die Vorbereitungen für Active Directory und die Domänen erneut durchzuführen:

Setup /PrepareAd /IAcceptExchangeServerLicenseTerms /OrganizationName:<Organisationsname>
Setup /PrepareAllDomains /IAcceptExchangeServerLicenseTerms

Tipp 7 – System-Benutzerpostfächer verschieben und neu erstellen

Wenn Systempostfächer nicht mehr ordnungsgemäß funktionieren, meldet Exchange Fehler und einige Funktionen sind nicht mehr gegeben. Häufig liegt es daran, dass es die Systembenutzer noch gibt, aber die Postfächer nicht mehr funktionieren. Teilweise liegt dies an den Arbitration-Postfächern. Diese können mit dem folgenden CMDlet angezeigt werden:

Get-Mailbox -Arbitration | Select Name,Database

Eine Reparatur ist anschließend mit folgendem Befehl möglich:

Set-Mailbox <Fehlerhaftes Postfach> -Database <Neue Datenbank> -Arbitration

Diese Vorgehensweise funktioniert auch mit anderen Postfächern:

Get-Mailbox | Select Name,Database
Set-Mailbox <Fehlerhaftes Postfach> -Database <Neue Datenbank>

Hier kann es hilfreich sein, wenn die Exchange-Benutzer aus Active Directory gelöscht und anschließend über den Befehl Setup.exe /PrepareAd /IAcceptExchangeServerLicenseTerms des Exchange-Installationsprogramms neu erstellt werden. Um Postfächer neu anzulegen, kann auch der folgende Befehl verwendet werden:

Get-User | Where {$_.Name -like "SystemMailbox*"} | Enable-Mailbox –Arbitration
Get-User | Where {$_.Name -like "FederatedEmail*"} | Enable-Mailbox -Arbitration

Tipp 8 – Probleme mit der Kommunikation zwischen Domänencontroller und Exchange

Mit Get-ExchangeServer |fl *Domain* lässt sich die Active Directory-Domäne anzeigen, in der sich das Konto des Exchange-Servers befindet. Um langsame Domänencontroller auszuschließen, kann Exchange eine statische Verbindung mit bestimmten Domänencontrollern aufbauen. Die Einstellungen dazu werden in der Exchange Management Shell vorgenommen:

Set-ExchangeServer -Identity <Exchange-Server> -StaticDomainControllers <Domänencontroller> -StaticGlobalCatalogs <Globaler Katalog>

Zusätzlich gibt es hier die Möglichkeit, langsame Domänencontroller oder Domänencontroller, die weit entfernt sind, von Exchange auszuklammern. Dazu wird die Option -StaticExcludedDomainControllers verwendet. Die Syntax des Befehls ist ansonsten identisch. Mit Get-AdServerSettings lassen sich Informationen bei der Kommunikation zwischen Active Directory und Exchange anzeigen. Hier sind auch Anpassungen der einzelnen Optionen möglich:

Set-AdServerSettings -PreferredServer <Servername>

Der Befehl Get-AdSite zeigt den Active-Directory-Standort an, dem der aktuelle Exchange-Server zugewiesen ist. Wird hier ein falscher Standort angezeigt, sind Leistungsprobleme in Exchange schnell erklärt. Der Standort kann in der Exchange Management Shell aber auch gesteuert werden:

Set-Adsite <AD-Standort> -HubSiteEnabled $true

Tipp 9 – Sicherheitslücken identifizieren und beheben: Exchange On-Premises Mitigation Tool

Es gibt bei Exchange in allen aktuellen Versionen verschiedene Sicherheitslücken, für die Microsoft auch bereits Updates zur Verfügung stellt. Sind diese Updates auf einem Server nicht installiert, können Angreifer das System erfolgreich kapern. Microsoft stellt auf Github Skripte für die Exchange Management Shell zur Verfügung, die schnell ermitteln, ob ein Exchange-Server angegriffen werden kann und auch bereits angegriffen wurde. Nach dem Download reicht es aus, das Exchange On-Premises Mitigation Tool (EOMT) auf dem Server über das Skript „eomt.ps1“ zu starten.

Tipp 10 – HAFNIUM: Bekannten Exploit in Exchange finden

Die Hackergruppe Hafnium hat einen Zero-Day-Exploit in Exchange entdeckt und ausgenutzt. Microsoft geht auf der Seite „HAFNIUM targeting Exchange Servers with 0-day exploits“ ausführlicher darauf ein. Microsoft stellt das Skript „Test-ProxyLogon.ps1“ zur Verfügung. Mit diesem kann überprüft werden, ob auf dem Server die entsprechende Sicherheitslücke offen ist. Wenn ja, sollte diese schnellstmöglich geschlossen werden. Nach dem Download des Skriptes wird die Ausführung aus dem Downloadverzeichnis in der Exchange Management Shell vorgenommen. Die Syntax dazu lautet:

Get-ExchangeServer | .\Test-ProxyLogon.ps1 -OutPath $home\desktop\logs

Der Befehl testet alle Exchange-Server in der Organisation. Soll nur der lokale Server getestet werden, reicht es aus, das Skript lokal zu starten:

.\Test-ProxyLogon.ps1 -OutPath $home\desktop\logs

(ID:47498533)

Über den Autor

 Thomas Joos

Thomas Joos

Freiberuflicher Autor und Journalist