Windows Active Directory域故障排错参考
2010-03-27 16:51:05 阿炯

Windows Active Directory域故障排错
大庆油田高级人才培训中心:张东辉

本章节介绍Windows 2000/03 AD域故障的排错。首先我们会介绍活动目录(Active Directory)及其相关概念,然后介绍和域故障排错相关的知识、工具软件的使用,最后以实例的形式讲解针对具体的各种域故障如何进行排错,如何有效地利用组策略来管理AD域、管理网络。通过本节的学习,读者可以掌握活动目录(Active Directory)及其相关概念,活动目录的功能、逻辑结构、物理结构;管理Windows 2000/03网络的方法,相关工具的使用;提高域故障排错能力,掌握活动目录上的最大应用:组策略。

2-3-1活动目录(Active Directory)及其相关概念
要掌握Windows 2000/03 AD域故障排错,首先就得知道什么是域,什么是活动目录,活动目录的工作原理如何。以下内容作为后面域排错的基础理论知识至关重要。

2-3-1-1为什么要使用活动目录?
为什么要使用活动目录?首先我们来看两个例子:
如果我们要记住10个、20个电话号码还可以,但更多的就无能为力了。这时我们就会想到把电话号码记录到电话簿上,需要时去查询。
如果我们家中只有10本、20本的书,我们会比较容易找到我们想要的那一本,但如果我们家中的书像图书馆那么多,这时我们就会想到把书分门别类地放好,并根据书的书名、作者、出版社、类别等属性信息做好索引,以利于查找。
有效地管理网络,也象管理电话号码、管理图书一样。我们会把网络中众多的对象:计算机、用户、用户组、打印机、共享夹……,分门别类、井然有序地放在活动目录这个大仓库中。使用活动目录对你公司的网络进行管理,才是积极有效的管理方法,而且网络规模越大,越能体现出活动目录在管理网络上的高效性。

2-3-1-2工作组(Workgroup)
当然如果网络规模很小,也可以使用Windows工作组模式来进行管理,但其管理功能极其有限。对于一台Windows计算机来讲,它要么隶属于工作组,要么隶属于域。工作组是微软的概念,一般的普遍称谓是对等网。
工作组通常是一个由不多于10台计算机组成的逻辑集合,如果要管理更多的计算机,微软推荐你使用域的模式进行集中管理,这样的管理更有效。你可以使用域、活动目录、组策略等等各种功能,使你网络管理的工作量达到最小。当然这里的10台只是一个参考值,11台甚至20台,如果你不想进行集中的管理,那么你仍然可以使用工作组模式。
工作组的特点就是实现简单,不需要域控制器DC,每台计算机自己管理自己,适用于距离很近的有限数目的计算机。顺便说明一下,工作组名并没有太多的实际意义,只是在网上邻居的列表中实现一个分组而已;再就是对于“计算机浏览服务”,每一个工作组中,会自动推选出一个主浏览器,负责维护本工作组所有计算机的NetBIOS名称列表。用户可以使用默认的工作组名workgroup,也可以任意起个名字(不必担心重名),同一工作组或不同工作组间在访问时也没有什么分别,都需要输入目标计算机上的用户名、口令进行验证。
在工作组模式下,用户要访问10台计算机上的资源,就需要记住至少10个用户名和口令,工作组的这种分散管理性是它和域的集中式管理相比最大的缺点。AD域提供了对网络资源的集中控制,用户只需登录一次就可以访问整个活动目录的资源。

2-3-1-3活动目录(Active Directory)和域控制器(Domain Controller)
如果网络规模较大,这时我们就会考虑把网络中众多的对象(被称之为AD对象):计算机、用户、用户组、打印机、共享夹……分门别类、井然有序地放在一个大仓库中,并做好检索信息,以利于查找、管理和使用这些对象(资源)。这个有层次结构的数据库,就是活动目录数据库,简称AD库。
接下来,我们应该把这个数据库放在哪台计算机上呢?是这样的,我们把存放有活动目录数据库的计算机就称之为域控制器(Domain Controller),简称DC。

2-3-1-4活动目录架构(Active Directory Schema)
架构是关于AD对象类型属性的定义。一种类型AD对象应该有哪些属性是由架构来定义的,比如它定义了用户对象有姓、名、登录名、口令等一系列的属性。如果你想增加一个“性别”属性,这就要修改架构,一般称之为扩展AD架构,这要求你必须是林根域上的Schema Admins组成员才行。
整个活动目录的林中只有一个架构,因此在活动目录中创建的所有对象都遵从同样的规则。也就是说你对架构的修改将影响到林中的所有域,你没办法实现同一林中的一个域用户对象有“性别”属性,而另一个域没有。

2-3-1-5目录访问协议(DAP)和轻量级目录访问协议(LDAP)
AD对象存储在活动目录中,客户和应用程序就通过访问活动目录,来查找这些存放于活动目录中的对象。用户访问这些AD对象,当然要遵照一定的规则和约定,这就是协议。客户访问目录所用的协议被称之为目录访问协议(DAP),DAP是在X.500中定义的一个复杂协议,它的简化版本被称之为轻量级目录访问协议(LDAP),被微软的活动目录AD所采用。LDAP是用于查询和更新活动目录的目录服务协议。

2-3-1-6目录服务
回过头来,我们再来看一下目录服务的定义。目录服务由X.500标准定义,目录是指一个组织中关于人和资源信息的结构化、层次化的库。在微软的Windows 2000/03网络中,这个目录服务就是指活动目录(Active Directory)服务,又比如在Novell公司的NetWare上使用的目录服务叫NDS(Novell目录服务),目录服务的实质就是一种网络服务。
活动目录(Active Directory)作为网络目录服务,提供了用于组织、管理和控制网络资源的结构和功能,使我们有了集中管理Windows 2000/03网络的能力,管理员可以在一个地点管理整个网络。当然也可以利用OU进行委派控制,把一部分管理工作分派给OU管理员。

2-3-1-7活动目录的逻辑结构
活动目录的逻辑结构具有伸缩性,小:可以只是一台计算机,大:可以应用到大型跨国公司的网络。活动目录的逻辑组件包括:
活动目录林(Active Directory Forest)
活动目录树(Active Directory Tree)
活动目录域(Active Directory Domain)
组织单元(OU,Organizational Units)
全局目录(GC,Global Catalog)
mcse.com
sub.mcse.com
my.com
接下来,以上图为例,进行相关讨论。这整个是一个林,mcse.com为林根域,有两个树,一个由mcse.com和它的子域sub.mcse.com组成,另一个由my.com单独组成,林中有mcse.com,sub.mcse.com,my.com三个域。相关概念如下:
林根域:在林中建立的第一个域,如:mcse.com
树:共用连续的命名空间的多层域,如mcse.com(父域)和sub.mcse.com(子域)
树根域:树最高层的域,名最短。如:mcse.com和my.com
Windows 2000/03可采用多层域结构,但最有效、最简便的管理方法仍是单域,所以大家在实际工作中要记住一个原则“能用单域解决,就不用多域”。

一、域(Domain)
域是活动目录中逻辑结构的核心单元。一个域包含许多计算机,它们由管理员设定,共用一个目录数据库,一个域有一个唯一的名字。
域是安全边界,保证域的管理员只能在该域内有必要的管理权限,除非得到其它域的明确授权。每个域都有自己的安全策略和与其它域的安全联系方式。注意:1、无法在一个域内实现不同的帐号策略。2、父域对子域并没有任何管理特权,但要注意林根域下有企业管理员组Enterprise Admins,它默认对林中的其它域是有特权的。
父域和子域间默认就有双向可传递的信任关系,也就是说用户可以使用林中任意一个域内的计算机,登录到林内的任何一个域上(操作上就是使用欲要登录的那个域的用户帐号);还可以,以自己本域的帐号登录,访问林内任何资源而不需要重新输入口令,当然要想能真正访问某一具体资源,在该资源上必须得有相应权限才行。

二、组织单元(OU,Organizational Units)
在域下面,我们可以规划OU,放入计算机、用户、用户组等对象。也就是说通过OU,我们可以把对象组织起来,并形成一个有层次的逻辑结构。OU下面可以再建小OU,微软建议嵌套层次不要超过3层,我们平常一般1到2层就够用了。
在规划OU时,要考虑到将来的管理和组策略的应用,一般应把有相同需求的计算机、用户等放在同一OU下。可以基于部门、基于管理责任,也可以基于地理位置来规划,使其最佳地适应你的公司的需求。
在域下面规划OU,不是仅仅为得到一个层次结构,我们主要目的是要基于OU实现委派控制和将来链接相应的组策略来实现管理控制。委派的权限可以是完全控制,也可以是仅指定有限的权限(如:修改OU内的用户口令)给一个或几个用户和组。

三、活动目录林(Active Directory Forest)
在林中建立的第一个域,被称为林根域,如前面提到的mcse.com。在刚开始时候,我们这个林中只有一个树,树内只有一个域,域内只有一台计算机作为域控制器。也就是说此时我们整个林就只有一台计算机。
接下我们也可以为它添加子域,如sub.mcse.com.,再添加了一个新树下的域my.com。这样我们的这个林下就有了两个树:一个树由mcse.com域、和它的子域sub.mcse.com构成,一个树仅由my.com域构成。

四、活动目录树(Active Directory Tree)
活动目录树是Windows 2000/03网络中的层次组织,同一树下的域共用连续的名字空间。如父域mcse.com(它同时也是树根域、林根域),树根域的名字一定是最短的。父域mcse.com和子域sub.mcse.com之间默认就有一个双向的、可传递的信任关系。也正由于这种信任关系的可传递性,使得sub.mcse.com和my.com间也有了双向信任关系。

五、全局目录(GC,Global Catalog)
全局目录GC包含了AD对象属性的子集,换句话说就是GC中包含了林中所有对象的摘要信息,也就是相对重要一些的属性,如用户对象的姓、名和登录名。全局目录GC本身必须首先是域控制器DC,GC不具有唯一性,可以有多个。
全局目录GC使用户能够:1、查询整个林中的AD信息,无论数据在林中什么位置。以利于林中的跨域访问。2、使用通用组,即利用通用组成员身份的信息登录网络。

2-3-1-8活动目录的物理结构
在活动目录中,物理结构与逻辑结构是相互独立的。域控制器DC和站点(Site)组成了活动目录的物理结构。
利用站点,我们可规划域控制器DC放置,优化AD复制,使用户就近查找DC登录。同时,知道物理结构将有助于排除复制和登录过程中出现的问题。

