Главная > Windows Server > Упрощенная процедура междоменной миграции

Упрощенная процедура междоменной миграции

Описанный в данной статье сценарий междоменной миграции объектов AD является квинтэссенцией руководств по миграции, представленных на ресурсах Microsoft. Многих системных администраторов отпугивает перенос объектов AD между лесами/доменами из-за громоздкости существующих руководств по данному процессу. В существующих публикациях раскрывается 100% возможностей средств Active Directory Migration Tool, немалая часть которых редко используется в реальных ситуациях, что и делает процесс подготовки к миграции долгим для многих администраторов, сталкивающихся с этим впервые. Классический сценарий требует избыточности в плане подготовки исходного и конечного доменов.

В представленном сценарии описывается процесс межлесовой миграции с минимальными вмешательствами в инфраструктуру исходного домена (например, без доверительных отношений), что несет в себе множество преимуществ. Перед выполнением данного сценария все же не стоит пренебрегать резервированием исходного и целевого доменов и созданием планов миграции и отката в исходную точку. Данная схема работает при минимальных логических изменениях в процессе для доменов любого уровня и на любых ОС, начиная с Windows Server 2000, в том числе и для Small Business Server’s и Essential Business Server’s.

В описываемом сценарии представлено два корневых домена под управлением ОС Windows Server 2008 SP2. Исходный домен SOURCE.LOCAL (FSMO-контроллером которого является сервер dc1.source.local, IP 10.8.2.251) содержит 158 пользователей и 8 групп безопасности, в которых они распределены. Конечный домен TARGET.LOCAL (dc2.target.local, IP 10.8.2.252). Цель – перенести все учетные записи пользователей (с сохранением паролей), группы безопасности и рабочие станции в конечный домен.

  1. Подготовка исходного домена заключается в настройке DNS-пересылок и отключении DHCP-сервера. Все существующие пересылки необходимо удалить и создать обычную пересылку, указывающую на контроллер целевого домена.

    1

    Причем нам необходимо, чтобы IP-адрес контроллера целевого домена ссылался на его имя в FQDN-формате, для чего нужно добавить соответствующую PTR-запись в обратную зону.

    Если же исходный домен-контроллер находится под управлением ОС Windows Server 2003, то можно ограничиться созданием пересылки на FQDN конечного домена без добавления в обратную зону PTR-записи контроллера конечного домена.

  2. Подготовка целевого домена состоит в создании conditional forwarder’а, задающего соответствие имени исходного домена SOURCE.LOCAL его контроллеру dc1.source.local и включении DHCP-сервера в конечном домене. Все существующие пересылки также необходимо удалить. Если есть возможность использовать DHCP-сервер на активном сетевом оборудовании, то лучше использовать его.

    2
    3

    Наличие PTR-записи исходного домен-контроллера в обратной зоне также является необходимым условием.

    Если целевой домен находится под управлением ОС Windows Server 2003, то в DNS достаточно ограничиться пересылкой на исходный домен по IP-адресу контроллера домена. В обратной зоне никаких изменений вносить не требуется при этом.

    4

  3. Пароли для администраторов доменов должны отличаться. Также в обоих доменах должны быть одинаковые групповые политики в отношении сложности паролей. На время миграции настоятельно рекомендуется отключить встроенные брэндмауэры на клиентских ПК. Соответственно, в конечном домене также должна быть активной политика, отключающая службы Windows Firewall и Internet Connection Sharing (ICS). Это может сильно повлиять на работу агента миграции клиентских ПК, который будет закачиваться на них и совершать необходимые операции.
  4. Перед началом процесса миграции все клиентские ПК должны быть включены и разлогинены. Никто не должен работать.
  5. Если в исходном домене находятся ПК под управлением ОС Windows XP, Windows 2000 или Windows Server 2003, а конечный домен находится под управлением контроллеров с ОС Windows Server 2008, то необходимо на всех контроллерах в целевом домене создать/изменить ключ в реестре:

    Registry path: HKLM\System\CurrentControlSet\Services\Netlogon\Parameters
    Registry value: AllowNT4Crypto
    Type: REG_DWORD
    Data: 1

  6. После создания пересылок необходимо установить средство ADMT на целевой контроллер в зависимости от версии ОС. Для Windows Server 2008 подходит только версия 3.1 (Active Directory Migration Tool version 3.1). Для всех остальных – любые вплоть до третьей (здесь мы намеренно не рассматривает вариант, когда целевой контроллер домена находится под управлением NT4). После установки средства ADMT на конечный сервер, необходимо узнать куда оно проинсталлировалось (вариантов несколько: от X:\Program Files (x86) до X:\WINDOWS). Необходим точный путь до файла оснастки migrator.msc.
  7. Создание командного файла для запуска оснастки средства ADMT migrator.bat (поскольку доверие между доменами, строго говоря, не является необходимым условием). migrator.bat должен содержать в себе следующую команду:


    Runas /Netonly /user:ИМЯ_ИСХОДНОГО_ДОМЕНА\ЛОГИН_АДМИНИСТРАТОРА "Mmc \"%windir%\ADMT\migrator.msc\""

    В нашем случае команда будет выглядеть так:


    Runas /Netonly /user:SOURCE\Administrator "Mmc \"%windir%\ADMT\migrator.msc\""

    Запускать командный файл придется каждый раз для запуска средства ADMT.

  8. В данном сценарии предполагается миграция существующих паролей. Для того, чтобы это осуществить необходимо проделать следующие шаги.

    1. Генерация ключа для исходного домена на целевом контроллере командой:


      Admt key /option:create /sourcedomain:ИМЯ_ИСХОДНОГО_ДОМЕНА /keyfile:ПОЛНЫЙ_ПУТЬ_К_КЛЮЧЕВОМУ_ФАЙЛУ /keypassword:ПАРОЛЬ_УДОВЛЕТВОРЯЮЩИЙ_ПОЛИТИКЕ ПАРОЛЕЙ_В_ОБОИХ_ДОМЕНАХ

      В нашем случае команда генерации ключа будет выглядеть так:


      Admt key /option:create /sourcedomain:SOURCE.LOCAL /keyfile:C:\PWD.pes /keypassword:{microsoftkey777}

    2. Импортирование ключа для исходного домена на целевом контроллере командой:


      admt key /option:import /sourcedomain: ИМЯ_ИСХОДНОГО_ДОМЕНА
      /keyfile: ПОЛНЫЙ_ПУТЬ_К_КЛЮЧЕВОМУ_ФАЙЛУ
      / keypassword:ЗАДАННЫЙ_РАНЕЕ_ПАРОЛЬ

      В нашем случае импортирование созданного ранее ключа будет выглядеть так:


      admt key /option:import /sourcedomain:source.local /keyfile:C:\PWD.pes /keypassword:{microsoftkey777}

    3. Размещение полученного ключа локально на исходном контроллере.
    4. Установка средства Password Export Server version 3.1 (ADMT Password Migration DLL) на исходный контроллер. При установке будет запрошен ключевой файл, на который надо указать и ввести указанный выше пароль. После установки следует перегрузить сервер.
    5. Установка разрешений на запуск службы Password Export Server Service. Для этого необходимо в обоих доменах завести пользователей с одинаковыми логинами и паролями. В нашем случае это пользователь PES с правами обычного доменного пользователя. Служба должна запускаться от имени созданного пользователя. После установки разрешений службу можно запустить. Начиная с этого момента, возможна миграция существующих паролей в целевой домен.
      Следует отметить, что метод миграции паролей с помощью средства Password Export Server работает только с ОС Windows Server 2003 и 2008. Если исходный домен находится под управлением более ранней ОС, то следует обратиться к соответствующему разделу мануала по ранним версиям ADMT.
  9. Начало миграции. Для запуска средства ADMT используем созданный ранее командный файл. При запуске будет запрошен пароль администратора исходного домена.

    1. Для миграция учетных записей пользователей необходимо запустить User Account Migration Wizard из меню Action. Далее необходимо ввести информацию об исходном и целевом доменах, указав при этом именно те контроллеры, которые были использованы при создании DNS-пересылок. В нашем случае это dc1.source.local и dc2.target.local. После выборки необходимых пользователей из исходного домена необходимо указать контейнер в целевом домене для размещения мигрированных объектов. Далее отмечаем опции Migrate Passwords, Do not update passwords for existing users и вводим контроллер исходного домена, на котором запущена служба PESSVC, в поле Password migration source dc. В нашем случае это dc1.source.local. В меню Account Transition Options отмечаем опции Target same as source и Migrate user SIDs to target domain. Далее будет предложено включить аудит учетных записей в исходном домене. Следует согласиться со всеми предложениями, после чего перезагрузка исходного контроллера будет необратима. После загрузки исходного контроллера необходимо запустить на нём службу PESSVC и продолжить миграцию учетных записей пользователей на конечном сервере. После чего необходимо ввести логин и пароль администратора исходного домена. В меню User Options отметить опции Translate roaming profiles, Update User Rights, Fix users’s group membership. В меню Conflict Management отметить опцию Do not migrate source objects if a conflict is detected in the target domain. С конфликтующими объектами лучше разобраться вручную. Меню с выбором исключений можно пропустить. Следует отметить, что в данном сценарии вместе с учетными записями пользователей также мигрируются перемещаемые профили, что делает данный процесс незаметным для конечного пользователя. Если в домене не используются перемещаемые профили, то рекомендуется заведомо их сделать таковыми.
    2. Для миграции групп безопасности необходимо запустить Group Account Migration Wizard из меню Action. Далее необходимо ввести информацию об исходном и целевом доменах, указав при этом именно те контроллеры, которые были использованы при создании DNS-пересылок. В нашем случае это dc1.source.local и dc2.target.local. После выборки необходимых групп безопасности из исходного домена необходимо указать контейнер в целевом домене для размещения мигрированных объектов. В меню Group Options необходимо отметить опции Update user rights, Fix membership of group, Migrate group SIDs to target domain. В меню Conflict Management отметить опцию Do not migrate source objects if a conflict is detected in the target domain. Меню с выбором исключений можно пропустить. Никогда не следует выполнять миграцию таких глобальных групп безопасности как «Издатели сертификатов», «Администраторы DHCP», «Пользователи DHCP», DnsAdmins, DnsUpdateProxy, «Администраторы домена», «Компьютеры домена», «Контроллеры домена», «Гости домена», «Пользо¬ватели домена», «Администраторы предприятия», «Владельцы-создатели групповой политики», «Серверы RAS и IAS», «Администраторы схемы» и «Пользователи WINS» и их аналоги.
    3. Миграция рабочих станций осуществляется через Computer Migration Wizard меню Action. Дойдя до меню Translate Objects можно отметить те опции, которые нам необходимы, после чего в Security Translation Options выбрать опцию Add (Add equivalent security references for target objects and have source reference intact). В следующем окне необходимо выставить временную задержку, по истечении которой клиентский ПК будет перезагружен (при условии, что агент мигрирования завершится успешно). Меню с исключениями можно пропустить. В меню Conflict Management отметить опцию Do not migrate source objects if a conflict is detected in the target domain. После того, как работа мастера завершится, будет запущено диалоговое окно управления агентами миграции ПК с перечнем всех выбранных ранее ПК, подлежащих переносу в новый домен. В разделе Agent Actions следует отметить опцию Run pre-check and agent operation и нажать Start. Со временем агент начнет перегружать клиентские ПК и выполнять процедуру POST-CHECK, которая может завершаться с ошибкой, если перед миграцией не были корректно настроены службы DHCP в обоих доменах. Чаще всего это свидетельствует о том, что клиентский ПК не получил корректных настроек от DHCP-сервера в конечном домене. По статистике примерно на 100 рабочих станций приходится 10-15, которые не обрабатываются агентом миграции. Такие ПК придется переносить вручную, если сходу не попытаться устранить проблему, которая, скорее всего, кроется в службах Workstation, Netlogon и RPC.
  10. По завершении миграции необходимо вернуть обратно удаленные ранее пересылки на обоих контроллерах, удалив при этом служебные (созданные для целей миграции).
  1. Savon
    22 Январь 2010 в 10:32 | #1

    доброго времени суток. Уважаемые, подскажите такую проблему. Структура фирмы не позволяет связывать между собой сервера из соображений политики безопасности, потому имею 2 не связаные между собой сети, 1 доменная, вторая одноранговая, завожу в ней сервер, учетки и прочее меня мало интересует, могу завести руками, а политику безопасности и групповые политики очень бы хотелось получить в файловом виде, дабы завести в АД конечного домена. Заранее спасибо.

  2. Savon
    22 Январь 2010 в 10:33 | #2

    Все это на 2003 sp2

  3. 22 Январь 2010 в 10:50 | #3

    Добрый день.

    Попробуйте воспользоваться Group Policy Management Console на исходном домене – если не установлен, можно взять тут – http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0a6d4c24-8cbd-4b35-9272-dd3cbfc81887

    Потом выбрать Group Policy Objects правой кнопкой -> Backup All.
    Политики экспортируются в файлы.

  4. Savon
    22 Январь 2010 в 12:50 | #4

    огромное спасибо за ответ и за оперативность.

  5. Savon
    22 Январь 2010 в 15:12 | #5
  6. Savon
    27 Январь 2010 в 13:01 | #6

    еще такой вопрос по консоли, она есть только на английском? язык я знаю плоховато, а она прошивается в АД, соответственно там ГП получаются тож на английском… что Вы можете посоветовать?

  7. denn
    27 Январь 2010 в 18:18 | #7

    Здравствуйте! Спасибо за мануал. Вопрос такого плана, как поступить если нет перемещаемых профилей, все хранится локально. Если делать перемещаемые профили на это уйдет огромное кол-во времени и места…

  8. 27 Январь 2010 в 18:20 | #8

    @Savon
    Да, к сожалению для 2003го консоль только на английском. В 2008 и 2008 R2 она встроена по умолчанию – там в русской версии сервера и консоль русская.

    Правда, сами политики – они отображаются на языке системы – т.е. на русской 2003й, английской будет только сама консоль GPMC. А содержимое редактора политик – т.е. элементы политик и их значения – будут русскими.

  9. denn
    27 Январь 2010 в 19:04 | #9

    Ярослав, а как вы считаете двойная или тройная миграция это нормально? Поясню, стоит задача с двух доменов перенести все на один временный сервер и после перенести все это дело на один нормальный сервер (естественно после чистой установки на нем(на котором раньше был глючный домен)), тем самым получается две миграции в один сервер и после миграция с одного в другой.

  10. 28 Январь 2010 в 00:49 | #10

    @denn
    Вообще, начиная с ADMT 3.0 без проблем переносятся и неперемещаемые профили, но работает не всегда и не у всех.
    С профилями часто возникают подобные трудности. Иногда они вовсе не перемещаются. Можно посоветовать несколько вариантов (в статье указан лишь один, на мой взгляд, наиболее безопасный). То, что работает у одних, не всегда помогает другим. Перенос профилей и связанные с этим процессом нюансы наиболее оживленно обсуждается, например, здесь: http://forum.oszone.net/thread-84478.html
    По поводу превращения локальных профилей в перемещаемые. Способов мало. Вы можете прикинуть на сколько долго это будет, если пойти таким проверенным путем.
    Зайти на локальном ПК под учеткой не того пользователя, чей профиль необходимо скопировать. После чего скопировать локальный профиль на сервер с помощью «User Profiles -> Copy To», указывая в «Permitted to use» доменный аккаунт. Находится в дополнительных свойствах моего компьютера. Для автоматизации можно попробовать написать или найти скрипт. Ну и прикинуть, сколько это займет, в целом, времени. На Вашем месте я бы протестировал свой вариант миграции в виртуальной среде или на 3ех-4ех обычных ПК хотябы ради эксперимента с профилем. И только после этого приступил к боевым серверам.

  11. 28 Январь 2010 в 00:57 | #11

    @denn
    Двойная или тройная миграция это нормально, если не хватает физических ресурсов. Но уменьшить количество шагов вполне реально, если, к примеру, перенести контроллеры домена на виртуальные сервера или в другое место и понизить основные, развернутые на физических. И будет у Вас всего одна миграция. Как вариант конечно. Но, практика показывает, что если домен еле дышит, таких маневров лучше не производить, не имея полной резервной копии. Даже systemstate не всегда помогает в особо тяжелых случаях.

  12. denn
    28 Январь 2010 в 07:48 | #12

    @Игорь Подольский
    Спасибо за ответы. Буду побывать на виртуальный машинах. А по вашему каким софтом лучше всего перенести сервер на виртуальную машину?

  13. 28 Январь 2010 в 10:49 | #13

    @denn
    Есть разный софт для P2V миграции – например System Center Virtual Machine Manager. Есть решения от Paragon. Они выполняют миграцию – то есть, не только копируют диск, но и создают конфигурацию – например, указывают такой же MAC-адрес на виртуальной сетевой карте, что был на реальной.

    А самый простой путь – утилитка Disk2VHD от Microsoft, просто преобразующая жесткий диск в файл VHD. Лежит тут – http://technet.microsoft.com/en-us/sysinternals/ee656415.aspx

  14. iga
    20 Август 2010 в 11:34 | #14

    какие ограничения имеются у данного метода миграции ? совместим ли он при наличи в домене exchange ?

    ситуация: по наследству достался убитый single label домен с полуубитым же exchange 2003 – домен в результате вывел в нормальную работу, exchange так же вывел и перевел на exchange 2010, на данный момент домен на 2008r2, exchange 2010 так же на 2008r2 – но не оставляет в покое single label. хотелось с самого начала его переименовать или смигрировать – но все что нашел по данной теме – указывало на невозможность ни переименования, ни миграции при наличии exchange.

    поможет ли ваш метод в моем случае ???

  15. nonome
    30 Март 2011 в 03:35 | #15

    А если служба DHCP отключена на обоих серверах, точнее выполняется сторонними средствами, возможна ли миграция рабочих станций?

  1. Пока что нет уведомлений.
Необходимо войти на сайт, чтобы написать комментарий.