活动目录(Active Directory)域故障解决实例(二)
 
接上文  活动目录(Active Directory)域故障解决实例(一)
 
Q18 、如何清理 AD 数据库中的垃圾对象。 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

       如果我们非正常卸载 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

4 、开始 / 运行: 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<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2-3-4 组策略应用相关实例

关于组策略应用的实例,那真是三天三夜也说不完,因为总共有 600+200 多条策略。在此仅举几例,来说明问题。有的比较简单,有的稍微复杂一些,我们会展开来讨论一下。需要强调的是,作为管理员平时要多看看组策略中具体都有哪些设置,当然谁也不可能逐条去实践去测试,但要大概有个印象。当有某种需求时,你才会想起某条组策略设置来,根据印象找到那条策略,先看说明标签,再具体实践,逐步积累。

   前面我们讲过安全策略是组策略的子集(一部分),我们会首先讨论和安全策略相关的实例,然后才是其它的策略。

Q1 、普通域用户无法在 DC 上登录?

       为了保护域控制器,默认能在 DC 上登录的用户只有: Administrators Account operators Backup operators Server operators Print operators 这些特定的管理组。要想使普通域用户有权在 DC 上登录,可以将其加入到这些组中。

       但更多时候,我们不想让用户有过多的权利权限,也可以在开始 / 程序 / 管理工具 / 域控制器的安全策略 / 本地策略 / 用户权利分配 / 允许在本地登录下通过添加,指派其在 DC 上登录的权利即可。

Q2 、在 03 域中添加用户时,总是提示我不符合密码策略,怎么办?

对于 03 ,默认域的安全策略与 2000 域不同。要求域用户的口令必须符合复杂性要求,且密码最小长度为 7 。口令的复杂性包括三条:一是大写字母、小写字母、数字、符号四种中必须有 3 种,二是密码最小长度为 6 ,三是口令中不得包括全部或部分用户名。

我们可以设置复杂一些的密码,也可以重新设默认域的安全策略来解决。操作如下:

开始 / 程序 / 管理工具 / 域安全策略 / 帐户策略 / 密码策略:

¨       密码必须符合复杂性要求:由 已启用 改为 已禁用

¨       密码长度最小值:由 7 个字符 改为 0 个字符

欲策略设置马上生效,可利用 gpupdate 进行刷新。(具体见前)

       如果添加的是本地用户,解决办法与此相同,只不过修改的是本地安全策略。

Q3 、在 2000/03 域中,前网管设置了一个开机登陆时的提示页面,已过时,现想取消,如何操作?

登录到本机时出现,则在管理工具 / 本地安全策略,或开始 / 运行: gpedit.msc 中配置。若是登录到域时出现,则在管理工具 / 域的安全策略,或 AD 用户和计算机 / 属性 / 组策略中配置。具体会涉及到:安全设置 / 本地策略 / 安全选项下的这两条,

¨       交互式登录:用户试图登录时消息标题

¨       交互式登录:用户试图登录时消息文字

Q4 、如何设置不让用户修改计算机的配置(如 TCP/IP 等)?

可以利用本地策略或基于域的组策略锁定,具体操作:

1    本地:开始 / 运行: gpedit.msc 。或

2    域:开始 / 程序 / 管理工具 /AD 用户和计算机 / 域名上 / 右键 / 属性 / 组策略 / 默认域的组策略

3 、在用户配置 / 管理模板 / 网络 / 网络及拨号连接:禁止访问 LAN 连接的属性。

说明:

1    若利用本地策略实现,本地管理员,可以重新设置策略解开。

2    若利用域策略实现,只是域用户受此限制。本地管理员,不受此限制。

所以应该不给用户本地管理员口令,让用户以非本地管理员 / 域用户身份登录。为了保证用户能安装软件或做其它管理工作,可将其加入本地的 Power Users 组。

Q5 、非管理员用户无法登录到终端服务器?

       欲使用户能利用 终端服务客户端软件 远程桌面 登录到 2000/03 Server ,对于 2000S 需要在服务器上安装终端服务,对于 03S 只需在我的电脑 / 右键 / 属性 / 远程 / 远程桌面下,选中 允许用户远程连接到这台计算机 即可。对于管理员默认即可通过 TS 登录进来。

       非管理员用户通过终端服务无法登录,除了网络连接方面的问题以外,主要有以下五个方面的原因:

1 、终端服务器同时是 DC ,而普通用户无权在 DC 上登录。

       解决办法:具体见前。

2 、安全策略 / 本地策略 / 用户权利分配:通过终端服务允许登录。

       这是 03 特有的, 2000 没有这条安全策略。解决办法,