一、域控制器(Domain Controllers)
Windows 2000/03域控制器上存储有活动目录的副本,管理目录信息的变化,并把这些变化复制给该域上的其它域控制器。域控制器存储目录数据,管理用户登录、验证和目录搜索。
一个域至少得有一台域控制器,为了容错就应该有两台,甚至多台。这主要要看网络的规模及分布。

二、活动目录复制
同一域内的DC之间要复制域信息,同一林内的DC间要复制林信息。活动目录复制确保AD信息对整个网络上的所有DC和客户机都是可用的。而活动目录的物理结构决定了复制发生的时间和地点。
AD复制采用多主控复制模型,也就是说每个DC都存储有AD的可写副本,彼此间的复制是双向的。这点与NT4域的PDC到BDC(目录服务的只读副本)的单主控复制不同。
在所有的DC把它们的变化都同步到活动目录中以前,DC在短时间内可能有不同的信息。按照默认,这一时间,同一站点内不越过3x5=15分钟。

三、站点(Site)
站点就是一个或几个高速带宽连接的IP子网的集合。管理员规划的站点,必须真实反映网络的物理结构和连接情况,把高速连接的部分规划为一个站点。也就是说,站点内一定是高速连接,站点间是低速连接。
管理员利用规划站点,可以为活动目录配置访问和复制拓扑。使用Windows 2000/03网络可以使用最有效的链接和时间安排来复制和登录。创建站点,我们可以:1、优化AD复制,如:让其半夜进行,一天一次。2、优化用户登录,如:使用户就近查找本站点内高速连接的DC进行登录。
在活动目录中,物理结构与逻辑结构是相互独立的,没有什么必然的联系。一个站点可以有几个域,一个域也可以有几个站点。给站点起名字也是任意的,不必考虑和域名字间的联系。

2-3-1-9操作主机(或叫主控、FSMO)
前面我们介绍了AD复制采用多主控复制模型,但在有些特殊情况下,我们需要目录林进行单主控更新以避免冲突的发生。简单地说就是,这时我们就让一台DC说了算,来执行相关的AD改变,然后由它把变化复制到其它的DC上去,这台DC就是操作主机。共有五种操作主机,它们是:
• 架构主控 Schema master 林内唯一
• 域命名主控 Domain Naming master 林内唯一
• PDC仿真器 PDC Emulator master 域内唯一
• RID主控 RID master 域内唯一
• 基础结构主控 Infrastructure master 域内唯一
默认林根域的第一台DC就是这五种操作主机,同时还是GC。林内其它域的第一台DC是该域内的域唯一的那三种操作主机,即PDC仿真、RID、基础结构。。
操作主机具有唯一性,但我们可以把操作主机移动到其它DC上,只要保证原来的不再是操作主机,也就是说保证这种唯一性即可。任何一台DC都可以是一操作主机(注意也只有DC才可以是操作主机),一台DC可以同时担当多种操作主机角色。
对于操作主机的管理,我们可以查看、传送、查封。传送(Transfer)和查封(Seizing)的区别在于:传送是在原操作主机联机的情况下进行的,传送后得到了新的操作主机,原来的操作主机就不再是操作主机了,传送保证操作主机的唯一性。查封是在原操作主机有故障或失效,脱机的情况下的强行传输,也就是重新推选一个新的操作主机,会有数据的丢失。查封不保证操作主机唯一性,原操作主机必须格式化后再接入网络。
对操作主机的管理,可以使用图形化界面(管理的位置,将在下面逐个介绍说明),也可以使用Ntdsutil命令。下面我们简单介绍一下各种操作主机的作用。

一、架构主控(Schema master)
操作:AD架构/AD架构上右键/操作主机
说明:默认情况下,架构的MMC管理工具不被安装。需要:
1、运行adminpak.msi安装AD管理工具。Adminpak.msi可在03光盘I386目录下找到,或在03的windows\system32下找到。或者手动,开始/运行:regsvr32 schmmgmt.dll

2、开始/运行:MMC,文件/添加删除管理单元/添加/AD架构
关于架构,我们前面介绍过:架构是关于AD对象类型属性的定义。架构主控控制对架构的所有原始更新,也就是说对架构的修改、扩展,必须连接到林内唯一的这台架构主机上进行,然后由它复制到到林内所有的DC上。
注意:只有架构管理员组(Schema Admins)可以对架构进行修改,例如安装Exchange Server、ISA阵列,就需要扩展架构,你应该以架构管理员身份进行。

二、域命名(Domain Naming master)
操作:AD域和信任关系/AD域和信任关系上右键/操作主机。
只有域命名主机可以向目录林中添加域或者删除域,保证域的名字在林中唯一。若域命名主机不可用,则无法在目录林中添加或删除域。
为保证域的名字在林中唯一,域命名主机需要查询GC。若林功能级别为Windows 2000林模式,GC必须和域命名主机在同一台计算机上才行。若林功能级别为Windows Server 2003林模式,不要求GC必须和域命名主机非得在同一台计算机上。

三、PDC仿真器(PDC Emulator master)
操作:AD用户和计算机/域上右键/操作主机/PDC标签
PDC仿真主机在五种操作主机中是最重要的,它的利用率很高。如果PDC仿真主机失效,必须尽快解决。它主要负责:
1、如果Windows 2000/03域中还有NT4的BDC,它充当NT BDC的PDC,并为早期版本客户机提供服务。顺便说一下,NT4的域控制器在2000/03域中只能是BDC,不可能是PDC。

2、管理运行NT、95/98计算机的密码变化,写入活动目录AD。

3、最小化密码变化的复制等待时间。若一台DC接受到密码变化的请求,它必须通知PDC仿真主控。用户登录时,如密码错误,进行验证的DC必先送至PDC仿真主控。因为普通DC不能确认到底是密码错误,还是它没有及时与PDC仿真主控同步。

4、同步全域中的域控制器、成员计算机的时间。加入域的计算机,没有自己的时间。这是因为时间参数,在AD复制中是一个极为重要的因素,决定多主控复制时,谁的修改最终生效。所以整个域的时间,都由PDC仿真主机来控制。你可以手动修改域成员计算机上的时间,但当AD复制过后,又会被改回成PDC仿真主机上的时间。如果目录林是多层域结构,最终以林根域上的PDC仿真主机的时间为准。

5、防止重写GPO的可能,修改组策略设置,默认也是要连接到PDC仿真主控上才行。当然这个默认值是可以修改的,或者找不到PDC仿真主控时,系统会提示你连到其它DC。

四、相关标识符RID主控(RID master)
操作:AD用户和计算机/域上右键/操作主机/RID标签
在AD对象中的用户、组或计算机等对象,我们是可以为其分配权利权限的,被称为安全主体。安全主体与其它非安全主体对象的最主要的区别就在于:安全主体对象有安全标识符(SID),可以为其分配权利权限。大家要明确:在活动目录中,所有对象都有GUID(全局唯一标识符),只有安全主体对象才有SID。
当我们在域内创建安全主体(例如用户、组或计算机)对象时,域控制器将域的SID与安全主体对象RID标识符相结合,以创建唯一的安全标识符 (SID)。形如:
S-1-5-21-1553226038-2352558368-427082893-500
其中S-1-5表示NT Authority(标识符颁发机构);上例中的21-1553226038-2352558368- 427082893为这个域的SID(每个域不同),在这个位置还可能是32(表示本地/域内置的本地组,都只能在DC/本机上使用,重复无妨,所以都是32),也可能是本机的SID(每台机不同);后面跟的500表示administrator用户。
为了结合后面的案例,在这里我们把SID多作些介绍:
SID 名称 描述
S-1-5-域-500 Administrator 管理员帐户
S-1-5-域-501 Guest 供来宾访问计算机或访问域的内置帐户
S-1-5-域-502 krbtgt 密钥分发中心(KDC)服务使用的服务帐户
其它还有:Domain Admins(512),Domain Users(513),Domain Guests(514)。用户帐户、全局组可在林内或有信任关系的其它域 使用,所以域间不可重复。
S-1-5-域-515 Domain Computers 一个包括加入域的所有客户端和服务器的全局组
S-1-5-域-516 Domain Controllers 一个包括域中所有域控制器的全局组。默认情况下,新的域控制器将添加到该组中。
S-1-5-根域-518 Schema Admins 域为混合模式 时为全局组,纯模式时为通用组。默认成员林根域的 Administrator。被授权更 改AD架构。
S-1-5-根域-519 Enterprise Admins 域为混合模式 时为全局组,纯模式时为通用组。默认成员林根 域的 Administrator。被授权更改AD林结构,例如添加子域,删除域。
S-1-5-32-544 Administratrs 域/本地管理员组,都只 能在DC/本机使用,重复无妨。
其它还有:Users(545),Guests(546),Power Users(547),Account Operators(548),Server Operators(549),Print Operators(550),Backup Operators(551),Replicators(552),Remote Desktop Users(555)。都只能在本域内使用,域间重复无妨。
S-1-1-0 Everyone 包括所有用户 (甚至匿名用户和来宾)的组。成员身份由操作系统控制。在03中管理员可决定是否包括Guest。
S-1-5-6 Service 一个包括所有作为服务登录的安全主体的组。成员身份由操作系统控 制。
S-1-5-7 Anonymous 一个包括所有以匿名方式登录的用户的组。成员身份由操作系统控制。
S-1-5-18 Local System 操作系统使用的服务帐户。
S-1-5-19 Local Service 本地服务
S-1-5-20 Network Service 网络服务

RID操作主机就是负责向域内的DC分配 RID 池,每一个 Windows 2000/03 DC 都会收到用于创建对象的 RID 池(默认为 512个)。RID 操作主机通过分配不同的池来确保这些 ID 在每一个 DC 上都是唯一的。若DC分到的RID池被用尽,可以向RID操作主机自动再次申请。
通过 RID 主机,还可以在同一目录林中的不同域之间移动所有对象。当对象从一个域移动到另一个域上时,RID主控将该对象从域中删除。

