Migration / Zusammenführung von zwei Domänen - Praxiserfahrung

Aus ITwiki
Version vom 19. Oktober 2012, 11:20 Uhr von Flo84 (Diskussion | Beiträge)

Wechseln zu: Navigation, Suche

Zwar findet man im Internet einige Beiträge darüber, wie man eine Active Directory Domäne migeriert (auch Microsoft bietet ein Handbuch hierfür zum kostenlosen Download an), ich möchte hier meine praktische Erfahrung bei der Migration unter Windows Server 2008 R2 und mit Windows 7 Clients festhalten - vielleicht hilft's dem ein oder anderen weiter.

Vorüberlegungen / Vorbereitungen

Nachfolgen ein paar Punkte, die vorbereitend eingerichtet werden sollten/können:

  1. Vertrauensstellung zwischen der Quell- und Zieldomäne (bidirektional)
  2. Die Vertrauensstellung setzt eine funktionierende DNS Infrastruktur auf beiden Seiten voraus
  3. Das Active Directory Migration Tool ADMT V3.2, installiert auf einem Windows Server 2008 R2
  4. Ein Domänen-Admin Account in beiden Domänen mit demselben Benutzernamen und Kennwort, z. B. der Benutzer mig
  5. Lade dir das Tool Jose herunter und halte damit den aktuellen Stand der Quelldomäne vor der Migration fest - kann man später z. B.

für die Anpassung des ADs der Zieldomäne verwenden...

Ich werde hier nicht erklären, wie man eine Vertrauensstellung einrichtet - das setze ich als Grundkenntnisse voraus. Jedem anderen Leser dieses Artikels empfehle ich http://www.google.de oder einen externen

Berater hinzuzuziehen.

Was gilt es nun zu beachten?

  1. Die Version des zu verwendenden/installierenden ADMT ist abhängig davon, welche Clients (XP, Vista, 7) man migrieren möchte bzw. auf welchem Server das Tool installiert wird. Das ADMT ist abwärtskompatibel zu Client-Systemen, die Version 3.2 ist aber für die Installation auf Windows Server 2008 R2 vorgesehen
  2. Um ADMT V3.2 verwenden zu können, muss die Domänen-Funktionsebene beider Domänen mindestens Windows Server 2003 lauten
  3. Das ADMT ist in der Zieldomäne auf einem Windows Server 2008 R2 Rechner zu installieren
  4. ADTM setzt einen installierten SQL-Server voraus, hier reicht die kostenlose SQL Server 2008 Express Edition SP1
  5. Builtin-Gruppen wie etwa "Domänen-Admins" können nicht migriert werden, näheres dazu weiter unten
  6. Sollten in der Quelldomäne Konten oder Gruppen existieren, die auch in der Zieldomäne vorhanden sind, so sind diese Prinzipale umzubenennen; andernfalls läuft man Gefahr, dass entweder ein Fehler bei der Migration auftritt ODER (was schlimmer wäre) einem Account der Zieldomäne die SIDs und AD-Attribute des Quellkontos gegeben werden (Voraussetzung hier ist natürlich, dass im ADMT der Haken bei In Konflikt stehende Objekte migrieren und zusammenführen gesetzt ist...)
  7. Erteile dem Benutzer mig aus beiden Domänen (Quell- und Zieldomäne!) das Recht, sich am ADMT-Server anmelden zu können; mit dem Konto der Quelldomäne wird nämlich das ADMT gestartet, andernfalls wäre es z. B. nicht möglich, den ADMT Agent, der später auf den Clients der Quelldomäne zur Migration des Computerkontos benötigt wird, zu installieren
  8. Bei der Migration der Benutzer inkl. zugehöriger Gruppen (Haken im ADMT) werden alle Objekte in ein und dieselbe OU der Zieldomäne kopiert - beachte oben den Download zu Jose...

Als netter Admin sollte man seine User rechtzeitig über die bevorstehende Migration informieren. Warum? Sollten Monatsabschlüsse anstehen, man die Migration genau an einem Wochenende vorher durchführen und es am Montag danach zu Problemen kommt, hat man Ärger am Hals

