您的位置:首页 > 产品设计 > UI/UE

AD灾难恢复

2011-01-30 19:39 239 查看
一、对于新建的网络,这五种角色都集中在森林中的第一台域控制器上,但是如果是别人已经建好的网络,比如我们去接手一些网络的时候,很可能这五种角色已经被转移到其它的域控制器上了。这时我们可以通过三种方法来知道,分别是GUI介面,命令行及脚本:
  1、 GUI介面:
  GUI介面下不能一次性获得五种角色的分布,
  ⑴、Schema Maste
  点击“开始-运行”,输入:“regsvr32 schmmgmt”,回车: 然后点击“确定”。
再点击“开始-运行”,输入:“MMC”,回车,进入控制台,. 点击“文件-添加删除管理单元” 点击“添加”:  选中图中有“Active Directory架构”,点击“添加”,然后点“关闭”:
 
然后点击“确定”,在控制台上选中“Active Directory架构”击“右键”,选择“操作主机”  就可以看到当前的架构主控了,
 
⑵、RID Master、Infrastructure Master、PDC Emulator
  点击“开始-设置-控制面板-管理工具-Active Directory用户和计算机”  在域名上单击右键:  在出来的菜单中选择“操作主机”:  在出来的画面中可以看到RID Master、PDC Emulator、Infrastructure Master的分布情况。
 
⑶、Domain Naming Master
  点击“开始-设置-控制面板-管理工具-Active Directory域和信任关系”:   在“Active Directory域和信任关系”上击右键:   选择“操作主机”:   这就是“Domain Naming Master”所在的域控制器。
 
以上就是用GUI来查看FSMO五种角色的分布情况,用GUI介面不但可以查看,还可以随意的改变这五种角色的分布情况,但缺点是比较麻烦,需要较多的操作项目,如果仅仅是查看就比较的浪费时间。
 
2、 命令行工具:
  首先你要安装Support Tools,在安装光盘中的Support文件夹下的Tools子文件下。默认安装在系统盘的Program Files文件下。安装成功后,点击“开始-程序-Windows Support Tools-Command Prompt”:  然后运行“netdom”命令,在这里,运行的是:“netdom query fsmo”:
马上把当前域里的FSMO五种角色所在的域控制器罗列了出来。
 
 
3、 脚本。(略)。
 
二、最后来看一下FSMO的规划,在规划时,请大家按以下原则进行:
  1、占有Domain Naming Master角色的域控制器必须同时也是GC;
  2、不能把Infrastructure Master和GC放在同一台DC上;
  3、建议将Schema Master和Domain Naming Master放在森林根域的GC服务器上;
  4、建议将Schema Master和Domain Naming Master放在同一台域控制器上;
  5、建议将PDC Emulator、RID Master及Infrastructure Master放在同一台性能较好的域控制器上;
  6、尽量不要把PDC Emulator、RID Master及Infrastructure Master放置在GC服务器上;
                                                     
首先:要清楚什么样的情况下,我们需要强夺FSMO,只有当操作主机不能用的时候才考虑强占,比如:在一个域环境中有一台主DC和一台额外DC,当主DC坏掉了,但几乎所有的角色都在这台主DC上的时候,那么只有使用额外DC去强占主DC担当的角色。如果当2台DC都是可用的情况下,只是为了分担,减轻主DC的负荷,想把某些FSMO放到额外DC上的话,那么可以使用转移。(当然,在你使用强夺的时候,它会自动去尝试使用转移的方法,只有当转移操作失败后,才进行抢夺。所以,你这时候用强夺,其实会自动使用转移操作,一样可以成功)
 
下面我就使用命令的方式来演示:FSMO的抢夺
(例:一台主DC,一台额外DC)
第一步:查看FSMO角色所在的位置(即.FSMO的角色在那台DC上),有3中方法查看FSMO,这里我使用命令去查看(要使用命令查看,必须去装supper tools 这个工具,在安装光盘上有)
 >netdom query fsmo
 
第二步:连接到想要强占的DC上,使用如下的命令!
>ntdsutil
Ntdsutil: roles
Fsmo maintenance: con
Server connections: con to ser 主机名
 

第三步:强占master
Server connections :  quit
Fsmo maintenance :  seize pdc
Fsmo maintenance :  seize domain naming master
Fsmo maintenance :  seize  infrastructure master
Fsmo maintenance :  seize  rid master
Fsmo maintenance :  seize   schema master
 