五、基础结构主控(Infrastructure master)
操作:AD用户和计算机/域上右键/操作主机/结构 标签
基础结构主机确保所有域间操作对象的一致性。当引用另一个域中的对象时(如域本地组中包括另一域的一个全局组),此引用包含该对象的全局唯一标识符 (GUID)、安全标识符 (SID) 和可分辨的名称 (DN)。
如果被引用的对象移动,则在域中担当结构主机角色的 DC 会负责更新该域中跨域对象引用中的 SID 和 DN。也就是说,基础结构主机负责更新外部对象的索引(组成员资格),显然,单域不需要基础结构主机。
基础结构主机是基于域的,目录林中的每个域都有自己的基础结构主机。基础结构主机不应该和GC在同一个DC上,应手动移走,否则将不起作用。前面我们提到过,默认林根域的第一台DC就是这五种操作主机,同时还是GC。也就是说,这时基础结构主机实际上是失效的,不起作用。但这时只有一个林根域,基础结构主机不起作用也没关系,若以后构建多层域,需要手动将其与GC分开。

2-3-1-10域功能级别和林功能级别


2-3-1-11标识名(DN)和相对标识名(RDN)
前面我们提到了客户使用LDAP协议来访问活动目录中的对象,那么LDAP是如何来标识一个在活动目录中的对象的呢?换句话说,LDAP是如何在活动目录找到对象A,而不会错找成对象B的呢?这就要用到一个命名路径,即标识名(DN)和相对标识名(RDN)。DN为活动目录中的对象标识出LDAP命名的完整路径;RDN用来标识容器中的一个对象,即它总是DN中的最前面一项。
如:在Active Directory用户和计算机中,在mcse.com域下有个OU:Finance(财务),在Finance下又有个小OU:Sales(销售),在其下有个用户,名叫Suzan Fine。则此用户对象的DN为:CN=Suzan Fine, OU=Sales, OU=Finance, DC=mcse DC=com。RDN为:CN=Suzan Fine。
说明:
1、其中DC表示DNS名字的域组件,OU表示组织单元,CN表示普通名字,CN可用于除了前两种以外的所有对象。比如:如果用户帐号不在OU中而是在默认容器Users中,为表示Users容器应使用CN。即:CN=Suzan Fine, CN=Users, DC=mcse, DC=com。

2、如果在命令中引用DN,且DN中有空格,如CN=Suzan Fine。应使用引号将整个DN括起来。如“CN=Suzan Fine, CN=Users, DC=mcse, DC=com”。

2-3-1-12 域名服务系统(DNS)
Windows 2000/03的活动目录服务与域名服务系统(DNS)紧密结合、集成一起,所以DNS故障是导致AD故障非常主要的因素之一,有统计数据显示AD故障的60%来自于DNS。
使用活动目录、构建Windows 2000/03的域,网络上必须有可用的DNS服务器,并且必须支持SRV记录(Service Location Resource Record)和动态更新功能。如:MS Win2000/03 DNS,UNIX的DNS BIND 8.12及以上版本,使用已有的NT4 DNS是不行的。
构建NT4域并不需要DNS的支持,但2000/03域必须有DNS,且满足上述要求。
SRV记录的作用是指明域和站点(site)的DC、PDC仿真、GC是谁。动态更新也是2000/03DNS的新特色,管理员不必再象NT4 DNS那样手动为计算机创建或修改相应记录,在域成员计算机重启,或改名、改IP时依赖周期性更新,自动动态注册或更新相应DNS记录。
如果没有DNS服务器的话,也不一定非得预装DNS,可以在安装AD过程中,选择在本机上安装2000 DNS。而且推荐初学者使用这种方法,因为系统会根据你提供的FQDN域名,自动创建好DNS区域(zone),并配置成AD集成区域,仅安全动态更新。如果需要向外连或反向解析,用户只需配置上转发器和反向区域即可,不需要的话,直接就可以用了。
如果决定在安装AD过程中在本机安装DNS,应在安装前,将本机TCP/IP配置/DNS服务器指向自己,这样在安装AD完成后重启时,SRV记录将被自动注册到DNS服务器的区域当中去的,生成四个以下划线开头的文件夹,如_msdcs,03DNS在这里夹的层次结构有所变化,但本质没变。当然如果忘了指,也可以后补上,只不过需要多重启一次。

03DNS新特色:
1、条件转发。
转发器的作用是,如果本机无法解析DNS客户所发的查询请求,转发给转发器所指定的DNS服务器。在03DNS中新增了条件转发,即不同的DNS区域,可指定不同的转发器。
利用条件转发,不仅可改善DNS查询,更重要的是有其实际意义。例如两个公司合并时,可将利用条件转发,基于对方域名将转发器配置为指向对方的DNS服务器。这样DNS服务器就能解析对方网络中的DNS名称,并对其他网络信息建立巨大的缓存。又由于不必查询 Internet 上的 DNS 服务器,将大大减少DNS查询所用的时间。

2、存根(stub)区域
上面的场景也可用存根区域来解决,在03DNS中创建对方的存根区域,并指明对方的权威DNS服务器。注意在存根区域下只有对方域的SOA、NS及与NS相关的A记录,不会有对方其它的具体资源的记录。在有些情况下,与条件转发的作用还是有所不同的。

2-3-1-13 组策略(Group Policy)
组策略是活动目录上的最大应用,可以应用于2000/XP/03。组策略使许多重复的管理工作自动化、简单化,所以说组策略的应用程度是衡量2000/03管理员的重要尺度。
组策略对象(GPO)也是一种AD对象,并且可设置权限。在域内创建,可链接到站点(Site)、域(Domain)、组织单元(OU),使组策略的设置对一定范围的计算机/用户生效。本地(Local)策略可理解为一个特殊的组策略:在工作组下也可使用,只对本地用户和该计算机生效。使用gpedit.msc进行管理,设置后立即生效,不需刷新。
组策略设置的默认优先级是:LSDOU原则,本地策略优先级最低。可通过阻止继承(将阻止所有策略继承)、禁止替代(也就是必须继承,针对某个具体的GPO来设置)、组策略筛选器(实质为GPO权限)改变默认的优先级。
组策略对象(GPO)包括组策略容器(GPC)和组策略模板(GPT)两部分。GPC位于AD用户和计算机/System/Policies(需要选中查看下的高级功能),仅是GPO的属性和版本信息,计算机通过GPC来查找GPT。具体的策略设置值存储在GPT中,位于DC的windows\sysvol\sysvol下,以GUID为文件夹名。注意安装AD系统自带的两个GPO,使用固定的GUID,分别是:
¨默认域的策略的GUID为31B2F340-016D-11D2-945F-00C04FB984F9
¨默认域控制器的策略的GUID为6AC1786C-016F-11D2-945F-00C04FB984F9。

组策略具体的设置内容2000到达600多条,03又新增200条左右。组策略设置中的安全模板(计算机和用户)部分,通过注册表生效,但并不永久改变注册表。若用户手动修改注册表中的组策略设置值,若策略未变,组策略不负责强制改回。安全策略是组策略的子集(一部分),只不过其MMC工具被单独提出来,放到管理工具下了。

2-3-2域故障排错相关知识及工具软件的使用
这部分我们要介绍域故障排错相关的知识和工具软件(包括Windows自带的、微软附加的、第三方的)的使用。我们力图把这些内容做个简单的分类,以方便讲解和讨论,总体思路由易到难。但我们大家要明确:实际的故障总是各种各样,千差万别的,常常综合有多方面的因素,我们也需要结合多种工具才能解决。而且简单的工具更常用,更应该掌握好。

2-3-2-1 TCP/IP排错工具
因为我们重点要讨论AD域的故障排错,在这部分我们只把一些常用命令做一下介绍,其它不太常用的大家了解一下就可以了。
一、Ping
对于ping命令大家经常使用,比较了解。现简述思路如下:
操作 正常工作/通 不正常工作/不通
查看:设备管理器/网卡 网卡及其驱动没问题,已经正常工作了。 考虑网卡的物理完好,及驱动是否正确,一般为后者。早期的非PCI网卡还可能是由于中断IRQ设置不当引起的。
Ping 127.0.0.1 说明TCP/IP协议没问题 需要重新安装TCP/IP协议,此故障极少见。
Ping 自己的IP 说明本机所配IP正确,没有问题。 IP地址冲突。解决:事件查看器查找冲突网卡的MAC地址,或ping –a IP获取冲突计算机的名字。
Ping 自己的默认网关 到默认网关的物理线路没问题 解决:首先查看网卡灯是否正常(一般:一灯亮一灯闪)。不正常说明本机到下一设备(HUB/交换机/路由)这段线路有问题或设备未加电、有故障、需重启等。
Ping 另一网段远程主机IP 路由设备、外连线路没问题 检查路由器设置、外连线路。也可能是目标主机的问题,可先ping一下另一台远程主机。
Ping 远程主机的域名 说明本机所配DNS没问题 检查本机DNS配置,检查DNS服务器

说明:
1、若目标或中间环节(如ISP)禁用了ICMP,比如安装了防火墙或筛选器等,会导致ping不通。提示为:Request time out。但其它访问(如:共享资源、HTTP、FTP等)不会因禁用ICMP,ping不通而受影响。
2、防火墙等禁用ICMP,主要是为了防止黑客的DoS(Denial-of-service)、DDoS攻击。因为被ping的计算机要做出响应,响应多了就无法向外提供其它服务甚至死机。安装了防火墙的计算机可以ping通其它计算机,因为防火墙的本质就是筛选器,针对访问的双向性,可配置输入、输出筛选。Ping命令使用到ICMP协议,ICMP类型为:入8,出0。禁止自己被别人ping,可以禁止“入8”,也可以禁止“出0”,但显然前者更好些。

二、Ipconfig
查看TCP/IP配置是否正确时,最好使用ipconfig /all命令,而不是图形界面。因为图形界面下是你给计算机所做的配置,而ipconfig下相当于把计算机当前的配置调出来查看。没问题时,二者是一样的;但有问题时,二者是会不同的。
此命令可用于DHCP租约的刷新和释放,及类标识的设置和查看。用于DNS的有:
¨/flushdns 清除本机DNS缓存。
¨/displaydns 显示本机DNS缓存,包括名字、IP、TTL等。
¨/registerdns 向DNS服务器立即注册本机名称、IP地址。

三、Telnet
使用Telnet命令,用户可利用Telnet协议连接到远程计算机。一旦连上后,用户就可以在远程计算机(被称作Telnet 服务器)上使用基于字符的应用程序,就好象直接登录到远程计算机,在它的命令提示符方式下一样。可以使用Ctrl+]切换到telnet客户端配置,进行一些设置,若再回到目标机,使用ESC键+回车切换。
例如:设目标机(Telnet 服务器)IP为10.1.1.1,在本机上,开始/运行:cmd,键入Telnet 10.1.1.1。将会出现如下信息