Falls ein Exchange Server in der Quelldomäne existiert, der auch umgezogen werden muss, würde ich eine 3-Schritte-Migration empfehlen:

  1. Schritt: Migration von Benutzer, Gruppen und Client-Computer (kann parallel zur bestehenden Domäne durchgeführt werden)
  2. Schritt: Migration des Exchange Servers
  3. Schritt: Migration der Server der Quelldomäne

Ich werde die vorgehensweise basierend dieser 3-Schritte-Migration nun dokumentieren.

Benutzer- und Gruppenmigration

Nachdem das ADMT erfolgreich installiert, Domänenfunktionsebene geprüft und der "mig"-User in beiden Domänen angelegt wurde, kann man mit der Benutzer- und Gruppenmigration starten. Sollten in der Zieldomäne für User der Quelldomäne bereits Konten existieren, empfiehlt sich, die Benutzerkontenumstellung in zwei Schritte zu gliedern:

  1. Schritt: Migration der Benutzer, die in der Zieldomäne noch kein Konto haben
  2. Schritt: Migration der User, die ein Konto in der Zieldomäne haben

Die Konstellation mit vorhandenen Konten hat man z. B. dann, wenn Mitarbeiter in der Zieldomäne mit einer Anwendung arbeiten, die ein AD-Account in der Zieldomäne voraussetzt.

Suche also zunächst doppelte Benutzerkonten, Gruppen und Computer heraus und benenne diese in der Quelldomäne um. Natürlich müssen Benutzerkonten nicht umbenannt werden, solange Quell- und Zielbenutzer demselben Anwender gehören (siehe oben).

Schritt 1: Benutzermigration bei nicht vorhandenen Zielkonten

Melde dich am ADMT-Server mit dem mig-Account der Quelldomäne (!) an und starte die ADMT Konsole:

  1. Rechte Maus auf Active Directory-Migariontsprogramm und Assistent zum Migrieren von Benutzerkonten
  2. Wähle Quell- und Zieldomäne aus
  3. Wähle die Benutzerkonten der Quelldomäne aus, die in der Zieldomäne nicht existieren; es empfiehlt sich vielleicht, testhalber erst einen Account zu migrieren - wenn möglich ein Account, der nicht mehr groß verwendet wird...
  4. Gib die Zielorganisationseinheit an - beachte: alle ausgewählten Benutzer und Gruppen landen in dieser OU, daher wäre es von Vorteil, mit Jose das alte AD zu dokumentieren
  5. Kennwortoptionen: es gäbe die Möglichkeit, einen Passwort Export Server (PES) einzusetzen und von der Quelldomäne auch die Kennwörter zu migrieren. Das habe ich außen vor gelassen, da ich eine schrittweiße Migration mache und den neuen Account sowieso erst als Admin einrichten muss (siehe weiter unten); daher wählte ich die Option Komplexe Kennwörter generieren, für das migrierte Konto setzte ich dann dieses Passwort zurück und richtete so den Account der Zieldomäne fertig ein
  6. Kontoaktualisierung: spricht eigentlich für sich; da wir eine Migration über SIDHistory-Attribut machen, bitte den Haken bei Benutzer-SIDs zur Zieldomäne migrieren setzen :-)
  7. Benutzerkonto der Quelldomäne für den Migrationsvorgang angeben - hier verwende ich den User mig
  8. Die nächsten Optionen sind interessant:
    1. Servergespeicherte Profile konvertieren: diese Option lasse ich so stehen (kein Haken), da beim Migrieren des File Server Computerkontos, auf welchem die Profile abgelegt sind (sofern man mit Roaming Profiles arbeitet...), die Rechte ohnehin entsprechend gesetzt werden
    2. Benutzerrechte aktualisieren: hat der zu migrierende Account in der Quelldomäne etwa das Recht, Rechner in die Domäne hinzuzufügen, Systemzeit zu ändern etc., so werden die Rechte mitgenommen; ich habe den Haken gesetzt...
    3. Zugeordnete Benutzergruppen migrieren - Migrierte Objekte aktualisieren: dürfte klar sein, Haken setzen
    4. Gruppenmitgliedschaften der Benutzer korrigieren: Haken setzen
  9. Im nächsten Step könnte man bestimmte AD-Attribute der zu migrierenden Konten von der Migration ausschließen, z. B. wenn in der Zieldomäne der Account bereits existiert, hier ein Profilpfad hinterlegt ist und dieser auch weiter gültig sein soll, könnte man das Attribut profilePath ausschließen; ACHTUNG: der Terminalserverprofilpfad ist ein Binärfeld und kann hier NICHT ausgeschlossen werden, das muss später per Hand korrigiert werden!
  10. Quellobjekte nicht migrieren, wenn in der Zieldomäne ein Konflikt ermittelt wird: da ich in 2 Schritte migriere (nicht vorhandene und vorhandene Accounts) und zunächst nicht vorhandene Konten migrieren möchte, bitte diese Option auswählen; so sieht man gleich, ob man hier in Konflikt kommen würde. Der Grund nochmal: existiert in der Quelldomäne ein Konto max.mustermann, in der Zieldomäne ebenfalls ein max.mustermann und würde man diese, in Konflikt stehenden Konten zusammenführen, obwohl es sich um zwei ganz unterschiedlichen Menschen handelt, hat man ein Problem :-) Daher die 2-Schritte-Migration von Benutzerkonten
  11. Nach Klick auf Fertig stellen sollte die Migration eigentlich ohne Fehler durchlaufen, andernfalls das Protokoll durchlesen und analysieren