敲入命令后都会弹出一个对话框,按确定就会执行强占
到此,FSMO的强占和转移操作完毕!!!
为了更好理解为什么要进行FSMO的强占和转移,我下面简单说几个东西:
如果 domain naming master角色的DC不可用,那么想在现有的森林中添加一个域是不可能的
SCHEMA MASTER上面已经提到啦
RID master 是负责安全值的一个角色,每一个被创建的用户都有一个不同于其他用户的安全码,如果RID不可用,就不能保证每个用户安全码的唯一性,那么有可能不用用户会拥有同样的权利和权限。
infrastructure master主要用来更新组和成员列表,上面也提到了,在这里也就不多说拉,
这里我只说了FSMO角色的某一些功能和作用,还有很多很多的方面没说到,我只想告诉大家的是FSMO角色的重要性,只要你知道FSMO是如此重要,就应该去保证它的可用对它有深的认识。
当你的DC宕机了,或者你在域中安装了新的DC,或买了新的服务器想转移DC,那么你就必须考虑到AD中的FSMO这些角色,如果不去转移DC的FSMO就把一台主DC卸载掉,那么在以后你做某些事情的时候就会出现很多问题
转移FSMO或强占FSMO,是当域控制器坏的时候你必须做的一个操作,是一个非常重要操作!
 
 
三、 用ntdsutil来清除无效的DC信息!
假如你的备份域为abc.mstc.com 主域为ctu.mstc.com,现在备份域坏了。那么你在装有super tools的主控域上执行如下命令:
C:/>ntdsutil
ntdsutil: metadata cleanup - 清理不使用的服务器的对象
metadata cleanup: select operation target - 选择的站点,服务器,域,角色和命名上下文
select operation target: connections - 连接到一个特定域控制器
server connections: connect to server ctu.mstc.com --绑定到 ctu.
用本登录的用户的凭证连接 ctu。
server connections: quit - 返回上一层目录
select operation target: list site - 在企业中列出站点(找到1个站点,标识为0)
找到 1 站点
0 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
select operation target: select site 0 - 将标识为 0 的站点定为所选站点
站点 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mstc,DC=com
没有当前域
没有当前服务器
当前的命名上下文
select operation target: list domains - 列出所有包含交叉引用的域
找到 1 域
0 - DC= mstc,DC=com
select operation target: select domain 0 - 将标识为 0 的域定为所选域
站点 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com
域 - DC= mstc,DC=com
没有当前服务器
当前的命名上下文
select operation target: list servers for domain in site - 列出所选域和站点中的服务器(找到两个:0-abc.mstc.com;1-ctu. mstc.com)
找到 2 服务器
0-CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com
1-CN=ADDDC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com
select operation target: select server 0 - 将标识为 0 的服务器(abc)定为所选服务器——也就是要删除的DC
站点 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=acme,DC=com
域 - DC= mstc,DC=com
服务器 - CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com
DSA 对象 - CN=NTDS Settings,CN=ADDEMO,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configur
DNS 主机名称 - abc.mstc.com
计算机对象 - CN=ABC,OU=Domain Controllers,DC=mstc,DC=com
当前的命名上下文
select operation target: quit - 返回上一层目录
metadata cleanup: remove select server - 从所选服务器上删除 DS 对象
在弹出的对话提示框上选择“是”,
“CN=abc,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC= mstc,DC=com”删除了,从服务器“ctu”
现在,abc.mstc.com这个Dc对象就在你的AD里消失了.
 
四、用ntdsutil来转移fsmo五种角色。
当您运行Dcpromo.exe 程序并安装 AD 时,将向目录林中的第一个域控制器授予五个 FSMO 角色。其中有两个 FSMO角色是目录林范围的,另外三个是域范围的。如果创建了子域,两个目录林范围的角色将不会更改。一个具有两个域的目录林将有八个FSMO;其中两个是目录林范围的角色,每个域各有三个特定于域的 FSMO 角色。这五个角色是schema master-架构主机,Domainnaming master-域命名主机,Rid master-rid主机,pdc master-pdc防真器,InfrastructureMaster-结构主机。想要把这几种角色移动到另一台计算机上有2种方法,一种是转移,但必须2台计算机处于正常运行状态。如果有其中某台处于离线状态只能用第二种方法,使用ntdsutil工具来强制获取这些角色。现在如果你的主控坏了这些角色也都在主控上,请在装有supporttools工具新的域控或备份域控上执行如下命令:首先在CMD下运行
netdom query /d:域名 fsmo
查看一下当前哪些角色在哪台服务器上,
然后在CMD下运行 
"ntdsutil"如果不知道命令怎么写,可以输入?得到帮助提示,
"roles" 
"connections" 
"connect to server 服务器名" 绑定一台当前在线的DC
当连接成功后输入 q 退出
回到上一层(roles)准备做角色迁移
"Seize schema master"
"Seize domain naming master"
"Seize RID master"
"Seize PDC"
"Seize infrastructure master"
以上五个命令,分别用作迁移上面所提到的5个角色到我们之前绑定的服务器上。
完成后再次回到CMD下执行"netdom query /d:域名 fsmo",检查角色是否已被迁移
在“常规”选项卡上,找到全局编录复选框以查看其是否选中。如果正常就说明角色转换已成功。
 
在AD Fsmo 角色转变过程中,我们都建议尽量使用 transfer,而不是 seize 。
       但有时还是会在无法正常 transfer 时,而使用 seize 。
       我们知道在执行 seize 时,原承担Fsmo角色的那台Server,应该是处于宕机或离线状态,方能成功 seize。
       并且当 seize 之后,原承担Fsmo角色的Server,应该重装操作系统,彻底放弃原Server的任何身份角色,并在现有DC上删除原Fsmo角色Server的垃圾数据。
       如果,如果,我们不小心,将本该重装的那台Server,在没有重装的前提下又重新连入当前Domain,会是什么情况呢?我现在就呈现给大家---
实验环境介绍:
       两台DC,DC1为根DC ,承担着Fsmo角色;DC2为辅助DC。分别运行着Windows server 2003 sp2、DNS。
       虚机使用VPC2007。
实验步骤:
1、在虚机中将DC1暂停,那么此时DC2将无法联系DC1,开始使用 seize 进行抢夺Fsmo角色。
2、在DC2获得Fsmo角色后,重新启动DC2;DC2进入系统后,将虚机DC1从暂停状态改变为启动状态,DC1连入网络后并未报错,此时将DC1重新启动。
3、DC1进入系统后,分别从两台DC上查看Fsmo角色所属,均为DC2,目前判断 seize 操作结果正常。
4、停止操作,观察两台DC运行状况,2小时后一切正常,未报告事件错误。
5、对上述操作反向执行:将DC2暂停,操作DC1执行 seize 后,再观察DC运行情况,未发现报错。
实验总结:
       在虚拟环境中,如此操作并未造成AD失效,Fsmo角色的转变能够通知DC,并更新自身所属角色。
       生产环境中不建议如此操作。切记。
 
本文转自:http://baqkmm.blog.163.com/blog/static/124498796200971364246264/
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息