2024年3月29日发(作者:)
AD用户被删除恢复
2011/09/08事故处
一、域级别:windows2003
恢复思路和步骤:
恢复AD用户对象
补充用户丢失的属性
扫描标记中断邮箱
重连接邮箱
更新OAB
重新启用GC
站点同步
启用OCS权限
重新提交Unreachable邮件队列
二、技术层面预防措施
仅针对AD的内容:
建立AD备份站点
备份NTDS数据
备份域证书、DNS、DHCP
故障恢复测试
若可行升级至2008域级别
三、DC恢复工具或者方式
Name
非授权还原
以结合授权还原,需要测试
使用ntdsutil在备份DC/GC上提升存在对象的USN版本。误删除、
修改可恢复,保留原属性。
恢复关键属性ObjectGUID,objectSid, Name,其他属性丢失
导出容易,导进比较麻烦要修改导出的ldf文件,可新增、可修改;
授权还原也会使用,可配合Adrestore;
针对误删除的所有对象,恢复所有属性
说明
使用状态备份恢复系统状态,USN不变。多DC要考虑影响。或许可
Support Platform
ALL
Server2003 UP
Server2003 UP
授权还原
Adrestore/
Ldifde/csvde
回收站
All
Server 2008R2
一、步骤:
1. 恢复AD用户
查看AD中被删除的对象:
c:adrestore
或者使用powershell查看
PS C:>$begin=New-Object DateTime(2011,09,08,8,0,0)
PS C:>Get-ADObject -SearchBase "DC=aibed,DC=com" -Filter 'whenChanged -gt $begin -and Deleted -eq $true -and
ObjectClass -eq "user"' -IncludeDeletedObjects
如果开启了Recycle,可以在这里进行恢复
PS C:>restore-adobject
或者使用查看
C:
选择connection,connect to dc01
选择connection,bind用户名 xxx
选择options , controls , load predefined, return deleted object
选择View, Tree, 选择CN=Deleted Objects,DC=aibed,DC=com
打开节点CN=Deleted Objects,DC=aibed,DC=com
能看到被删除的对象
如图:
接下来繁琐的事情,恢复删除的对象,在网上查了下这个工具可视化更
高些
C:adrestore -r TS这里的”TS”为关键字可以为对象名称中的字符
恢复大部分之后使用上面的查询检测是否有遗漏
恢复后的AD对象只包含有用的ObjectGUID,objectSid, Name,其他属性都丢失,账号也处于
禁用状态,需要进行批量操作
dsquery user "CEO Office,DC=aibed,DC=com" -disabled >c:admin_
dsquery user "CFO Office,DC=aibed,DC=com" -disabled >c:admin_
dsquery user "CSOOffice,DC=aibed,DC=com" -disabled >c:admin_
dsquery user "SVPOffice,DC=aibed,DC=com" -disabled >c:admin_
rem 批量更改密码,启用账号,
for /F "usebackqdelims=!" %%i in () do (
dsmod user %%i -disabled no -pwd "qwe123!"
)
手动更新UPN
或者使用更简易的Powershell
#查询刚恢复的AD user,记录SID
PS C:>$uid=get-aduser -SearchBase "DC=aibed,DC=com" -Filter {Enabled -eq $False} -property
whenChanged|where {$_.UserPrincipalName -notmatch "@" -and $_.whenChanged -ge (get-date
-uformat "%Y/%m/%d")}|select sid
#更改密码,启用账号,更新UPN
PSC:>$uid|foreach{$sam=get-aduser-id$_.sid|select
SamAccountName;$UPN=$ountName+"@";Set-ADAccountPassword
-UserPrincipalName $UPN}
-id $_.sid
-NewPassword (ConvertTo-SecureString -AsPlainText "qwe123!" -Force);set-aduser -id $_.sid -Enabled $true
2. 补充用户丢失的属性,繁重的事情
包括UPN、工号、所属组、DisplayName
3. 扫描并标记丢失的邮箱
登录邮箱服务器
#扫描标记中断邮箱
Get-MailboxDatabase |Clean-MailboxDatabase
#
查询中断的邮箱
Get-Mailboxserver |foreach{ Get-MailboxStatistics -server $_.name
{$_.DisconnectDate -like "2011/9/8*"}|selectDisplayName,Identity, database
4. 重新连接邮箱(这一步需要保证账号的UPN(UserPrincipalName)配置正确)
最好是手动通过EMC控制台连接,可以先过滤出最近断开的邮箱
………
如果DisplayName已经补全且命名方式和以前一致
可以通过Exchange Powershell批量连接,处理完之后再手动处理出错的
PSC:>$DMB=Get-Mailboxserver
|foreach{ Get-MailboxStatistics -server $_.name
}|where
}|where
{$_.DisconnectDate -like "2011/9/8*"}|selectDisplayName,Identity, database
PSC:> $DMB|foreach{connect-Mailbox -Identity $_.Identity -User $_.DisplayName -Database
$_.database}
5. 更新OAB
如果OAB不更新,当地址等信息变更之后,Outlook使用Exchange模式发送邮件会出错
同时地址变更需要即时生效,也同理
PSC:>
Get-EmailAddressPolicy |update-EmailAddressPolicy
PSC:>
Get-GlobalAddressList|update-GlobalAddressList
PSC:>
Get-OfflineAddressBook|update-OfflineAddressBook
PSC:>
Get-ExchangeServer |where {$_.IsClientAccessServer
foreach{Update-FileDistributionService -Identity $_.Name -Type "OAB"}
6. 当UPN进行了更改,最好是更新下GC
需要等待几分钟才会有效。
可以LDP连接3268端口验证
-eq $True}|
也可以使用telnet dc01 3268
7. 触发站点数据同步
repadmin /replicate dc02dc01 "DC=aibed,DC=com"
repadmin /showrepldc02
8. 开启OCS这里,有个技巧做批量开启
登录ocs02,先借助查询条件查出未开权限的用户,再多选开通
xxxxx
9. 从新提交Unreachable队列
retry-queue hub01Unreachable -Resubmit $true
retry-queue hub02Unreachable -Resubmit $true
二、技术层面预防措施
步骤:
1. 建立单独的一个站点不提供给应用或者用户使用。
SiteName:_BK DC类型:RW
入站复制关系:Aibed(dc02)_BK
复制计划:24小时或者48小时
发现误删除或者误修改,立即中止或者调整入站复制时间。
备份站点功能:
A.用于授权还原对象B.备份或者查看一段时间同步前对象
进行授权还原最好只是在用户对象上进行,做之前有时间最好备份
1)REM停止入站复制
Repadmin /options bk-dc_name+disable_inbound_repl
2)REM停止备份站点AD服务NTDS(AD DS Domain Controller service)
Sc stop NTDS
3)REM 使用ntdsutil授权还原,增大USN版本
ntdsutil "Activate Instance NTDS" "Authoritative restore" "Restore object "CN---""
4)REM启动NTDS服务
Sc start NTDS
5)REM激活复制
repadmin /replicate [des_dc] [src_dc] "DC=aibed,DC=com"
例子:repadmin /replicate dc02dc01 "dc=aibed,dc=com"从dc01复制到dc02
6)REM如果生成了ldf文件需要在其他DC上手动执行
Ldifde -I -f
7)开启入站复制
Repadmin /options bk-dc_name-disable_inbound_repl
详细介绍:
/kb/840001
2. 备份NTDS数据
使用微软工具,热备份
-b [username]aibed[password] -s dc01-f
REM _Hot_
@echo off
Set BKDIR=C:admin_scripts
Set FName=%date:~11,12%.ldf
ldifde-f %BKDIR%%FName%
备份DC系统状态,请参见NBU或者 Windows Backup。
Dc02已加入备份
3. 使用windows工具备份DNS等
参考:
/blogs/guyt/archive/2007/12/15/
/2010/04/
/kb/840001
发布评论