Schritt 2: enutzermigration bei vorhandenen Zielkonten

Nochmal: existiert in der Quelldomäne ein Konto max.mustermann, in der Zieldomäne ebenfalls ein max.mustermann und würde man diese, in Konflikt stehenden Konten zusammenführen, obwohl es sich um zwei ganz unterschiedlichen Menschen handelt, hat man ein Problem. Bis zum Schritt Konfliktverwaltung ist das, was unter Schritt 1 steht, identisch. Wähle bei Konfliktverwaltung aber nun In Konflikt stehende Objekte migrieren und zusammenführen und setzte den Haken bei Zusammengeführte Objekte in die angegebene Zielorganisationseinheit verschieben, um gleich zu sehen, welche Konten betroffen sind.

Sicherheitskonvertierung NTFS- und Freigaberechte

Bis zum jetzigen Zeitpunkt hat sich für die Benutzer der Quelldomäne nichts geändert - der Schritt Benutzer- und Gruppenmigration kann im Live-Betrieb durchgeführt werden. Bevor man aber nun die Computerkonten umstellt und - damit verbunden - die User dazu "zwingt", sich an der neuen Domäne anzumelden, muss man die NTFS- und Freigaberechte der Server der Quelldomäne um die Konten und Gruppen der migrierten Zielobjekte ergänzen. Hierzu dient der Sicherheitskonvertierungs-Assistent vom ADMT - bitte starten:

  1. Zuvor migrierte Objekte: auswählen
  2. Domänenauswahl: bedarf keiner Erklärung
  3. Computer aus Domäne auswählen: klaro...
  4. computerauswahl: dürfte auch einleuchtend sein
  5. Objekte konvertieren: hier ist was zu erklären
    1. Dateien und Ordner: sollte klar sein, hier werden die NTFS-Rechte entsprechend für die neuen Zielobjekte auf den Computern der Quelldomäne gesetzt
    2. Lokale Gruppen: macht nicht viel / keinen Sinn, lokale Gruppen auf Servern sollte man evtl. per Hand anpassen
    3. Drucker: logisch, Rechte auf Printservern sollten gesetzt werden, sodass die migrierten User drucken können
    4. Registrierung: es macht keinen Sinn, die Registry auf Servern aktualisieren zu lassen - hier sollten die migrierten Konten keine speziellen Rechte haben
    5. Freigaben: auch selbsterklärend, natürlich sind Freigaberechte anzupassen
    6. Benutzerprofil: hierbei handelt es sich um die Benutzerprofile auf den Servern - obacht! Nicht um die Roaming Profiles...
    7. Benutzerrechte: auch hier ist kein Haken zu setzen
  6. Hinzufügen: da die alten Konten und Gruppen aktiv arbeiten und die neuen Accounts nach und nach aktiviert werden, sollte diese Option gewählt werden.
  7. Nach Klick auf Fertig stellen wird die Sicherheitskonvertierung gestartet.