方法一、在我的电脑 / 右键 / 属性 / 远程 / 远程桌面下,选中 允许用户远程连接到这台计算机 选项后,单击 选择远程用户 / 添加。用户将被自动加入到 Remote Desktop Users 组,而这个组默认有 通过终端服务允许登录 的权利。

方法二、手动将用户加入到 Remote Desktop Users

方法三、手动直接指派用户 通过终端服务允许登录 的权利

注意:如果终端服务器同时是 DC ,必须使用方法三。原因是为了保护 DC DC 上的本地安全策略里,只允许 Administratrs 组有此权利,而将 Remote Desktop Users 组删掉了。

3 、开始 / 程序 / 管理工具 / 终端服务配置 /RDP-Tcp/ 右键 / 属性 / 权限。

       解决办法:手动将用户加入到 Remote Desktop Users 组,或确保用户在此权限下有来宾访问或用户访问的权限。

4 、用户所用帐号口令为空。

       若终端服务器为 03 ,用户使用此服务器上的本地帐号、且口令为空,通过 TS 登录。由于 03 本地安全策略 / 本地策略 / 安全选项 / 帐户:使用空白密码的本地帐户只允许进行控制台登录,默认启用,这将会阻止用户登录。解决办法:使用非空密码或禁用此策略。

       顺便提一下,这也是常见的通过网络访问 XP/03 上的共享资源,不通的原因之一。

5 、所用帐号属性 / 终端服务配置文件 / 允许登录到终端服务器 选项。

       这个选项,默认就是选中的,除非有人动过。解决办法:手动选中即可。

6 、还有两种可能:
1 2000 :未安装 TS 服务; 03 :未启用远程桌面
2 03 :启用了 ICF ,但未设允许 RDP 进入

Q6 、在 2000 (也仅是 2000 )中由于禁止本地登录权利而导致的所有用户、管理员无法登录。

       在安全策略 / 本地策略 / 用户权利分配下有两条策略:

¨       拒绝本地登录,默认为 未定义

¨       允许在本地登录,其默认值分别为:

u       本地计算机策略: Administrators Backup Operators Power Users Users

u       默认域的策略:未定义

u       默认域控制器的策略: Administrators Account Operators Backup Operators Server Operators Print Operators IUSR_dcname

       说明:如果在同一级别上、对同一对象(用户或组)、同时设置了 允许 拒绝 拒绝 权利的优先级别高。也就是说二者冲突时, 拒绝 权利生效。

假设不小心或干脆有人使坏在拒绝本地登录上设置了所有人或管理员,又或者在允许登录上把管理员给删掉了。不论哪一种情况都会导致管理员无法登录,出错提示为: 此系统的本地策略不允许您采用交互式登录 ,也就没办法将策略设置改回正常了。

这种情形看起来像一个解不开的 " 死结 " :要解除禁止本地登录的组策略设置,必须以管理员身份本地登录;要以管理员身份本地登录,就必须先解除禁止本地登录的组策略设置。

问题还是有办法解决的,分别讨论如下:

一、被域策略和域控制器策略所阻止

       显然你应该是被域策略和域控制器策略同时阻止了登录权利,因为:

1 、如果只是域策略阻止,由于默认域控制器的策略上允许 Administrators 登录,而域控制器( Domain Controllers )是个 OU ,前面我们讲过组策略的 LSDOU 原则,所以管理员可以登录到 DC 上,把策略改回去。

2 、如果只是域控制器的策略阻止,它只对 DC 生效。管理员可以在域内的其它计算机上登录到域,把策略改回去。

要解决被域策略和域控制器策略同时阻止,首先我们来回顾一下前面讲过的 具体的策略设置值存储在 GPT 中,位于 DC winnt\sysvol\sysvol 中,以 GUID 为文件夹名。 其中安全设置部分保存在 DC winnt\sysvol\sysvol\ 你的域名 \Policies\ 策略的 GUID\MACHINE\Microsoft\Windows NT\SecEdit\GptTmpl.inf 这个安全模板文件中。它实质就是一个文本文件,可利用记事本进行编辑。

说明:前面我们介绍过,默认域的策略、默认域控制器的策略使用固定的 GUID ,分别是:

¨       默认域的策略的 GUID 31B2F340-016D-11D2-945F-00C04FB984F9

¨       默认域控制器的策略的 GUID 6AC 1786C -016F -11D2-945F-00C04FB984F9

可以利用 C 盘的隐含共享 C$ ,或 winnt\sysvol\sysvol 的共享 sysvol 连过去,直接编辑,具体操作如下:

1 、在另一台联网的计算机( Win9X/2000/XP 均可)上,使用域管理员账号连接到 DC

2 、利用记事本打开 GptTmpl.inf 文件。

3 、找到文件中 [Privilege Rights] 小节下的拒绝本地登录 SeDenyInteractiveLogonRight 和允许在本地登录 SeInteractiveLogonRight 关键字,进行编辑即可。如:

¨       使 SeDenyInteractiveLogonRight 所等于的值为空。

¨       保证 SeInteractiveLogonRight= *S-1-5-32-544 ……

4 、保存退出。

说明:

1 、关于各 SID 所表示的意义,参见前面的表格。 SID 前面的 * 要保留,系统执行时才不会其后面的 SID 当作具体的用户 / 组的名字。

2 、如果域中不止一台 DC ,为保证 DC 同步时刚才所做的修改最终生效(原理同授权恢复),需要:

1 )打开 winnt\sysvol\sysvol\ 你的域名 \Policies\ 刚刚所修改策略的 GUID\ GPT.INI 文件

2 )找到文件中的 [General] 小节下的 Version ,手动将其值增大,通常是加 10000 。这是我们修改的这个组策略对象的版本号,版本号提高后可以保证我们的更改被复制到其它 DC 上。

3 )保存退出。

5 、重新启动 DC ,域策略将被刷新。

说明:也可以在 DC 上运行 secedit /refreshpolicy machine_policy /enforce 刷新策略,这样就不必重启 DC 了。但需要用到 telnet ,细节参考前面 telnet 命令和接下来的内容。

6 、以域管理员身份在 DC 上正常登录到域,重新设置安全域策略中的相关项目。

二、被本地安全策略所阻止

       很多人都会想到利用 MMC 远程管理功能,重设目标机的安全策略。具体操作如下:

开始 / 运行 /MMC/ 添加 / 组策略 / 浏览 / 计算机 / 另一台计算机,如果有权限的话,你会发现你能找到并管理其它的策略设置,但是就是没有安全策略等项目出现在列表中。

       这是由于在 Windows2000 中,不支持对计算机本地策略的安全设置部分进行远程管理。而且本地安全策略设置的实现也与域策略不同,它存放在一个二进制的安全数据库 secedit.sdb

那么我们该怎么办呢?我们可以使用 telnet 连接到故障计算机上,利用前面我们介绍过 secedit 命令导出安全设置到安全模板,即扩展名为 .inf 的文本文件中。利用记事本编辑后,再利用 secedit 命令将修改后的安全设置配置给计算机,这样也就大功告功了。但如果故障计算机上的 telnet 服务没有启动,那么我们应该首先把故障计算机上 telnet 服务启动起来,才能连过去。

说明:因为 telnet 服务的启动类型,默认为手动,所以正常情况下它是不会启动的。此时连过去的出错信息为:正在连接以 xxx 不能打开到主机的连接,在端口 23 :连接失败。

综上所述,具体解决办法如下:

1 、在另一台联网的计算机( 2000/XP/03 均可)上,修改其管理员密码,使用户名和口令均与故障计算机上的相同。(这主要为了方便,若在连接或使用的时候输入目标计算机上的用户名和口令,也可以)

2 、注销后,重新登录进来。

3 、我的电脑 / 右键 / 管理,打开计算机管理。

4 、在计算机管理上 / 右键 / 连接到另一台计算机:故障计算机 IP

5 、在服务下找到 telnet ,手动将它启动起来。

接下来使用 telnet 连接过来

6 、开始 / 运行: cmd ,键入 telnet 目标 IP

7 、在 C:\> 提示符下,键入 secedit /export /cfg c:\sectmp.inf ,导出它的当前安全设置。

8 、点击开始 / 运行: \\ 目标 IP\C$ ,双击 c:\sectmp.inf ,用记事本打开。

9 、编辑 sectmp.inf 文件,具体同前面情况一的步骤 3

10 、回到步骤 7 的命令窗口,键入 secedit /configure /db c:\sectmp.sdb /CFG c:\sectmp.inf 将修改后的设置值,配置给计算机。

11 、运行 secedit /refreshpolicy machine_policy /enforce 刷新策略,这样就不必故障计算机了。

12 、以本地管理员身份在故障计算机上正常登录到域,重新设置安全域策略中的相关项目。

最后说明一下:对于 XP/03 不存在上述问题,微软已经修正了这个问题。用户不能阻止所有人或管理员登录,在图形界面下根本设不上;使用其它手段强行设上了也不起作用。因此大家可以想一想,针对上面第一种情况,实际上可以加一台 XP/03 2000 域,在 XP/03 上登录到域,将其解开。