欢迎使用 Microsoft Telnet Client
Escape 字符是‘CTRL+]’
您将要把您的密码信息关到Internet区内的一台远程计算机上。这可能不安全。您还要送吗(y/n):
键入y,回车。将出现如下欢迎界面:
*====================================
欢迎使用 Microsoft Telnet 服务器
*====================================
C:\>
注意C:\>表示的目标机(Telnet 服务器)的C盘根下。按住CTRL键再按],可切换到Microsoft Telnet>提示符下;按ESC键,再按回车,可切换回去。

四、Nslookup(结合加计算机到域问题,具体讲解)
Nslookup命令用于DNS的检查和排错,也可使用命令式或交互式。现结合加计算机到域问题,主要讲解交互式的使用。加入AD域的计算机必须满足下列三个 DNS 要求:
·计算机必须配置了首选 DNS 服务器的 IP 地址。
·_ldap._tcp.dc._msdcs.DNSDomainName 这条SRV记录必须存在于 DNS 中。
·上面记录所指明的DC在DNS中,必须有相应的主机(A)记录才行。
确定是否为DNS问题,可使用nslookup命令。
1、开始/运行:cmd,打开命令提示符。

2、在命令提示符下键入nslookup,然后按 ENTER。
说明:
(1)此时应出现如下内容及提示符。
Default Server: dc1.mcse03.com
Address: 10.63.243.1
>
(2)此时如果出现如下内容及提示符,说明DNS服务器上未配置反向查找区域,倒也无碍大局。
***Can’t find server name for address 10.63.243.1: Non-existent domain
Default Server: UnKnown
Address: 10.63.243.1
>
3、在“大于号”命令提示符处,键入:set q=srv

4、在“大于号”命令提示符处,键入:_ldap._tcp.dc._msdcs.ActiveDirectoryDomainName
说明:ActiveDirectoryDomainName为要加入域的DNS名称,如mcse03.com

5、正确结果应是如下内容,说明通过DNS解析可以找到域的DC。
Server: dc1.mcse03.com
Address: 10.63.243.1
_ldap._tcp.dc._msdcs.mcse03.com SRV service location:
Priority = 0
weight = 0
port = 389
svr hostname = dc1.mcse03.com
dc1.mcse03.com internet address = 10.63.243.1

2-3-2-2活动AD工具
一、批量用户帐号
Csvde
Ldifde
脚本
详见下小节Q6

二、Active Directory 迁移工具
该工具简化了在 Active Directory 域之间迁移用户、组和计算机或从 NT4 域迁移到 Active Directory 的步骤,并在实际迁移过程之前和之后分析迁移影响,可实现林间迁移。
1、安装:运行03光盘\I386\ADMT\admigration.msi。
2、使用:具体使用参考联机帮助。

2-3-2-3 组策略工具
一、Gpedit.msc
本地策略编辑器,在开始/运行下执行即可。

二、Secedit
secedit.exe,Windows2000/XP/03自带的自动化安全配置任务命令行工具,功能强大。此命令可用来对计算机的安全策略设置进行配置(confingure)与分析(analyze)、导出等,关于配置和分析平常我一般会使用MMC的图形界面。这里我们主要结合后面例子讲一下安全策略设置的导出、修改、配置。其它具体用法请使用"secedit /?"查看联机帮助文件。
¨导出本机当前安全设置,如secedit /export /cfg c:\sectmp.inf
说明:.inf文件被称为安全模板,实质就是一个文本文件。可利用记事本进行编辑,名字、位置可任意,在secedit命令中通过/cfg参数指定.inf文件。
¨将安全模板文件中的设置配置给计算机,如secedit /configure /db c:\sectmp.sdb /CFG c:\sectmp.inf
说明:安全模板文件中的设置不能直接配置给计算机,也不能直接与计算机配置比较(被称作分析analyze),需要先放到一个.sdb库中才行,如上面的sectmp.sdb,名字、位置可任意。此命令还可用于2000组策略的强制刷新,讨论见后面的gpupdate。

三、Gpupdate
在2000中使用的刷新组策略命令secedit /refreshpolicy machine(或user)_policy /enforce命令在03中已由gpupdate取代。在开始/运行下执行即可,命令格式如下:
¨仅刷新计算机策略:gpupdate /target:computer
¨仅刷新用户策略: gpupdate /target:user
¨二者都刷新:   gpupdate
此命令用于:修改了域/OU上的组策略,欲对客户机或用户马上生效,在客户机上运行此命令即可。否则需要:
¨计算机策略:重启
¨用户策略:重登录
或依赖自动刷新间隔:
¨DC到DC:5分钟,多DC可能长达15分钟
¨DC到域成员(非DC):90+ -30分钟,即60~120分钟。
注意不是所有的组策略设置都可以利用gpupdate去强制刷新生效的,有些策略和启动或登录过程相关联,就必须得重启或注销。

三、Group Policy Management Console(GPMC)
允许在一个或多个林内跨站点、域和组织单位管理组策略。可对GPO进行备份、还原、复制和录入;可以添加、编辑、删除WMI筛选器;可以以建模模式或日志模式分析组策略作用的结果。
1、安装:到此处[url]http://www.microsoft.com/downloads/details.aspx?FamilyID=[/url]0a6d4c24
-8cbd-4b35-9272-dd3cbfc81887&displaylang=zh-cn下载软件gpmc.msi(中文版),双击安装。
2、使用: 可利用GPMC对组策略对象进行备份和还原。操作:开始/运行,键入gpmc.msc。(或者开始/程序/管理工具/AD用户和计算机/域上/右键/属性/组策略/打开,将打开GPMC,而不是2000/03默认的组策略编辑器了)在其下找到要备份的组策略,右键,选择:备份或还原。
其它使用,到此处[url]http://www.microsoft.com/china/windowsserver2003/gpmc[/url]
/gpmcwp.mspx下载使用说明(英文),或参考联机帮助(中文)

四、gpresult
在命令提示符下,显示用户或计算机的组策略设置和策略的结果集 (RSoP)。
使用:开始/运行:cmd,键入gpresult。具体参数,参见联机帮助。

五、LDP.exe
可以用这个工具绑定DC,获得对象的信息,还可以“修改”,搜索、添加、删除等。还允许你查找被删除的对象。作用类似AD用户和计算机,功能更强大。可查看AD对象更详细的信息,如GUID、SID等。
1、安装:运行03光盘\SUPPORT\TOOLS\ suptools.msi,将安装在C:\Program Files\Support Tools夹下,还有许多别的工具,如接下来的ADSIedit.msc。
2、使用:
(1)开始/运行:ldp,启动LDP。
(2)连接/绑定:管理员帐号。
(3)查看/树,输入BaseDN,如dc=mcse03,dc=com。
这样就可以对AD对象进行查看、编辑、添加、删除等。:

六、ADSIedit.msc
可进行ADSI低级编辑。
安装:同前
使用:开始/运行:ADSIedit.msc

2-3-2-4 Ntdsutil工具
Ntdsutil.exe是微软提供的管理活动目录(Active Directory)的命令行工具,专供有经验的管理员使用的。它的功能十分强大,采用分层的多级命令结构,使用 Ntdsutil 可以:
¨Authoritative restore授权恢复
对AD对象、子树、甚至整个AD(注意:架构不能进行授权恢复)进行授权恢复。目录恢复模式下进行。
¨Files活动目录库、日志文件
执行活动目录的AD库的管理维护,包括:压缩、移动、检查、恢复、设置路径等。目录恢复模式下进行。
¨Metadata cleanup元数据库清理
删除从网络上非正常卸载域控制器后留下的元数据垃圾。不要进到目录恢复模式下进行。
¨Roles操作主控
管理、传送、查封操作主机。不要进到目录恢复模式下进行。
…………
Ntdsutil工具包括一系列菜单,允许在不同管理任务之间进行切换。默认情况下,Ntdsutil 安装在 systemroot\System32 文件夹内,并可在命令提示符下键入Ntdsutil进行访问。
每级菜单下都可以通过键入:?或HELP,查看本级菜单下可用的命令。用户在Ntdsutil子菜单下键入命令时,可简写,只要每个单词不同于本级命令中的其它命令即可,如:
list roles for connected server
connect to server xxx
为方便起见,您只需指定每个单词,使其与特定菜单中输入的任何其他单词不同。因此,当您越来越熟悉此工具时,就可以键入“li r f c s”而不用键入“list roles for connected server”。关于Ntdsutil工具的具体使用,我们将在活动目录(Active Directory)域故障解决实例详细讲解。

2-3-3活动目录(Active Directory)域故障解决实例
这部分内容将以实例的形式,介绍活动目录(Active Directory)的域故障排除,基本上遵循由易到难,由简到繁的顺序来讲解讨论。

Q1、客户机无法加入到域?
一、权限问题。
要想把一台计算机加入到域,必须得以这台计算机上的本地管理员(默认为administrator)身份登录,保证对这台计算机有管理控制权限。普通用户登录进来,更改按钮为灰色不可用。并按照提示输入一个域用户帐号或域管理员帐号,保证能在域内为这台计算机创建一个计算机帐号。

二、不是说“在2000/03域中,默认一个普通的域用户(Authenticated Users)即可加10台计算机到域。”吗?这时如何在这台计算机上登录到域呀!
显然这位网管误解了这名话的意思,此时计算机尚未加入到域,当然无法登录到域。也有人有办法,在本地上建了一个与域用户同名同口令的用户,结果可想而知。这句话的意思是普通的域用户就有能力在域中创建10个新的计算机帐号,但你想把一台计算机加入到域,首先你得对这台计算机的管理权限才行。再有就是当你加第11台新计算机帐号时,会有出错提示,此时可在组策略中,将帐号复位,或干脆删了再新建一个域用户帐号,如joindomain。注意:域管理员不受10台的限制。

三、用同一个普通域帐户加计算机到域,有时没问题,有时却出现“拒绝访问”提示。
这个问题的产生是由于AD已有同名计算机帐户,这通常是由于非正常脱离域,计算机帐户没有被自动禁用或手动删除,而普通域帐户无权覆盖而产生的。解决办法:1、手动在AD中删除该计算机帐户;2、改用管理员帐户将计算机加入到域;3、在最初预建帐户时就指明可加入域的用户。