Ein Fehler, der bei mir auftrat, hatte damit zu tun, dass die Länge eines Dateipfades über 253 Zeichen lang war. In diesem Fall bitte das Protokoll durchlesen und die Pfade so anpassen, dass diese für die Migration < 253 Zeichen sind.

Sollte ein Fehler auftreten, einfach den Sicherheitskonvertierungs-Assistenten neu starten und laufen lassen.

Anmerkung: diese Sicherheitskonvertierung muss immer dann ausgeführt werden, wenn ein weiterer Benutzer oder Gruppe aus der Quell- in die Zieldomäne kopiert wurde. Der Assistent ergänzt nämlich dadurch entsprechend die Rechte der Server der Quelldomäne um die SIDs der neuen, migrierten Benutzer und Gruppen der Zieldomäne.

Dienstkonten, Geplante Tasks / Aufgabenplanung und SQL Agent Jobs

Benutzerkonten für Dienste, Geplante Tasks bzw. Aufgabenplanung und SQL Agent Jobs werden NICHT automatisch migriert bzw. umgestellt - hier ist Handarbeit gefragt. Werfe einen Blick in die Diensteverwaltung, die Geplanten Tasks und den SQL Agent jedes Servers und stelle sicher, dass diese nach der Migration entsprechend mit den jeweiligen Konten der Zieldomäne ausgeführt werden.

Dienstkonto für Symantec BackupExec

Mir wurde geraten, vor Umstellung des Backup-Servers in die neue Domäne das Dienstkonten für BackupExec auf ein Konto der neuen Domäne umzustellen - nachträgliche Änderungen sind scheinbar schwierig / unmöglich, eine Neuinstallation wäre notwendig.

Gruppenmigration

In aller Regel sollten auch alte, nicht mehr existierende Benutzeraccounts inkl. deren Gruppen migriert werden. Dadurch vermeidet man, separat nochmal die Gruppen migrieren zu müssen. Nochmal: Builtin-Gruppen wie etwa Domänen-Admins können NICHT migriert werden. Hier ist Handarbeit gefragt: alle Mitglieder müssen in der Zieldomäne per Hand nachgepflegt werden.

Computermigration: umstellen der Client-Rechner und der Domänenameldung

Den Schritt Benutzer- und Gruppenmigration und die Sicherheitskonvertierung kann man im "Live-Betrieb" machen, also auch dann, wenn User in der Quelldomäne nach wie vor arbeiten. Wenn man nun das Computerkonto umstellt, sollte/muss man auch die Benutzerkonten der Zieldomäne zum Anmelden verwenden. In meiner Umgebung führte ich das Umstellen der Computeraccounts nach und nach durch, so kommt es nicht zum "Wochenend-Stress". Starte den Computermigrations-Assistenten:

  1. Domänen auswählen
  2. Computer aus Domäne auswählen
  3. Wähle den entsprechenden Rechner aus
  4. Gib die Ziel-OU an, in der das Computerkonto erstellt werden soll
  5. Im Gegensatz zur Sicherheitskonvertierung für Server, wähle bei Objekte konvertieren alles aus
  6. Bei den Optionen für die Sicherheitskonvertierung auf Hinzufügen stellen - tut ja keinem weh...
  7. Die Minuten im nächsten Schritt zielen darauf ab, dass die DCs der Zieldomäne in diesem Zeitraum miteinander repliziert haben und das Konto somit auf jedem DC bekannt ist
  8. Wie beim Benutzerkonto auch, kann man wieder bestimmte Attribute rausfiltern, die nicht migriert werden sollen
  9. Quellobjekte nicht migrieren, wenn in der Zieldomäne ein Konflikt ermittelt wird: klar, wenn dasselbe Computerkonto in der Zieldomäne existiert, sollte man den PC-Namen des Quellobjektes vorab anpassen

