本文转自: http://www.exchangecn.com/associate/20150628_4550.html

正好要写个AD域合并的方案,手头缺少些环境截图,索性做个 ADMT 的迁移测试,后面还会写个Quest migration manager做迁移的,做个比较,同时本文档比微软官方的 ADMT 迁移手册要更偏向于案例,希望对大家有所帮助。

一. 虚拟环境
Target Domain
Domain Name: Msft.Local (windows 2003)
IP Address:192.168.0.1
Source Domain
Domain Name:leaderit.com (windows 2003)
IP Address:192.168.0.100
Client PC
Name: Client
IP Address:192.168.0.200

建立帐号和群组,共享资源

二. 迁移流程
ADMT 3.0可以实现三种环境的迁移
1.Windows NT 4.0 Domain Restructure to an Active Directory Forest
2.Interforest Active Directory Domain Restructure
3.Intraforest Active Directory Domain Resturcture
其中在Interforest和Intraforest中还是有一些区别的
主要一点是Interforest里面对象是克隆,而在Intraforest里面对象是移动

Migration ConsiderationInterforest RestructureIntraforest Restructure
Object preservationObjects are cloned rather than migrated. The original object remains in the source location to maintain user access to resources.Objects are migrated and no longer exist in the source location.
SID history maintenanceMaintaining SID history is optional.SID history is required.
Password retentionPassword retention is optional.Passwords are always retained.
Local profile migrationYou must use tools such as ADMT to migrate local profiles.For workstations that run the Microsoft Windows®°2000 Server operating system and later, local profiles are migrated automatically because the user’s GUID is preserved. However, you must use tools such as ADMT to migrate local profiles for workstations that run Windows NT 4.0 and earlier.
Closed setsYou do not need to migrate accounts in closed sets.You must migrate accounts in closed sets.

整个迁移的流程图

三. 迁移前期工作
target域需要Windows 2000或者Windows 2003域功能级别
建立source和target之间的域信任关系

关闭SID Filter, 默认在Windows 2000 SP4以上及Windows2003启用了SID Filter, 在迁移过程中,为了让用户可以正常原有资源,我们需要迁移SID Histrory.
在命令行中通过netdom命令关闭SID Filter

将目标域的Domain Admins群组加入到Source administrators群组

以下三个步骤可以在ADMT第一次运行时由ADMT自动创建
1.在source域中创建source_name$$$本地群组
2.在source PDC角色上开启TCP/IP Client Support功能
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\LSA
TcpipClientSupport   DWORD   1
3.在target和source域上开启审核
Group Policy-Default Domain Controllers Policy-Computer Configuration-Windows Settings-Security Settings-Local Policies-Audit Policy
Audit accout management   Success,Failure

四.安装ADMT
在target domain controller上安装ADMT 3.0 (ADMT 3.1支持Windows 2008)
ADMT3.0需要数据库支持,无论是采用SQL还是WMSDE,默认都会在本地安装WMSDE。

五.启用密码迁移
   森林之间迁移使用PES(Password Export Server)服务来迁移密码,PES服务可以安装在source域的任何DC上(支持128位加密,Windows 2003,2000+sp3以上默认支持)。
安装PES服务首先需要一个加密钥匙,这个加密钥匙在target域安装ADMT的机器上创建
admt key /option:create /sourcedomain:<> /keyfile:<>/keypassword:<>

在source域DC上启动PES服务,需要安装ADMT,
执行%systemroot%\windows\ADMT\PES\pwdmig.msi
导入刚才在target域导出的加密钥匙

输入服务帐号,建议使用在target域中验证的帐号,如果使用本地系统帐号,确保在target域中,Pre windows 2000 compatible access group中包含everyone group和Anonymous logon group

在services里面启动PES服务

六.正式迁移
按照ADMT迁移文档的建议,共享文件资源,采用Users->Global Groups->Local Domain Groups->Permission的方式
迁移帐号顺序:Services Account–>Global Group–>User Account

迁移user account步骤:
1.迁移所有帐号,选择不更新现有用户密码,生成复杂密码

禁用目标帐户,将用户SID迁移到目标域

转换漫游配置文件

2.转换用户profile
安全性转换向导,先前迁移的对象

用户配置文件

替换安全性引用

3.迁移工作站
选择工作组和拥护权利

选择添加

迁移代理

4.再次迁移帐号
迁移密码

启用目标帐户

转换漫游配置文件,更新用户权利,修复用户的组成员身份

迁移并合并冲突的对象

5.再次迁移所有全局组

迁移完成后,使用用户帐号登陆,桌面一切都正常, 结果访问源域共享资源竟然提示不能访问, 奇怪
步骤都是按照help的文档
使用Adsiedit.msc检查帐号和群组的SIDhistory属性,都已经迁移过来
通过Windows Resource Kit工具检查
WhoamI /All, SIDhistory也已经存在

用户信息
—————-

用户名     SID
========== ============================================
msft\user1 S-1-5-21-921174561-3067888446-272819519-1113

组信息
—————–

组名                             类型   SID                                            属性
================================ ====== ============================================== ==============================
Everyone                         已知组 S-1-1-0                                        必需的组, 启用于默认, 启用的组
BUILTIN\Users                    别名   S-1-5-32-545                                   必需的组, 启用于默认, 启用的组
NT AUTHORITY\INTERACTIVE         已知组 S-1-5-4                                        必需的组, 启用于默认, 启用的组
NT AUTHORITY\Authenticated Users 已知组 S-1-5-11                                       必需的组, 启用于默认, 启用的组
NT AUTHORITY\This Organization   已知组 S-1-5-15                                       必需的组, 启用于默认, 启用的组
LOCAL                            已知组 S-1-2-0                                        必需的组, 启用于默认, 启用的组
MSFT\Global Group1               组     S-1-5-21-921174561-3067888446-272819519-1111   必需的组, 启用于默认, 启用的组
MSFT\user1                       用户   S-1-5-21-4123853966-2211756669-3874129515-1108 必需的组, 启用于默认, 启用的组
MSFT\Global Group1               组     S-1-5-21-4123853966-2211756669-3874129515-1112 必需的组, 启用于默认, 启用的组 (SIDHistory)

特权信息
———————-

特权名                  描述         状态
======================= ============ ======
SeChangeNotifyPrivilege 跳过遍历检查 已启用

从网上翻了下资料,有说到SID Filter开启会导致资源不能访问这个情况,可以明明我已经作过了关闭SID Filter命令了
再仔细看看我前面做的Netdom trust命令,突然想到,是不是原来做的时候源域和目标域的方向反了
重新执行命令。
netdom trust leaderit /domain:msft /quarantine:no /userd:administrator /passwordd:pass01!

这下问题解决,可以正常访问源域的共享资源了