四、域xxx不是AD域,或用于域的AD域控制器无法联系上。
在2000/03域中,2000及以上客户机主要靠DNS来查找域控制器,获得DC的 IP 地址,然后开始进行网络身份验证。DNS不可用时,也可以利用浏览服务,但会比较慢。2000以前老版本计算机,不能利用DNS来定位DC,只能利用浏览服务、WINS、lmhosts文件来定位DC。所以加入域时,为了能找到DC,应首先将客户机TCP/IP配置中所配的DNS服务器,指向DC所用的DNS服务器。
加入域时,如果输入的域名为FQDN格式,形如mcse.com,必须利用DNS中的SRV记录来找到DC,如果客户机的DNS指的不对,就无法加入到域,出错提示为“域xxx不是AD域,或用于域的AD域控制器无法联系上。”2000及以上版本的计算机跨子网(路由)加入域时,也就是说,加入域的计算机是2000及以上,且与DC不在同一子网时,应该用此方法。
加入域时,如果输入的域名为NetBIOS格式,如mcse,也可以利用浏览服务(广播方式)直接找到DC,但浏览服务不是一个完善的服务,经常会不好使。而且这样虽然也可以把计算机加入到域,但在加入域和以后登录时,需要等待较长的时间,所以不推荐。再者,由于客户机的DNS指的不对,则它无法利用2000DNS的动态更新动能,也就是说无法在DNS区域中自动生成关于这台计算机的A记录和PTR记录。那么同一域另一子网的2000及以上计算机就无法利用DNS找到它,这本应该是可以的。
若客户机的DNS配置没问题,接下来可使用nslookup命令确认一下客户机能否通过DNS查找到DC(具体见前)。能找到的话,再ping一下DC看是否通。

Q2、用户无法登录到域?
一、用户名、口令、域
确保输入正确的用户名和口令,注意用户名不区分大小写,口令是区分大小写的。看一下欲登录的域是否还存在(比如子域被非正常删除了,域中唯一的DC未联机)。

二、DNS
客户机所配的DNS是否指向DC所用的DNS服务器,讨论同前。

三、计算机帐号
基于安全性的考虑,管理员会将暂时不用的计算机帐号禁用(如财务主管渡假去了),出错提示为“无法与域连接……,域控制器不可用……,找不到计算机帐户……”,而不是直接提示“计算机帐号已被禁用”。可到AD用户和计算机中,将计算机帐号启用即可。
对于 Windows 2000/XP/03,默认计算机帐户密码的更换周期为 30 天。如果由于某种原因该计算机帐户的密码与 LSA 机密不同步,登录时就会出现出错提示:“计算机帐户丢失……”或“此工作站和主域间的信任关系失败”。解决办法:重设计算机帐户,或将该计算机重新加入到域。

四、默认普通域用户无权在DC上登录
见下一小节的Q1。

五、跨域登录中的问题
在2000及以上计算机上登录到域的过程是这样的:域成员计算机根据本机DNS配置去找DNS服务器,DNS根据SRV记录告诉它DC是谁,客户机联系DC,验证后登录。
如果是在林中跨域登录,是首先查询DNS服务器,问林的GC是谁。所以要保证林内有可用的GC。如果是要登录到其它有信任关系的域(不一定是本林的),要保证DNS能找到对方的域。

Q3、如何解决本地或域管理员密码丢失?
本地管理员密码丢失,可通过删除sam文件(2000SP3以前)或通过NTpassword软件来解决。但要解决域管理员密码丢失,它们就无能为力了,这时就需要用到“凤凰万能启动盘”中的ERD Commander 2002了,接下来我们将详细讨论使用此盘解决管理员密码丢失问题。
1、上网搜索“凤凰启动盘”或“凤凰万能启动盘”,大约178M;
2、下载后解压缩,将其内容刻录成光盘;
3、用此光盘启动计算机,显示XP安装界面,Start ERD Commander 2002环境;
4、出现选择菜单,选择第一项:ERD Commander 2002;
5、出现类似XP的启动界面
6、进入选择系统安装的路径,一般会自动测出操作系统、版本及是否域控制器;
7、出现类似的XP桌面:选择Start/Administrative Tools/Locksmith;
8、进入ERD Commander 2002 locksmith向导界面,下一步;
9、选择Administrator,重设其密码;(此时切不可手动重新启动计算机,否则此修改将无效)
10、选择Start/Logoff,点OK;
11、稍候片刻,点reboot后重新启动计算机
凤凰启动盘中的ERD Commander 2002功能强大,不仅可破解本地管理员密码,包括NT/2000/XP/03的各个版本。还可以破解NT/2000/03域管理员密码,均已实验证明。
由于可自动识别操作系统和版本,及是否DC,所以用户在操作时,重设密码的方法都是一样的。对于03,重设密码时要注意符合密码策略中要求的符合复杂性要求,且密码最小长度为7,否则重设的密码会无效。

Q4、无法使用域内的共享打印机?
现象:计算机重启或注销,再登录进来,无法使用以前安装的域内的共享网络打印机,
为用户重新安装打印机,当时可以打印,但不久问题又会出现。用户反映说有时能打印,有时就是不能打印。
其原因在于用户没有登录到域(很多用户即使计算机加入到了域,也经常习惯性地选择登录到本地机),没有域用户身份,当然无权访问域内的资源。而且关键是Windows系统在这里有个小毛病,它并不象你访问共享文件夹那样,由于没有身份而提示你输入用户名和密码来进行验证,而是直接提示你“拒绝访问,无法连接”、“当前打印机安装有问题”,“RPC服务不可用”等等(在不同的操作系统或应用程序中提示会所不同)。

解决办法有3种,最好还是用方法1。:
1、要求用户将其域用户帐号加入到本地管理员组,以后每次都以域用户帐号登录。
说明:这本身就是微软推荐的一种办法。因为如果不这样,普通用户以本地管理员身份登录时,控制本机没问题,但访问域资源时需要输入域用户名和口令;而用户若以域用户身份登录,又没有本机管理特权。比如说:无法关机,无法修改网络等配置,无法安装软件、驱动等。这样做了以后,用户以域用户身份登录,同时他又是本地管理员。

2、在打印服务器上启用Guest用户,保证everyone有打印权限。但这样做不安全,所以不推荐。

3、在客户机上每次要使用打印机前,在开始—运行:\\PrintServer,这时会提示你输入用户名和密码。通过验证后,再去使用打印机。很显然这样方法比较麻烦。

Q5、无法访问域内的共享资源?
上例中我们提到过客户机如果加入到了域,但用户选择登录到本地机。当访问域内共享资源时,会提示输入用户名和口令。若不出现提示,直接出现拒绝访问。一般是由于目标计算机上启用了guest,而guest用户没有权限造成的。
接下来的讨论实质和域的关系不太,但确实是我们访问网络共享资源中经常会碰到的问题:基于UNC路径的IP形式来访问时的故障,如在开始/运行:\\10.63.243.1
前提:在网卡、协议、连接没问题的情况下。即在可ping通的前提下,若\\10.63.243.1不通,排错可从下面几个方面来考虑。
1、目标机的“Microsoft网络的文件和打印机共享”服务的问题。
提示:“\\10.63.243.1 文件名、目录名或卷标语法不正确”。
检查:服务是否安装、是否选中,或重装一下。
操作:网上邻居/右键/属性/本地连接/右键/属性

2、由于访问相关的net logon、server、workstation服务务未正常启动的影响。
提示:
(1)若目标机(为域成员)上的net logon服务停了:“试图登录,但网络登录服务未启动”。
(2)若目标机上的server服务停了:“\\10.63.243.1 文件名、目录名或卷标语法不正确。”
(3)若本机的worstation服务停了:“\\10.63.243.1 网络未连接或启动”。连其它计算机,也是一样的提示。
检查:相应服务是否已经正常启动。
操作:我的电脑/右键/管理/服务和应用程序/服务下

3、由于本机与其它计算机重名(指NetBIOS名称)的影响
提示:访问任何计算机均提示:“找不到网络路径”。
检查:重启一下,看是否有“网络中存在重名”的提示。可能上次开机时没注意给忽略了。
操作:我的电脑/属性/网络标识/属性/计算机名下,修改计算机名。

4、XP/03由于默认安全策略:“帐户:使用空白密码的本地帐户只允许进行控制台登录”的影响
提示:\\10.63.243.1无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是否有访问权限。登录失败:用户帐户限制。可能的原因包括不允许空密码,登录时间限制,或强制的策略限制。
检查:改用非空密码的帐户试试,或查看XP/03目标机上的本地策略。
操作:开始/运行:gpedit.msc。计算机配置/Winodws设置/安全设置/本地策略/安全选项下,由默认值“启用”改为“禁用”。
注意:域帐号访问不受此策略限制。

5、网络共享访问被筛选器的设置所阻止
提示:找不到网络路径
检查: TCP/IP筛选、IPSEC、RRAS筛选器是否被启用,且TCP端口139和445被禁用。
操作:
(1)网上邻居/属性/本地连接/属性:TCP/IP—高级—选项—TCP/IP筛选
(2)网上邻居/属性/本地连接/属性:TCP/IP—高级—选项—IP安全机制
(3)开始/程序/管理/路由和远程访问/IP路由选择/常规/接口/右键属性/常规:输入/输出筛选器。
说明:
(1)RRAS筛选器只在2000/03 Server版中才有,IPSEC只有在2000的上述位置才有。
(2)若你就想设置筛选器,基于端口控制,不让别人访问你的网络共享资源,需要同时禁止TCP:139和445口。
(3)由于此种原因产生的访问故障,一般是由于实验后忘了复原,或别人故意和你开玩笑。

Q6、在AD域中,如何批量添加域用户帐号?
作为网管,有时我们需要批量地向AD域中添加用户帐户,这些用户帐户既有一些相同的属性,又有一些不同属性。如果逐个添加、设置的话,十分地麻烦。一般来说,如果不超 过10个,我们可利用AD用户帐户复制来实现。如果再多的话,我们就应该考虑使用csvde.exe或ldifde.exe来减轻我们的工作量了。最后简单介绍一下利用脚本(可利用循环功能)批量创建用户帐号