Nachdem das Computerkonto in der neuen Domäne erstellt wurde und man beim Migrationsstatus auf Schließen klickt, wird ein weiterer Assistent automatisch aufgerufen. Dieser installiert auf dem Zielsystem dann einen Agent, welcher die Domänenmitgliedschaftsänderung, Rechtevergabe etc. durchfürt.

Wichtig: der Client muss zum Zeitpunkt der Migration eingeschalten und am Besten vorher mal neu gestartet worden sein! Durch den Neustart soll verhindert werden, dass Dateien im Benutzerprofil im Zugriff sind - sonst kommt es während der Migration zu Fehlern.

In dem Assistenten wähle bei Agent-Aktionen die Option Vorüberprüfung und Agent ausführen aus, klicke dann auf Starten, um den Vorgang auszuführen.

Erstanmeldung in der neuen Domäne

Vorarbeiten

Benutzer, Gruppen und Client-Rechner sind nun in der Zieldomäne, auf den Servern der Quelldomäne wurde die Sicherheitskonvertierung fehlerfrei ausgeführt. Bevor man sich das erste mal nun anmeldet, sollte noch geprüft werden:

  1. Passen die zugeordneten Gruppenrichtlinien für Benutzer und Computer?
  2. Wurden die Anmeldeskripte aus der alten Domäne (sysvol) in's sysvol der neuen Domäne kopiert?
  3. Passt der Pfad zum Terminalserverprofil?
  4. Wurde das Zufallskennwort zurückgesetzt?

Erstanmeldung

Meldet man sich - unter Beachtung der Vorarbeiten - nun am migrierten PC mit dem migrierten Benutzerkonto an, sollte das auch problemlos klappen. Prüfe, ob die Laufwerke verbunden wurden, Gruppenrichtlinien ziehen, der User drucken kann, Programmaufrufe funktionieren usw. Auch ein Blick in die Ereignisanzeige kann auf Probleme / Fehler hinweisen.

Besonderheiten für Exchange und Outlook

Um dem migrierten User nun Zugriff auf sein Postfach am alten Mailserver zu gewähren, müssen ein paar Postfach-Rechte angepasst werden. Ich gehe davon aus, dass ein Exchange 2007 oder 2010 zum Einsatz kommt, starte die Powershell am Server und führe folgende Befehle aus

Add-MailboxPermission "<Postfachname>" -User "neue-domäne\migrierter_user" -AccessRights FullAccess
Add-ADPermission -Identity "<Postfachname>" -User "neue-domäne\migrierter_user" -ExtendedRights Send-As
Add-ADPermission -Identity "<Postfachname>" -User "neue-domäne\migrierter_user" -ExtendedRights Receive-As

Achtung: bis das Recht, Mails zu versenden, zieht, kann einige Zeit vergehen - eventuell bis zu einer Stunde! Starte nun Outlook und vergewissere dich, dass der Benutzer das Postfach problemlos öffnen kann.

Beim Versand kann es zur genannten Verzögerung kommen, hier einfach immer wieder mal eine Testmail versenden probieren.

Führe oben aufgezeigte Befehle für alle Postfächer, auf die der migrierte User Zugriff haben soll, aus.