本例的实际排错意义并不大,但建议大家最好还是能把这个实验做一下,因为它涉及到了很多知识点,如:基于域安全策略、本地安全策略的实施原理,组策略及其优先级,权利、 SID ,还有同名同口令帐户登录、 telnet secedit 工具的使用等等。再有大家也可以做一下实验,既然我们能通过网络解开,同样也能通过网络设上。

Q7 Win2000/03 域中默认策略被误删,如何恢复?

       对于 Win2000 ,微软在 下载中心 提供了 Windows 2000 默认策略还原工具的下载。微软开发这一工具旨在帮助用户在意外删除默认策略时,能够重新还原 默认缺省域的组策略 默认域控制器的组策略 文件。请到下列地址下载相应工具:

[url]http://www.microsoft.com/downloads/details.aspx?FamilyID=b5b685ae-b7dd-4bb5-ab[/url]2a-976d6873129d&DisplayLang=en

对于 Win03, 微软提醒用户不要将其应用于 Windows Server 2003 上。 Win03 自带的 Dcgpofix.exe 就可以完成还原任务。

需要强调的是:作为管理员应及时将组策略的设置进行备份。可利用 2000/03 自带的备份工具,把组策略作为系统状态的一部分进行备份。也可以利用 GPMC 工具专门备份组策略的设置。这样即使出问题了,重新恢复,也不用再把组策略重新设置了。

Q8 、作为管理员,我通过组策略设置了一些限制,如 不要运行指定的 windows 应用程序 ,但总有个别用户在网上能找到破解的办法,我该怎么办?

这段话使我想起了关于网络安全一条名言:没有绝对的安全。我个人也觉得在计算机网络世界里,永远是高手在蒙低手。若水平都很高,那么最终的安全又回到了物理安全设置上(术语叫:社会工程)。下面以 不要运行指定的 windows 应用程序 这条组策略设置的***转换,来阐明这个问题

第一回合:

       管理员:通过本地策略限制某用户运行某些用户程序,如 QQ 、反恐、 realplay 等。操作:开始 / 运行,键入 gpedit.msc ,用户配置 / 管理模板 / 系统 / 不要运行指定的 windows 应用程序,启用/显示/添加:上述应用的 .exe 文件名即可。

       用 户:用户如果知道管理员怎么设置的限制,同样的办法取消限制即可。

第二回合:

       管理员:将 mmc.exe 也加入到上述禁止运行列表中,使用户无法打开任何 MMC 管理控制台。

       用 户:开始 / 运行: cmd ,键入 mmc ,将会打开控制台下,文件 / 添加删除管理单元,添加:组策略对象编辑器 / 本地计算机策略,取消限制。

       说明:用户在 CMD 方式下,直接键入 gpedit.msc 仍不能运行。此解法的知识点来自这条策略的说明标签。

第三回合:

       管理员:将 cmd.exe 也禁止运行

       用 户:重新启动计算机,按 F8 ,选择带命令行的安全模式。登录进来后,在 CMD 方式下,键入 mmc ,将会打开控制台下,文件 / 添加删除管理单元,添加:组策略对象编辑器 / 本地计算机策略,取消限制。

第四回合:

       管理员:一看不行了,还是借助于基于域的组策略吧。将用户计算机加入到域,不给用户本地管理员的口令,要求用户使用一个域用户帐号(为不影响用户的其它正常应用,可将其加入到客户机的 Power Uers 组),并将此域用户帐号放到一个 OU 中,链接组策略,设置上述限制。

       用 户:手动删除注册表 HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Policies\Explorer\DisallowRun
下的被禁用的程序。

第五回合:

       管理员:因为默认情况下,若用户手动修改注册表中的组策略设置值,若策略未变,组策略不负责强制改回。管理员可利用组策略/计算机配置/管理模板/系统/组策略/注册表策略处理,设置成 即使尚未更改组策略对象也进行处理 ,执行强制性的、周期性刷新策略。

       用 户:用户修改程序文件名,以避开策略的限制(尤其是对非 MS 的应用程序)。

第六回合:

       管理员:设置权限,让用户无权修改文件名。

          户:利用用凤凰启动盘重设本地管理员密码,以本地管理员登录进来后,不受上述限制,也可以干脆脱离域

第七回合:

管理员:在 BIOS 中禁用光驱并设上 BIOS 密码,或物理断开光驱。

用 户:打开机箱,跳线清除 BIOS 密码,或物理连接上光驱。

……    ……

       通过本例大家也看到了,作为网络员应当不断学习,提高自身技术才行。在学习要充分利用Internet这个最广博的老师,最大的知识库。