一、AD用户帐户复制
1、在“AD域和计算机”中建一个作为样板的用户,如S1。
2、设置相关需要的选项,如所属的用户组、登录时间、用户下次登录时需更改密码等。
3、在S1上/右键/复制,输入名字和口令。
说明:
1)、只有AD域用户帐户才可以复制,对于本地用户帐户无此功能。
2)、帐户复制可将在样板用户帐户设置的大多数属性带过来。具体如下:
选项卡 复制到新用户帐号的属性
常规 无。
地址 除了“街道”之外所有
帐户 除了“用户登录名”之外所有
配置文件 除“配置文件路径”和“主文件夹”。欲复制它们,应该使用%username%变量,如:\\server\share\%username%
电话 无
单位 除了“职务”之外所有。
隶属于 全部
拨入 无,将默认值应用于新帐户。
环境 无,将默认值应用于新帐户。
会话 无,将默认值应用于新帐户。
远程控制 无,将默认值应用于新帐户。
终端服务配置文件 无,将默认值应用于新帐户。

二、比较csvde与ldifde
csvde逗号分隔符目录交换 ldifde轻型目录访问协议互换格式目录交换
功能 只能用来添加对象,不能用于删除/修改 可用于添加/删除/修改对象
格式 字段名1,字段名2,字段名3,……
记录1此值,记录1此值,记录1此值,…… 字段名1: 记录1此值
字段名2: 记录1此值
字段名3: 记录1此值
……
举例
Dn,objectclass,samaccountname,
userprincipalname,useraccountcontrol
“cn=s1,ou=test,dc=mcse,dc=com”,user,s1
s1@mcse.com,512

Dn: cn=s1,ou=test,dc=mcse,dc=com
Objectclass:user
Samaccountname:s1
Userprincipalname:s1@mcse.com
useraccountcontrol:512
共同点
用于导入的文本文件必须包含:
用户帐号的OU,对象的类型以及用户登录名的路径,用户主名
默认(即不指定时):用户帐户为禁用。启用:512,禁用:514
可包含个人信息,但不可包含密码,只能用默认的空口令。
或通过设pwdLastSet字段值为0,使“用户下次登录时须更改密码”(不设这个字段,默认也是如此)。
通过设userAccountControl字段值为66048,可使“密码永不过期”。

三、以csvde.exe为例说明:域用户帐户的导出/导入
操作步骤如下:
1、 在“AD域和计算机”中建一个用户,如S1。
2、 设置相关需要的选项,如所属的用户组、登录时间、用户下次登录时需更改密码等。
3、 在DC上,开始/运行:cmd
4、 键入:csvde –f demo.csv
说明:
(1)不要试图将这个文件导回,来验证是否好使。因为这个文件中的好多字段在导入时是不允许用的,如:ObjectGUID、objectSID、pwdLastSet 和 samAccountType 等属性。我们导出这个文件目的只是为了查看相应的字段名是什么,其值应该怎么写,出错信息如下:
objectGUID:写 UNPRINTABLEBINARY(16) "由于安全原因不允许修改。"
objectSid:写 UNPRINTABLEBINARY(28) "由于该属性处于“安全帐户管理器” (SAM),不允许访问该属性。"

(2)可通过-d –r参数指定导出范围和对象类型。例如:
-d “ou=test,dc=mcse,dc=com” 或 -d “cn=users,dc=mcse,dc=com”
-r “”
5、 以上面的文件为参考基础,创建自己的my.csv,并利用复制、粘贴、修改得到多条记录。例如:
dn,objectClass,sAMAccountName,userAccountControl,userPrincipalName
"CN=s1,OU=test,DC=mcse,DC=com",user,S1,512,S1@mcse.com
"CN=s2,OU=test,DC=mcse,DC=com",user,S2,512,S2@mcse.com
………………,
其它可用字段,我试了一下,见下表(不全):
用户帐户属性 字符名 说明
“常规”标签
姓 Sn
名 Givename
英文缩写 Initials
显示名称 displayName
描述 Description
办公室 physicalDeliveryOfficeName
电话号码 telephoneNumber
电话号码:其它 otherTelephone 多个以英文分号分隔
电子邮件 Mail
网页 wWWHomePage
网页:其它 url 多个以英文分号分隔
“地址”标签
国家/地区 C 如:中国CN,英国GB
省/自治区
St 市/县 L
街道 streetAddress
邮政信箱 postOfficeBox
邮政编码 postalCode

“帐户”标签
用户登录名 userPrincipalName 形如:S1@mcse.com
用户登录名(以前版本) sAMAccountName 形如:S1
登录时间 logonHours 见注释1
登录到 userWorkstations 多个以英文逗号分隔
用户帐户控制 userAccountControl 启用:512,禁用:514,66048
帐户过期 accountExpires

“配置文件”标签
配置文件路径 profilePath
登录脚本 scriptPath
主文件夹:本地路径 homeDirectory
连接 homeDrive
到 homeDirectory

“电话”标签
家庭电话 homePhone 若是其它,均在前面加other,如otherhomePhone多个以英文分号分隔
寻呼机 Pager
移动电话 mobile, othermobil
传真 FacsimileTelephoneNumber
Ip电话 ipPhone
注释 Info
“单位”标签
职务 Title
部门 Department
公司 Company

“隶属于”标签
隶属于 memberOf 用户组的DN不需使用引号,多个用分号分隔
“拨入”标签
远程访问权限(拨入或VPN)msNPAllowDialin
允许访问 值:TRUE
拒绝访问 值:FALSE
回拨选项 msRADIUSServiceType
由呼叫方设置或回拨到 值:4
总是回拨到 msRADIUSCallbackNumber

“环境”、“会话”、“远程控制”、“终端服务配置文件”、“COM+”标签
说明:这些标签,平常极少用到,我也没试。如果需要可以自己导出来看一下,像一些复杂的字段,如:userParameters,还是用粘贴吧。

6、导入到AD,键入 csvde –i –f my.csv –j c:\
说明:-j用于设置日志文件位置,默认为当前路径。此选项可帮助用户在导入不成功时排错。

有一点大家必须明确的是:我们在这里做AD域用户帐户复制、做AD域用户帐户的导出/导入,并不能代替“AD备份和恢复”。我们只是在批量创建用户帐号,帐号的SID都是重新生成的,权利权限都得重新设才行。(当然我们可以把导入的用户,通过memberof字段设到一些用户组中去,使它有权利权限。但这与利用“AD备份和恢复”到原状,完全是两回事)。

四、利用脚本创建批量用户帐户
1、利用脚本创建用户帐号(用户可参考下例)。
Set objDomain = GetObject("LDAP://dc=fabrikam,dc=com")
Set objOU = objDomain.Create("organizationalUnit", "ou=Management")
objOU.SetInfo
说明:在fabrikam.com域创建一个名叫Management的OU。

Set objOU = GetObject("LDAP://OU=Management,dc=fabrikam,dc=com")
Set objUser = objOU.Create("User", "cn= AckermanPila")
objUser.Put "sAMAccountName", "AckermanPila"
objUser.SetInfo
objUser.SetPassword "i5A2sj*!"
objUser.AccountDisabled = FALSE
objUser.SetInfo
说明:在Management OU下创建一个名叫AckermanPila的用户,口令为i5A2sj*!,启用。

Set objOU = GetObject("LDAP://OU=Management,dc=fabrikam,dc=com")
Set objGroup = objOU.Create("Group", "cn=atl-users")
objGroup.Put "sAMAccountName", "atl-users"
objGroup.SetInfo
objGroup.Add objUser.ADSPath
objGroup.SetInfo
说明:在Management OU下创建一个名叫atl-users的用户组,将用户AckermanPila加入到这个组中。

Wscript.echo "Script ended successfully"
说明:显示“脚本成功结束”信息

2、利用脚本中的循环功能实现批量创建用户帐号
Set objRootDSE = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://cn=Users," & _objRootDSE.Get("defaultNamingContext"))
For i = 1 To 1000
Set objUser = objContainer.Create("User", "cn=UserNo" & i)
objUser.Put "sAMAccountName", "UserNo" & i
objUser.SetInfo
objUser.SetPassword "i5A2sj*!"
objUser.AccountDisabled = FALSE
objUser.SetInfo
Next
WScript.Echo "1000 Users created."
说明:在当前域的Users容器中创建UserNo1到UserNo1000,共1000个用户帐户

Q7、我的计算机不知道怎么回事,系统时间总是被改快1小时?
加入域的计算机,没有自己的时间。这是因为时间参数,在AD复制中是一个极为重要的因素。如:决定多主控复制时,谁的修改最终生效。所以整个域的时间,都由域的PDC仿真主控来控制,整个林的时间都由林根域上的PDC仿真主控来控制。
说明:如果整个林的时间都快1小时,对你AD的正常工作没有任何影响。
解决:修改林根域的PDC仿真主控计算机的时间。实际工作中,要先查看域内计算机的时区设置是否正确。

Q8、建立AD域,需要有什么样的权限才行?
1、若是创建林内的第一个域,即林根域,只要有目标计算机上的本地管理员权限即可。
2、作为已有域的附加DC,需要该域的域管理员(Domain Admins)权限。
3、安装子域的DC,或新树的DC,都涉及到林结构的改变,需要林管理员(Enterprise Admins)权限才行。

Q9、如何在2000域中添加一台03的DC?
03和2000比,功能更强大了,在域和AD的体系结构上也有了一些变化(参见前面:域、林功能级别)。但微软的产品十分讲究向前兼容,我们可以实现在一个2000域中加入03DC、加入03DNS,并且DC间的AD复制,DNS间的区域传输,都好像没有版本差异一样。
但要注意:直接就在03计算机上安装AD是不行的,会收到出错提示“Active Directory版本不同”。我们需要做一些准备工作,在2000DC(SP2及更高)上运行03光盘/I386/adprep,
具体第一步:adprep /forestprep进行林准备,第二步adprep /domainprep进行域准备。
顺便说一下:03可以作为2000域的附加DC,2000也可以作为03域的附加DC,而直接在2000上安装AD即可,不需要准备。

Q10、创建AD域时,由于没有NTFS分区,导致AD安装失败?
在2000/03成员或独立服务上上运行dcpromo命令,安装AD,将其提升为DC,其上必须有一个NTFS 5.0分区,用来保存AD的sysvol文件夹。
注意:2000的NTFS分区是NTFS 5.0,NT4的是NTFS 4.0,NT4必须安装SP4后,才可访问2000的NTFS分区。
如果C是引导分区,即系统夹winnt或windows所在分区,采用FAT32分区,系统会自动查找下一个可用的NTFS分区来存放系统卷,如d:\sysvol。如果找不到NTFS分区,就会出错,导致AD安装失败。这时可利用convert命令将某个FAT32分区转成NTFS分区,这个转换会保持数据的完好。但要注意这个转换是单向不可逆,想回复到FAT分区,除非重新格式化该分区。
以转换D盘为例,具体操作如下:
1、开始/运行:convert d: /fs:ntfs