Achtung - Outlook NK2-Dateien: wenn man in das "An"-Feld von Outlook einen Empfänger eintippt, wird - sollte man bereits mal eine Mail an diesen Empfänger verschickt haben - die Adresse in einer Vorschlagsliste angezeigt. Diese Datei (bis Outlook 2007, ab Outlook 2010 im Menü unter "Datei" zu finden) muss gelöscht werden, da es sonst zu Effekten kommt, wie: "Die Mail ist beim Empfänger nie angekommen". Wie man hier vorgeht, findest du im Beitrag Outlook-Cache für Adressen löschen.

Problem mit defekten bzw. nicht funktionierenden Benutzerprofilen

Zwar trat bei mir keiner der genannten Fehler auf, unser Support-Partner wies aber auf eventuelle Probleme mit Benutzerprofilen hin (vielen Dank!).

Effekte:

  1. User kann per Regedit unter HKCU\Software keinen neuen Key erstellen
  2. Tastaturlayout ist Englisch
  3. Keine Desktophintergrund
  4. Outlook-Konfig fehlerhaft
  5. Sofortige Abmeldung bei Windows 7-Rechnern
  6. Keine Netzlaufwerke
  7. ...

Behebung:

  1. User abmelden und als MAX-AICHER-Administrator annmelden
  2. Regedit starten und auf HKEY_USERS klicken
  3. Im Menü auf "Datei->Struktur laden..." und die NTUSER.DAT aus dem Profilverzeichnis des Problembenutzers auswählen (C:\Users\... oder c:\Dokumente und Einstellungen\...).
  4. Als Name einen beliebigen Namen, z.B. Test wählen
  5. Über das Kontextmenü der neuen Struktur "Berechtigungen..." wählen und dem Problembenutzer Vollzugriff erteilen
  6. Die folgenden Registrykeys löschen
    1. HKEY_USERS\Test\Software\Policies
    2. HKEY_USERS\Test\Software\Microsoft\Windows\CurrentVersion\Policies
    3. HKEY_USERS\Test\Software\Microsoft\Windows\CurrentVersion\Group Policy
  7. Auf HKEY_USERS\Test klicken und über das Menü "Datei->Struktur entfernen..."
  8. Als Administrator abmelden und als Benutzer anmelden. Kontrolle über Regedit und neuen Key innerhalb von HKCU\Software anlegen und wieder löschen

SID-Leichen entfernen

Auch dieser Tipp stammt von unserem Support-Partner.

Falls trotz aller Mühe SID-Leichen im Dateisystem entstanden sind, kann durch das Tool subinacl (Download über die Microsoft-Webseite) die SIDs der Quell-Domain durch die SIDs der Ziel-Domain ausgetauscht werden. Dazu dient der Befehl

subinacl.exe /subdirectories <laufwerk>:\*.* /replace=<SID in der Quelldomain>=<SID in der Zieldomain>

Dabei können folgende BuildIn-SIDs bei der Zuordnung hilfreich sein:

  1. S-1-5-21-<Domainanteil>-500 = Administrator
  2. S-1-5-21-<Domainanteil>-512 = Domänen-Admins
  3. S-1-5-21-<Domainanteil>-513 = Domänen-Benutzer
  4. S-1-5-21-<Domainanteil>-514 = Domänen-Gäste
  5. S-1-5-21-<Domainanteil>-515 = Domänencomputer
  6. S-1-5-21-<Domainanteil>-516 = Domänencontroller

Beispiel:

subinacl.exe /subdirectories d:\*.* /replace=S-1-5-21-414998999-842725246-687007330-513=S-1-5-21-1644417447-675588072-1845911577-513

Den Domänenteil der Quell- und Zieldomäne findet man am Leichtesten raus, indem man sich an einem Quellserver als Domänen-Admin anmeldet, in die Registry unter

HKEY_USERS\

Hier sieht man schon die SIDs sämtlicher User, die an dem Server angemeldet waren - interessant sind jene:

S-1-5-21-414998999-842725246-687007330-<...>

Was der Domänen-Teil ist - siehe oben. Dasselbe mache bitte auch an einem Server der neuen Domäne, hier lautet dann die SID z. B.

S-1-5-21-1644417447-675588072-1845911577-<...>