背景:
A公司域名 a.com,B公司域名 b.com。A公司收购了B公司,要求把B公司的所有人员账号信息合并到A公司系统中。
解决方案:
微软官方提供了对应的账号迁移工具ADMT和密码迁移工具PES。
实现过程
本次我们通过工具实际操作下,测试一下实际效果。 测试环境介绍: 域1: liuxing.im(域控 172.16.7.54) 域2: demolabs.local (域控 172.16.16.31) 目标 : 将域2中的用户迁移到域1中,保持密码不变。
先决条件:
-
创建域的双向信任关系,使工具可以跨域读取信息 配置信任之前,需要互相能够解析,需要在各自域的DNS中添加解析信息,如转发器:
-
配置双向信任:
-
将对方domain admins组加入自己域administrators组,该权限用于密码迁移。 域1:
域2:
-
在目标域即域1中安装ADMT。【最好关闭UAC,以管理员方式运行】 运行界面 :
通过命令行生成安装PES所需的加密文件,并拷贝到安装PES的机器上。
-
在源域即域2中安装PES,在命令行中启动安装。该工具以服务方式运行,安装时指定服务运行使用哪个账号,该账号隶属于administrators组。
- 手动启动PES服务:
- 手动启动PES服务:
-
执行迁移:
- 启动用户迁移向导:
- 输入域信息:
- 选择迁移方式:支持两种,一种是直接从源域中选择要迁移的账号,一种是将迁移对象按指定格式提前写入到文件(适合大量账户迁移)。本次选择第一种:
- 选择迁移账号,本次创建了三个测试账号:
- 指定目标OU: 即账号迁移到的位置
- 密码迁移选项: 本次选择密码迁移,也可以选择重新生成复杂密码。
- 迁移后账号选项:
- 组成员关系:
- 账号冲突策略:
- 点击 “完成”开始迁移:
- 迁移完成:
- 启动用户迁移向导:
-
测试迁移结果。
-
为了测试密码是否迁移成功,我们给账号启用邮箱,通过邮箱测试。
-
启用邮箱:
-
[PS] C:\Windows\system32>Get-User -OrganizationalUnit employees -RecipientTypeDetails user | Enable-Mailbox
正在创建新会话来隐式远程处理“Get-User”命令...
Name Alias ServerName ProhibitSendQuota
---- ----- ---------- -----------------
shi.zhenning shi.zhenning1 bj-wj-t-exbe-01 Unlimited
wang.tingdong wang.tingdong bj-wj-t-exbe-01 Unlimited
xu.yanfei xu.yanfei1 bj-wj-t-exbe-01 Unlimited
登陆邮箱:
提示让修改密码,说明密码迁移成功了。但是迁移后设置为首次登陆修改更改密码了。 验证下:
我们通过命令批量设置下。
PS C:\Windows\system32> Get-ADUser -Filter {pwdLastSet -eq 0} -SearchBase "ou=employees,ou=liuxing,dc=liuxing,dc=im" | Set-ADUser -ChangePasswordAtLogon $false
在登陆邮箱,登陆成功了。
账号密码成功迁移。 这样用户可以继续使用原账号密码登陆新系统。