2、提示是否转换,键入y确认转换。
说明:这时并没有真正开始转换,如果后悔,可以到注册表HLM\当前控制\控制\会话管理\BootExecute下,删除其值Convert d: /fs:ntfs 。
3、重新启动计算机,将在登录界面出现前,真正实施FAT到NTFS的转换。

Q11、安装AD域时,出现NetBIOS名称冲突?
在安装AD时,安装选项会要求输入:新域的DNS全名,在这里应该输入新域的完全有效域名FQDN,形如:mcse.com。系统会打算以mcse作为此域的NetBIOS名称,并在网络中检查是否存在重名,需要等一会儿。
如果不重名则设为mcse(建议用户不要修改此名),重名系统则自动设为mcse0,建议用户最好换个名字,因为你的网络可能还会有2000以前版本的老系统,考虑到NetBIOS名称解析和DNS名称解析的互助,保持一致性比较好。
说明:NetBIOS名称,只是为95/98/NT等老版本用户通过“浏览服务”或WINS来识别这个域用的,如果确信域内计算机都是2000及以上系统(它们通过DNS定位域),其实NetBIOS名称冲不冲突,都无所谓。
这种冲突可能源自于网络中如果已有一个域,名字叫做mcse.org,DNS名虽然不冲突,但是NetBIOS名称冲突。也可能是你安装了一个mcse.com域未能完全成功,又再次安装导致的,这样情况倒可以强行将NetBIOS名称将为mcse,而不是mcse0。

Q12、安装AD完成后,重启登录非常慢,甚至长达20分钟之久。
这一般是由于用一台运行了一段时间的2000/03 Server来安装AD造成的,故障较难定位。若重启几次后就正常了,则不必理会。如果多次重启后还是非常慢,那就要重装系统及AD了。建议:最好在新装的系统上来安装AD,这样不容易出问题。

Q13、安装AD时,选择了在本机安装DNS,但安装结束后,在DNS中未生成SRV记录?
如果决定在安装AD过程中在本机安装DNS,应在安装前,将本机TCP/IP配置中的DNS服务器指向自己,这样在安装AD完成后重启时,SRV记录将被自动注册到DNS服务器的区域当中去的,生成四个以下划线开头的文件夹,如_msdcs。
03DNS在这里夹的层次结构有所变化,将_msdcs.域名夹提升了一级,直接放到了查找区域下,但本质没变。
如果安装前忘了将DNS指向自己,也可以后补上。然后到计算机管理/服务下,重启Net Logon服务即可。这样可以把启动时未能注册到DNS服务器的SRV记录(缓存在windows\system32\cache中)写入DNS。如果仍然不行的话,那只好重启DC了。

Q14、安装子域失败。
在保证权限(需要林管理员权限,不要误以为是父域管理员权限)、DNS没问题的情况下,最常见的安装子域失败的原因就是域命名主控失效,出错提示为:“由于以下原因,操作失败:AD无法与域命名主机xxx联系。指定的服务器无法运行指定的操作。”
说明:域命名主控要正常工作,它本身要求GC必须可用。这是由于:为了保证域的名字在林中唯一,域命名主机需要查询GC。若是2000林,GC必须和域命名主机在同一台计算机上才行。若是2003林,不要求GC必须和域命名主机非得在同一台计算机上。
解决:保证域命名主控联机,如果确信其已无法正常工作,可强制传给(查封seize)林内的任意一台DC,子域的DC也可以。原来的主控必须被重做系统后,才可连入网络,以保证域命名主控的林唯一性。

Q15、修改用户密码需要几分钟,甚至更长的时间。
前面我们介绍过:PDC仿真主控负责最小化密码变化的复制等待时间,若一台DC接受到密码变化的请求,它必须通知PDC仿真主控。若是PDC仿真主机失效,收到该请求的DC必须经过一段时间的查找后,确认真的找不到PDC仿真主控了,才会自己修改用户密码。所以在此情况下,应首先检查PDC仿真主控。
如果确信其已无法正常工作,可强制传给(查封seize)域内的任意一台DC。原来的主控必须被重做系统后,才可连入网络,以保证PDC仿真主控的域唯一性。

Q16、正常卸载AD时的常见问题
在实际工作中有时我们需要改变服务器角色,或者将实验中安装的DC回复到普通成员/独立服务器身份,这就要进行AD的卸载。
1、卸载时会提示给新的本地管理员设置密码。

2、附加DC卸载后,仍在域中。

3、如果AD不能卸载,应从以下几方面考虑:
(1)网卡是否正常工作
即使你整个林中只有一台计算机,也要保证网卡正常工作,才能将AD卸载。网卡不工作或禁用网卡都会导致AD无法卸载,提示“卸载SYSVOL文件夹出错”

(2)权限
权限要求与安装AD时类似,若一个林中只有一个域,那么你要卸载的就是林根域,需要林管理员(Enterprise Admins)权限;卸载附加DC需要该域的域管理员(Domain Admins)权限;卸载子域或树,涉及到林结构的改变,也需要林管理员权限。

(3)DNS
一般应保证与安装时所用DNS一致。如果做了DNS规划,必须保证1中权限所要求的管理员身份能通过DNS找到相应DC,进行验证。

(4)域命名主控
卸载时只要涉及到林结构的改变,就需要保证域命名主控有效;卸载附加DC时不要求域命名主控有效。
但要注意的是:卸载时,域命名主控失效的出错信息与安装时的“AD无法与域命名主机xxx联系”提示不同,具体是:由于以下原因,操作失败。以提供的凭据绑定到服务器xxx失败。“RPC服务器不可用”。

(5)卸载的顺序
与安装顺序相反,应该先逐级卸载下面的子域,最后卸载树根域、林根域。否则将导致子域无法卸载,而存在的子域还有问题,找不到林根域、树根域了。
因为这时极有可能架构和域命名主控及GC未转移,林管理员组和架构管理员组(Schema Admins)已经随林根域的删除而没有了。为什么这么说呢?因为如果管理员考虑到主控及GC等的转移问题,也就不会误删除林根域了。

Q17、AD无法正常卸载,或者说DC无法正常降级为成员服务器?
如果按照上例的要求,还是无法正常卸载AD,且出错提示未提到DNS方面的故障。考虑本机上已安装有的应用程序,你还不想重做系统,可考虑使用如下办法。
1、开始/运行,在命令行中输入regedit或regedt32打开注册表编辑器。

2、找到以下的键值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Product Options
键值:ProductType 类型:REG_SZ

3、 将原来的值“LanmanNT”改为“ServerNT”。

说明:
(1)LanmanNT表示本机为域控制器DC,ServerNT表示本机为非DC。

(2)只有当CurrentControlSet1和CurrentControlSet下的键值:ProductType 所等于的数据不同时,即一个为ServerNT,一个为LanmanNT才允许修改。否则将会出如下提示:
¨对于2000:“系统已检测到干预您的注册产品类型,这是您对软件许可证的侵犯。干预产品类型是不允许的。”
¨对于03:“系统检测到您的注册的产品类型有篡改现象。这是对软件许可证的侵犯。篡改产品类型是不允许的。”

(3)教学实践中可以利用ntdsutil将子域的server对象(实质指DC)手动删除,然后运行dcpromo降级,降级失败后演示此知识点。接下来,方法一:
1、重新启动计算机,按F8键进入到“目录服务恢复模式”。
说明:
(1)在此模式下,AD不工作,以便对AD库文件及系统卷sysvol进行操作。
(2)登录的口令不同于平时所用的口令,是在安装AD时,所设的目录恢复模式下的口令。保存在本机一个SAM库文件中。

2、删除存放活动目录数据库的文件夹,默认为C:\WinNT\NTDS,或C:\Windows\NTDS。

3、删除存放系统卷的文件夹,默认为C:\WinNT\SYSVOL,或C:\Windows\SYSVOL

4、重新启动计算机。

5、由于还有一些作为域控制器的注册表键值和文件存在,所以在重新启动完计算机后,还需要使用dcpromo命令来升级计算机B到一个临时的域的域控制器(域名可以任意填写),然后再用dcpromo命令降级,这样才会完整地删除所有和域控制器相关的注册表键值和文件。

方法二
1、开始/运行,在命令行中输入dcpromo。

2、由于前面已经修改了注册表,此时为AD安装界面,而非卸载界面。

3、会遇到如下出错提示:“由于网络上名称冲突,选定默认的NetBIOS域名‘xxx’”。
说明:xxx为你修改注册表前原来域的NetBIOS名称。
4、不必介意出错提示,手动设置你想要的名称。比如你此次的域为abc.com,则手动设xxx改为ABC即可。

5、再接下来会遇到提示:“c:\winnt\ntds文件夹不是空的,当升级处理开始时,要删除文件夹中所有的文件吗?(如果不,请指定另一个文件夹。)”

6、选择:是
说明:
(1)在选择系统卷的夹,如c:\winnnt\sysvol后,时间可能会比较长,请耐心等待。
(2)和正常安装时一样,可能会碰到DNS错误提示,一般选择在本机安装DNS即可。
(3)也可能会出现“计算机已脱离域,帐号未被禁用”的提示,不必理会。
(4)最重要的一点是:这第一次非常可能不成功,再重来一遍dcpromo即可。

7、如果这次安装是为了清除残余的注册表键值和垃圾文件,可再次运行dcpromo进行卸载。当然直接使用这台DC,也是可以的。
最后强调一下,此方法并不是万能的。一是前面我们已经提到的,有时注册表不允许修改或者改完了存不上。再有就是如果在卸载的一开始,就出现有关DNS的出错信息,必须首先排除DNS故障才行。

Q18、如何清理AD数据库中的垃圾对象。
如果我们非正常卸载AD子域、DC等,就会在AD元数据库中留下垃圾。比如上面的例子,又比如未经AD卸载就把DC计算机的系统重做了。这些垃圾对象一般来讲无碍大局,但如果我们想优化AD的性能,不想给用户带来不必要的麻烦(比如用户选择登录到已经不存在的子域),就可以利用ntdsutil工具进行元数据库清理(metadata cleanup),来删除垃圾对象。具体操作如下:
1、开始/运行:cmd,在命令行下键入 ntdsutil。
说明:
(1)直接,开始/运行:ntdsutil,也可以。
(2)进行元数据库清理,不要进到目录恢复模式下。
(3)进行元数据库清理,可以在非DC的2000/XP/03计算机上进行。但有些操作(如使用ntdsutil工具进行授权恢复、整理移动AD库文件)必须在DC上进行。
(4)在ntdsutil的每级菜单下都可以通过键入:?或HELP,查看本级菜单下可用的命令。

