Exchange Hybrid: doppelte Postfächer löschen – Lokal
Wird in einer Exchange Hybrid Umgebung das Postfach nicht in der korrekten Reihenfolge angelegt, kann es durchaus passieren, dass der Nutzer sowohl in On-Premises, als auch in Exchange Online ein Postfach besitzt. Das ist ein Zustand, der wohl nur in den wenigsten Konstellationen erwünscht ist. In diesem Fall muss eines der beiden Postfächer gelöscht werden – wir schauen uns heute das Löschen des lokalen Postfaches an. Solltet ihr das lokale Postfach hingegen behalten und ausschließlich jenes in Exchange Online löschen wollen, kann euch folgender Artikel weiterhelfen. Dort wird euch auch erklärt, wie es zu dieser Konstellation überhaupt kommen kann und welche negativen Auswirkungen durch eine fehlerhafte Anlage entstehen können.
Lokales Postfach entfernen
Postfächer überprüfen
Im ersten Schritt verifizieren wir, ob der Nutzer tatsächlich zwei Postfächer besitzt. Dazu verbinden wir uns einmal auf die On-Premises Exchange Management Shell für die lokale Abfrage und auf die Exchange Online PowerShell, um auch die O365 Cloud anzusprechen.
#Exchange Online [PS] C:Windowssystem32> Get-Mailbox test01@test.com Name Alias Database ---- ----- -------- 32b2bd38-24a0-4ed1-9c5... test01 DEUP281DG201-db215 #Exchange On-Premises [PS] C:Windowssystem32>Get-Mailbox -Identity test01@test.com Name Alias ServerName ProhibitSendQuota ---- ----- ---------- ----------------- Test01 test01 exc8201 Unlimited
Somit haben wir schon einmal verifiziert, dass der Nutzer test01 einmal ein Postfach in O365, als auch am On-Premises Exchange besitzt. In unserem Beispiel möchten wir das lokale Postfach entfernen und ausschließlich jenes in der Microsoft Cloud behalten.
Lokales Postfach entkoppeln
Nun müssen wir in der Exchange Management Shell das lokale Postfach vom Benutzer entkoppeln. Wichtig ist hierbei, das Postfach keinesfalls über das ECP zu löschen, da dabei auch der damit verbundene Active Directory Benutzer gelöscht wird. Bevor wir das lokale Postfach jedoch entkoppeln und damit auch die AD Exchange Attribute löschen, exportieren wir mit folgendem Befehl die wichtigsten Informationen:
[PS] C:Windowssystem32>Get-Mailbox test01@test.com | fl EmailAddresses, LegacyExchangeDN EmailAddresses : {smtp:test01@test.de, SMTP:test01@test.com, smtp:test01-smtp@test.com} LegacyExchangeDN : /o=Test/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=9aee20dc504d453781f27fdfade08396-test01
Die daraus resultierenden Informationen benötigen wir für die späteren Schritte und sollten zwischengespeichert werden.
Mit folgendem PowerShell Befehl wird das On-Premises Postfach entkoppelt:
Disable-Mailbox test01@test.com
Aus Sicht des On-Premises Active Directories besitzt der Benutzer test01 somit kein Postfach mehr. Das ist aber natürlich nur teilweise korrekt, denn in Office365 existiert ein Exchange Online Postfach für diesen Nutzer. Diese Verbindung zwischen Azure AD und lokalem AD muss im nächsten Schritt wiederhergestellt werden.
Remote Postfach erstellen
Als nächstes erstellen wir wie gewohnt eine Exchange Online Remote Mailbox für unseren AD-Nutzer. Dieser Befehl muss ebenfalls über die Exchange Management Shell ausgeführt werden.
Enable-RemoteMailbox test01@test.com -RemoteRoutingAddress test01@test.mail.onmicrosoft.com
Bitte beachtet dabei, dass die RemoteRoutingAddress Domain entsprechend eurer Umgebung angepasst werden muss.
Alias Adressen hinzufügen
Damit das lokale AD-Objekt die gleichen Alias Adressen (ProxyAddresses) wie im Azure AD besitzt, müssen diese manuell hinzugefügt werden. In unserem Beispiel besitzt der Nutzer test01 noch folgende Alias Adressen in Exchange Online:
- test01-smtp@test.com
- test01@test.de
Mit dem nachfolgenden Befehlen werden sie im On-Premises Active Directory hinzugefügt:
Set-RemoteMailbox -Identity test01@test.com -EmailAddresses @{add="test01-smtp@test.com"} Set-RemoteMailbox -Identity test01@test.com -EmailAddresses @{add="test01@test.de"}
X500 Adresse hinzufügen
Die X500er Alias Adresse ergibt sich aus dem LegacyExchangeDN Attribut (wurde im ersten Schritt exportiert), welches auch noch heute von Outlook zum Mailversand innerhalb der Organisation verwendet wird. Solltet ihr also auf einen NDR (Non-Delivery Report) mit dem Fehler IMCEAEX stoßen, habt ihr höchstwahrscheinlich nach einer Migration (oder Change des Users) die X500er Alias Adresse nicht übernommen und der Exchange kann die von Outlook im Cache behaltenen X500-Adresse nicht korrekt zuordnen. Um ein solches Problem von vornherein zu vermeiden, setzen wir die X500-Adresse mit folgendem Befehl:
Set-RemoteMailbox -Identity test01@test.com -EmailAddresses @{add="x500:/o=Test/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=9aee20dc504d453781f27fdfade08396-test01"}
Exchange Online GUID übernehmen
Der letzte Schritt ist nur notwendig, falls das Postfach in Zukunft wieder auf den On-Premises Exchange migriert werden soll. Um allerdings solche Fehler auszuschließen, empfehle ich, auch die Exchange Online Mailbox GUID direkt zu übernehmen. In vielen Fällen erspart euch das ein nachträgliches Debugging und Analysieren von dadurch auftretenden Komplikationen.
Dazu benötigen wir die Mailbox GUID des Exchange Online Postfaches. Der nun folgende Befehl wird also in der Exchange Online PowerShell ausgeführt:
Get-Mailbox test01@test.com | fl *ExchangeGUID* ExchangeGuid : 51ce4a1d-8cc2-47b5-93c9-adf08f4ff4eb
Abschließend muss die ExchangeGUID nur noch am On-Premises Exchange gesetzt werden:
Set-RemoteMailbox test01@test.com -ExchangeGuid 51ce4a1d-8cc2-47b5-93c9-adf08f4ff4eb
Azure AD Connect Sync
In den meisten Umgebungen werden die lokalen AD-Objekte mittels Azure AD Connect mit O365 synchronisiert. Sollte das auch bei euch der Fall sein, müsst ihr nur noch den nächsten Azure AD Connect Sync-Cycle abwarten (standardmäßig alle 30 Minuten) und die lokal gesetzten Änderungen werden mit dem Azure AD synchronisiert.
Fazit
Mit den oben genannten Schritten lassen sich also problemlos Duplikate eines Postfaches in der On-Premises Umgebung entfernen. Übrig bleibt dann nur noch ein korrekt konfiguriertes und verknüpftes Exchange Online Postfach.
Um solche Fehler gleich schon bei der Anlage zu vermeiden, empfehle ich die korrekte Vorgehensweise bei der Postfacherstellung einzuhalten. Damit erspart man sich zum einem Arbeitsaufwand und zum anderen stellt man sicher, dass das lokale Active Directory mit dem Azure AD auf dem gleichen Stand sind.