2、在 ntdsutil: 提示符下,键入 metadata cleanup ,然后按 ENTER。
说明:ntdsutil是个分层的多级命令行工具,用户在键入名字时,可简写,只要不同于本级命令中的其它命令即可。比如上面的命令metadata cleanup可简写为m c。

3、在 metadata cleanup: 提示符下,键入 connections ,然后按 ENTER。

4、在 server connections: 提示符下,键入 connect to server servername,然后按 ENTER。
说明:
(1)其中 servername 是指域控制器的DNS名称,用主机名或FQDN均可。注意:虽然联机说明中提到了可以用IP去连,但实际上发现用IP去连接,会出现参数不正确的出错提示。
(2)在这里要连接的DC,应是一个正常工作的、可操作的DC,而不是你要清理的那个DC对象。

5、键入 quit ,然后按 ENTER 回到 metadata cleanup: 提示符。

6、键入 select operation target ,然后按 ENTER。

7、键入 list domains ,然后按 ENTER。
说明:此操作将列出林中的所有域,每一域附带与其相关联的一个数字。

8、键入 select domain number,然后按 ENTER。
说明:其中 number 是与故障服务器所在的域相关的数字。

9、键入 list sites ,然后按 ENTER。

10、键入 select site number,然后按 ENTER。
说明:其中 number 是指域控制器所属的站点号码。

11、键入 list servers in site ,然后按 ENTER。
说明:这将列出站点上所有服务器,每一服务器附带一个相关的数字。

12、键入 select server number,然后按 ENTER 。
说明:其中 number 是指要删除的域控制器。

13、键入 quit ,然后按 ENTER,退回到Metadata cleanup 菜单。
接下来,根据需要,删除相应的垃圾对象:

14、键入 remove selected server ,然后按 ENTER。
此时,Active Directory 确认域控制器已成功删除。若收到无法找到对象的错误报告,Active Directory 可能已删除了域控制器。

15、或者键入 remove selected domain,然后按 ENTER。
说明:要想删除域,必须得先删除这个域的server对象(实质是DC)才行。

16、键入 quit 然后按 ENTER 直至回到命令符。

如果清理的是Server对象,还需要:1、到Active Directory 站点和服务上,展开适当站点,删除相应Server对象。2、到Active Directory 用户和计算机上,双击打开Domain Controllers这个OU,删除相应的DC对象。
如果清理的是Domain对象,还需要到Active Directory域和信任关系上,删除相应的已经没有用的信任关系。否则该域名还会出现在登录的域列表。
在实际操作中,必须先做元数据清理,然后再到相应的管理工具中删除相应的对象。若是直接到管理工具中去删,系统将不允许删除。

Q19、欲替换域中唯一的一台DC,如何传送五种主控和转移GC。
一、传送五种主控
操作:
1、安装第二台DC(假设为DC2,原来的为DC1),
2、到相应的管理工具(具体见前)下,右键连接到域控制器:DC2,
3、右键/操作主机/相应标签下,点击更改即可。
说明:
1、其实在图形界面下,操作很简单,关键看能不能成功。
2、目标都在下面,只有架构的特殊,目标在上面。
3、如果DC都是最近安装的,极易成功。如果是运行了一段时间的,就不好说了。但我估计你的成功率应在九成以上,因为一般网管都不太动这个。
4、传送结构主控时,若目标已是GC,会提示出错。可以不理会,继续。因为结构主控负责:更新外部对象的索引(组成员资格),不应该和GC在同一个DC上,应手动移走,否则将不起作用。而单域不需要基础结构主控非得有效,我们一般平常用的都是单域,默认基础结构主控就和GC在一起,不起作用。
5、若传送不成功,不要着急,等5分钟~2小时不等,你什么都没做,再试可能就成功了。可以利用AD站点和服务/站点/默认的第一个站点名/SERVER/DC/ntds setting/AD连接/右键/立即复制副本,来强制AD马上复制。但有时候,仅依赖于此,还是不行,还得等。
6、至于把老DC从AD中去除,在开始/运行/DCPROMO,卸载AD。不要选“这是域中最后一台DC”,若能成功卸载,就一切OK了。如不成功,可以直接把原DC废掉重装。AD中会有原DC的垃圾对象,也不影响什么。若非要清干净,参见前例。
7、如果原角色DC已经无法访问,就只能进行强制传送了,也就是查封(seize)。查封的实质就是强行推出新的主控,会有数据的丢失。在图形界面下会有提示:原主控无法联系,是否强行传送。选择“是”,进行的就是查封操作。
8、利用ntdsutil工具roles下transfer命令和seize命令也可以实现上述操作。实验中发现,无论是用transfer还是seize,关键看是否能连接到原主控。连接下情况,就是传送;不连接情况下就是查封。如:在连接情况下,使用查封(seize)命令,操作的结果仍是传送:原主控不再是主控,目标成为新的主控。

二、转移GC
GC不具有唯一性,可在AD站点和服务中,将DC2设为GC。操作如下:
1、在Default-First-Site-Name/servers/dc2/NTDS Settings/右键/属性。

2、选中“全局编录”。

3、你会看到在选项下面的说明:发布全局目录所需要的时间取决您使用的复制拓扑。
说明:不要急于把DC1断开,应等待足够长的时间,局域网环境一般也就是几分钟。是否将GC的内容成功传送,可在DC2上查看注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters下是否有这样一条:Global Catalog Promotion Complete=1。若未传送完,没有这一条。

Q20、如何进行AD的备份与恢复
最好的办法是作为系统状态数据的一部分,利用2000/03自带的备份工具来进行备份/恢复。备份工具位于:开始/程序/附件/系统工具下。利用备份/恢复系统状态数据,可以恢复之前的域用户帐户数据和DNS,以及安全设置、组策略设置、还有配置等等。但DHCP、WINS等需要单独备份。
说明:
1、DNS区域必须为AD集成区域,如果不是,在备份之前,将标准主区域转成AD集成区域即可。因为AD集成的意思就是:将DNS区域信息,作为AD的一部分进行存储、复制。

2、管理工具下有关AD和域的管理工具的快捷方式不会被恢复(03仍未解决这个问题),可以运行2000S光盘I386\adminpak.msi,将所有的域管理工具追加上。也可手动开始/运行/MMC,添加相应的管理工具,如DNS、AD用户和计算机等。

3、重装的2000/03系统,不必安装AD,直接恢复就行。开机,F8,目录恢复模式,恢复大约需要4-5分钟。(实际当中我也试了,新装的系统,没有安装AD,在正常启动模式下恢复也可以,因为它根本没有AD,不涉及到AD正在工作,不允许替换的问题,只不过时间会稍长一些,约7-8分钟)

4、2000下利用备份工具恢复系统状态数据时,需要手动将“如果文件已存在:不替换”改为“如果文件已存在,总是替换”。
具体操作:工具/选项/还原:选择“无条件替换本地上的文件”。否则2000在恢复时,可能不会把winnt\sysvol\sysvol(里面是组策略具体的设置值,被称为GPT)给恢复回来。03DC上没有这个问题,系统会自动提示是否替换,选择“是”即可。

5、具体备份/恢复的步骤,参考下例。

Q21、如何进行授权恢复
首先我们通过一个例子,来说明一下什么是授权恢复。
设域内有不止一台DC,管理员误删除了一个OU,然后用以前的AD备份进行了恢复操作。如果不做什么特别的设置(即授权恢复),当DC间进行AD同步时,由被恢复的数据是以前的,AD的版本号低,将被其它DC的高版本内容所覆盖。这样刚被恢复的OU就又被删掉了。
所以我们需要手动通过ntdsutil工具指定对这个OU对象进行授权恢复,系统将按距备份时间每隔一天100000的标准来增加其AD版本号,确保一定高于其它DC上的版本号。
具体操作如下:
1、重启DC,按F8,选择目录恢复模式。

2、用目录恢复模式下的管理员SAM帐号登录。

3、开始/程序/附件/系统工具/备份,在恢复标签下进行“系统状态数据”的恢复。

4、若此时重新启动DC,则以上为正常恢复,即非授权恢复。
若要进行授权恢复,则此时一定不要重启DC,开始/运行:ntdsutil

5、键入authoritative restore,到授权恢复提示符

6、键入restore subtree 对象DN(也可以是子树,甚至是整个AD)

7、退出Ntdsutil

8、重新正常启动DC。
说明:若要进行系统卷SYSVOL(主要是组策略设置)的授权恢复,即将组策略恢复到以前的状态,但AD库要保留当前。不必使用Ntdsutil,直接将AD库恢复到其它位置即可,这是因为系统状态数据在备份/恢复时,不能进行细化的选择。

Q22、如何移动、整理AD数据库?
一、移动AD数据库
将 Ntds.dit 数据文件移动到指定的新目录中并更新注册表,使得在系统重新启动时,目录服务使用新的位置。系统为了安全起见,并不删除原来的数据库。具体操作如下:
1、为了以防万一,最好备份AD。
2、重启DC,按F8,选择目录恢复模式
3、用目录恢复模式下的管理员SAM帐号登录
4、开始/运行:ntdsutil
5、输入files,切换到文件提示符files>下
6、输入 move DB to c:\ folder
7、移动Ntds.dit成功提示。
8、输入quit二次,退出
9、重新正常启动DC

二、整理AD数据库
将调用 Esentutl.exe 以压缩现有的AD库文件,并将压缩后的AD库文件写入到指定文件夹中。压缩完成之后,将保留原来的AD库文件,将新的压缩后的AD库文件保存到到该文件的原来位置。
另外顺便说明一下,ESENT也支持联机压缩,目录服务定期(默认12小时)调用联机压缩,但联机压缩只是重新安排数据文件内的页面,并不能象手动压缩这样:将空间释放回文件系统。
整理AD数据库具体步骤如下:
1-5步,与前面相同。
6、输入compact to c:\folder
7、显示整理碎片,直至完成。
8、输入quit,退出。
9、对于2000需要:复制新的NTDS.DIT文件覆盖旧的NTDS.DIT文件
10、重新正常启动DC