使用组策略并不总是那么容易。当然,当您可以从上到下设置
GPO
和策略设置并将它们反映在用户的桌面上时,这是一件令人愉快的事情。但是,当您希望组策略时,在实现该愿望之前会进行特定的过程。确实,上一章讨论了何时应用组策略。现在,您了解了游戏的一般规则以及何时发生。
但是,如果发生意外情况怎么办?更具体地说,很难确定
策略设置来自何处以及如何应用。或者,如果组策略不起作用,为什么不起作用,又是怎么回事?另外,您通常会受到别人的指责,但这是审计(在第
8
章
“
使用组策略实现安全性
”
中讨论的)可以帮助您完成的任务。
用户可能会致电服务台并大声宣称:
“
我的桌面上的一切刚刚改变!我希望他们回到原来的状态!
”
好的,当然,您也希望事情变得更好。但是涉及很多变量。首先,有四个级别:本地组策略(以及
Windows Vista
和更高版本中可能包含多个本地
GPO
),站点,域以及每个嵌套的
OU
(因此可能还有更多级别)。然后,更糟糕的是,如果多个管理员在您的环境中同时进行多个和同时的组策略更改,该怎么办?谁知道谁启用了哪些组策略设置以及某些用户如何应用组策略?
还涉及其他因素。例如,您可能拥有一个具有对另一个目录林的跨目录林信任的
Active Directory
,并且用户正在整个地方登录
–
更不用说在您许愿和执行请求之间可能会出错的一整堆事情。客户有望兑现这一愿望的时间。
以下是对
GPO
进行故障排除时的期望:
禁用的
GPO
如果禁用了
GPO
或禁用了一半的
GPO
,则需要查找它。
也许有人决定禁用
GPO
链接并且没有告诉您?
WMI
筛选的继承问题和麻烦
在本地,站点,域和多个嵌套
OU
之间,找到需要修复的
GPO
可能是一个挑战。此外,引入
WMI
筛选器会使疑难解答变得更加困难。
给定级别的
GPO
优先级
将多个
GPO
链接到
Active Directory
中的特定级别,您可能需要做一些额外的工作。
权限问题
确保用户和计算机在正确的站点,域和
OU
中是一场战斗。确保他们具有访问
GPO
的正确权限是另一回事。
复制问题
在搜寻不适用的策略设置时,域控制器上
GPO
本身的健康状况很重要。
基础结构问题
组策略处理要求您的基础结构的所有部分都是健康的,包括看似无关的部分,例如
DNS
,客户端上运行的服务以及在客户端和域控制器之间传递网络协议的能力。好的
Active Directory
设计等于好的(一致的)组策略处理。当
Active Directory
(或复制)的行为异常时,首先要查看的是
DNS
。正如我的好朋友
Mark Minasi
所说:
“
查找复制问题的第二个地方也是
DNS
。
”
这是因为
Active Directory
的问题几乎总是由
DNS
配置错误引起的。
回送策略处理
有时,由于错误,管理员为一台(或多台)计算机启用了回送策略处理。发生这种情况时,用户会看到意外的行为,因为通常应用于他的
GPO
突然变得异常。仅了解回送策略处理的工作原理可能会很棘手。我们不仅有两种不同的模式(
“
替换
”
或
“
合并
”
),而且您还可以在
GPO
本身上具有复杂的权限设置,这使得计算给定用户将要执行的设置变得困难。
慢速链接
您已经为
Windows
用户提供了
VPN
,或者已推出
DirectAccess
以获得无缝
VPN
体验。现在,您的客户如何以及何时处理
GPO
?这些只是您可能会遇到麻烦的几个地方。在具有不同处理行为的各种类型的客户之间,这些问题和偶尔的太阳耀斑使事情变得疯狂。故障排除会变得很复杂。快速。
在本章中,我们将首先探讨组策略的
“
生存
”
位置,以使您更好地了解正在发生的事情。然后,我们将探索一些技术和工具,使您可以更好地了解为什么要应用特定策略。
现在您可能正在运行任何数量的操作系统:从
Windows XP
到
Windows 10
的任何操作系统,更不用说服务器(充当组策略客户端),包括
Windows Server 2003
到
Windows Server 2016
。
在本章中,我们将着重于对
Windows 10
进行故障排除。不过,该材料在
Windows 7
和
8
上应该都能正常工作,因为它们的
“
直觉
”
非常类似。但是,为了在本书中为
Windows 10
留出一点空间,我确实在这里杀死了一些
Windows XP
信息。您将可以在本书的先前版本中找到有关
Windows XP
的深入故障排除信息。
就是说,这是您需要了解其他操作系统并进行故障排除的
“
图表
”
:
■
■
Windows XP
和
Windows Server 2003
中共享相同的胆量,所以他们一般
troubleshot
相同。查找对
Windows XP
的引用。
■
■
Windows 8
中,
Windows Server 2012
中,
Windows 7
中,
Windows Vista
中,
Windows Server 2008
中,和
Windows Server 2008 R2
都
troubleshot
相同。寻找参考
Windows 8
,
Windows 7
或
“ Windows Vista
及更高版本
”
。
组策略的幕后
■
■
的
Windows 8.1
和
Windows Server 2012
是
troubleshot
相同。
■
■
的
Windows 10
和
Windows Server 2016 troubleshot
相同,但它应该是完全一样的
Windows 8.1
和
Server 2012
中,也出现了自
Windows 8.1
没有惊天动地的更新。
在某些情况下,可能会出现一个操作系统无法
“
适应实际情况
”
的情况。在这种情况下,我将为您明确指出。
组策略的幕后
如第
1
章所述,组策略范围有四个级别:本地组策略(包括多个本地组策略对象),然后是基于
Active Directory
的组策略的三个级别
–
站点,域和
OU
。在对组策略进行故障排除时,一种方法是首先对幕后的情况有一个全面的了解。小时候,我一直都把东西拆开。我的父母回家后变得很沮丧,洗碗机散落在整个厨房地板上。它没有坏;我只是想知道它是如何工作的。如果您像我,那么以下部分适合您。
内部本地组策略
请记住,当有人走到计算机,运行本地组策略对象编辑器(
GPEDIT.MSC
)并发出一个或三个愿望时,就会操纵
GPO
。请记住,在
Windows XP
中,一台计算机上只有一个本地
GPO
,并且本地
GPO
会影响登录到该计算机的每个人。在
Windows Vista
和更高版本中,存在多个本地
GPO
(
MLGPO
)。
默认情况下,企业管理员在单个客户端计算机上没有本地管理员权限。域管理员(而非企业管理员)拥有本地组策略对象(
LGPO
)的权限。
本地组策略所在的位置
一旦使用
GPEDIT.MSC
做出了希望
并修改了本地组策略,则本地组策略将驻留在两个位置。第一部分基于文件,第二部分
基于注册表:
本地组策略的基于文件的部分(
Windows
的所有版本)
默认本地
GPO
的基于文件的部分可以在
%
windir
%
\ system32 \ grouppolicy
中找到
。
MLGPO
的本地组策略的基于文件的部分
请记住,在
Windows Vista
和更高版本中,存在多个本地
GPO
(
MLGPO
)。因此,这些特定于用户和特定于组的
GPO
的存储位置与默认本地
GPO
的存储位置不同。即,它们存储在
名为
GroupPolicyUsers
的
\ Windows \ SYSTEM32
的新子文件夹中,如图
7.1
所示。
图
7.1
查看
Windows 7
本地
GPO
的目录
如图
7.1
所示,有三个
SID
命名的文件夹,它们包含本地
GPO
的用户特定部分。(请记住,计算机部分适用于所有人,因此这里没有显示计算机部分。)您在这里可能有三个以上的文件夹。在我的示例中,您在列表中看到的第一个
SID
(
SID
为
S-1-5-213628237629-333814571-3360194165-1001
)是我为其创建了用户特定本地
GPO
的用户帐户的
SID
。
而且,正如您从第
1
章所知,我可以定义任意数量的用户特定的本地
GPO
。每个用户特定的
GPO
都有自己的基于
SID
的文件夹。
如果决定定义本地
GPO
,则在图
7.1
中看到的文件夹类似于在
Windows Vista
和更高版本的系统上找到的文件夹。名为
S-1-5-32-544
的文件夹定义了
Administrators GPO
(并非巧合的是,它是内置
Administrators
组的
SID
)。同样,名为
S-1-5-32-545
的文件夹是内置
Users
组的
SID
,它代表非管理员本地
GPO
。
同样,您应该注意到默认本地
GPO
与这些用户特定的本地
GPO
之间的主要区别:默认本地
GPO
除了默认的用户文件夹之外,还包括计算机特定的计算机文件夹。但是,任何特定于用户的本地
GPO
都仅包含一个
“
用户
”
文件夹(因为它仅包含特定于用户的策略设置)。
在本地
GPO
镜像中找到的文件和文件夹大部分是基于
Active Directory
的
GPO
的基于文件的部分存储其内容的方式。这是个好消息,因为它使人们对两种
GPO
(本地
GPO
和基于域
GPO
)的理解几乎相等。
请随意检查
%
windir
%
\ system32 \ grouppolicy
文件夹,然后跳到本章后面的
“
组策略模板
”
部分,以获取文件结构的要点。但是请注意,在编辑本地
GPO
之前,可能不会存在所有结构。
组策略的幕后
内部
Active Directory
组策略对象
这是有关组策略的奇怪部分(好像还不够奇怪)。第
1
章讨论了如何创建
GPO
涉及两个步骤。首先,将
GPO
写入组策略对象容器中,然后将其
链接
到级别
–
站点,域或
OU
。因此,我们知道
GPO
并没有真正
“
活在
”
它们所链接的级别。具体来说,所有
GPO
都生活在域中的
“
组策略对象
”
容器中。也就是说,它们始终保持嵌套在此容器中,但在逻辑上链接到(但不存储在)它们指向的其他级别。
我提到我们创建的
GPO
是在域内的虚拟池中四处游动。到目前为止,我们创建了四个影响故事情节的新
GPO
:
■
■
“
隐藏屏幕保护程序选项,
”
这是我们应用到默认的第一个站点的名称网站
■
■
“
禁止更改声音,
”
这是我们应用到
Corp.com
域
■
■
“
隐藏鼠标指针选项
/
还原屏幕保护程序选项,
”
这是我们应用到
人力资源的用户
OU
■
■
“
自动启动的
calc.exe
,
”
这是我们应用到
人力资源的计算机
OU
也可能有其他
GPO
,它们没有关联并且只是在游泳池中闲逛,例如
“
从
“
开始
”
菜单中删除运行
”
或您创建的其他
GPO
。
我们可以将这些
GPO
的概念作为组策略对象容器中的游泳池中的对象进行检查,如下所示。
Corp.com GPO
游泳池
如您所见,
GPO
从不
“
活跃
”
在
Active Directory
中的任何级别。尽管可以(使用老式界面)显示它们的位置,但是它们并没有存储在任何特定级别。
重申一下,如果您利用应该影响站点,
OU
甚至域的
GPO
,则
GPO
本身不会直接存储在该级别。而是,
GPO
链接到
Active Directory
中的级别。调用
GPO
时,它必须请求域控制器从组策略对象容器(以及从
SYSVOL
中的其部分)中获取该
GPO
并将信息拉出。
每次创建新的
GPO
时,该
GPO
都会诞生并放入域中的游泳池中
–
如果链接到
Active Directory
中的某个级别,则可以立即采取行动。通过将
GPO
链接到另一级别的
Active Directory
,可以在
Active Directory
中的多个级别重用它。
因此,当创建
GPO
以便在站点,域或
OU
级别上使用时,它们总是在域游泳池(组策略对象容器)中创建,我们在需要的时候仅链接到所需的
GPO
。
我们将在这里继续有点混乱的讨论。我们将讨论与域相关的
GPO
,与
OU
相关的
GPO
,然后再讨论与站点相关的
GPO
。是的,是的,我们都知道
“
正确
”
的顺序是站点,域,
OU
,所以请在这里接受(我想您会在讨论结束后理解为什么我们会出现故障)。
域角度的组策略对象
由于我们知道所有
GPO
都只是挂在组策略对象容器中等待使用,因此我们可以进一步迈出这一步。也就是说,即使是那些链接到域级别的
GPO
也不免于被
“
获取
”
。当客户端使用域链接的
GPO
时,它们必须发出相同的请求并
“
询问
”
适用于它们的
GPO
的域控制器。
。
通常这不是问题。域控制器可以很轻松地将
GPO
放入游泳池以将其应用于域。但这正是为什么
跨域
GPO
链接如此缓慢而痛苦的原因。
例如,在具有多个域的环境中,回收位于另一个域中的现有
GPO
似乎更容易。但是,当需要在
GPO
中获取信息时,则需要将其从原始域的域控制器中完全带回。同样,这种跨域
GPO
链接非常非常痛苦,应不惜一切代价避免。在第
2
章
“
使用
GPMC
和通过
Powershell
管理组策略
”
的
“
基本域间复制和导入
”
部分中,我讨论了将
GPO
从一个域复制到另一个域的想法。这完全避免了该问题,因为从源域创建副本,然后将副本保存在您的域中没有
“
惩罚
”
。当然,它占用了新域的游泳池中的少量存储空间。但这比跨域链接更好。
OU
视角下的组策略对象
由于
GPO
位于域级别的
“
组策略对象
”
容器中,因此组策略的工作方式具有明显的优势:这非常容易
将
GPO
移动,链接和取消链接到域和
/
或其
OU
。如果需要,可以取消链接域或
OU
中的
GPO
,然后将其链接回其他某个
OU
。或者,您可以将一个
GPO
链接到域和
/
或多个
OU
。
通常,您将使用
OU
来应用大多数
GPO
。如果
GPO
位于
“
组策略对象
”
容器游泳池中,则多个不相关的
OU
可以很容易地重用相同的
GPO
,而只需创建到现有
GPO
的新链接即可。
站点角度的组策略对象
站点级
GPO
有点独特。如果您通过
Active Directory
站点和服务使用(或继续使用)旧界面来指示基于站点的
GPO
,那么您可能会痛苦不堪。默认情况下,使用老式界面创建的所有站点级
GPO
都将驻留在
根
域的域控制器的
“
组策略对象
”
容器中,并且仅存在于根域(即第一个联机的
Active Directory
域)中。然后,每当客户端系统调用供站点使用的
GPO
时,则来自根域的域控制器必须获取该信息。如果距离根域最近的域控制器在新加坡,那就去吧。您可以看到疼痛可能加剧的地方。
GPMC
基本上迫使我们以周到的方式创建基于站点的
GPO
。
具体来说,您需要在您选择的域游泳池中创建
GPO
。然后,您需要将
GPO
从域链接到所需的站点。如您在第
1
章中所看到的,我们首先在组策略对象容器中创建
GPO
。
这个想法是在有意义的域中创建
GPO
,并且该域最接近将使用站点链接
GPO
的位置。然后,一旦我们公开了该站点,我们只需添加到现有
GPO
的链接,该链接已在域游泳池中。简而言之,我们获得了
GPO
网站来利用最近的域的游泳池。当然,要考虑哪个游泳池最靠近站点中的用户和计算机,还需要进行一些额外的计划,但这是值得的。这样,我们不会要求新加坡的某些域控制器为纽约用户提供服务。
请记住,默认情况下,只有
Enterprise Administrators
组的成员(或根域中
Domain Admins
组的成员)才能创建新的站点级
GPO
或从站点级链接到现有
GPO
。(可选)可以委派此权利。
GPO
的诞生,生与死
现在您了解了
GPO
的住处,我们可以采取下一步:了解
GPO
的
“
旅程
”
。具体来说,
GPO
是天生的,并且要保持生命就必须保持健康。如果它的用完了,您可以叫女高音男孩来重击它
–
再也看不见了。
组策略对象是如何
“
出生
”
的
在生出
GPO
之前,您需要具有这样做的权利,并且可以通过两种方式获得这些权利。首先,您可以是组策略创建者所有者或
Domain Admins
安全组的成员。
如果您是
“
组策略创建者所有者
”
组的成员,则有权创建但不链接
GPO
。域管理员可以创建
GPO
并将它们链接到所需的位置。
您还可以通过
GPMC
在组策略对象容器中的
“
委派
”
选项卡中授予显式权限(如第
2
章所述)。
右键单击
“
组策略对象
”
容器,然后选择
“
新建
”
,将诞生一个新的
“
组策略对象
”
。现在,您要开始执行一系列特定的事件。
首先,默认情况下,联系
PDC
仿真器以查看其是否可用于编写。否则,用户将收到一条
RPC
(远程过程调用)错误消息,如图
7.2
所示。
图
7.2
如果无法使用
PDC
仿真器进行写入,并且启动了
GPO
,则用户将收到错误消息。
当您使用
GPMC
创建新的
GPO
时,
GPO
最初就诞生了。它们是在
PDC
模拟器上创建的,然后再将它们复制到站点内以及站点之间的其他域控制器。假设可以使用
PDC
模拟器,则可以像在第
1
章中所做的那样,为
GPO
赋予一个友好的名称,例如
“
隐藏鼠标指针选项
/
还原屏幕保护程序选项
”
。
一旦发生这种情况,您的
GPO
便正式
“
诞生
”
。
PDC
仿真器已经代表您执行了某些功能:
■
■
该
GPO
被赋予一个唯一的
ID
采取它的形式为一个全局唯一标识符(
GUID
)。
■
■
它创建一个
组策略容器(
GPC
)
对象的政策文件夹中的
Active Directory
域分区的系统容器。可以将其视为
Active Directory
中新
GPO
的参考。
■
■
它创建一个
组策略模板(
GPT
)
在
PDC
模拟器的
SYSVOL
目录的政策文件。这是组成
GPO
的真实文件所在的位置。它们被复制到每个域控制器,以便更快地进行检索。
■
■
此外,如果
“
在这个域中建立一个
GPO
,并将其链接在这里
”
的时候集中在域或
OU
层次使用(或老派的接口使用),您刚刚创建的新
GPO
将自动
链接
到您关注的当前级别
–
域或
OU
。检查任何新
GPO
的属性时,您会看到该
ID
会自动给出,如图
7.3
所示。
图
7.3
每个
GPO
都有一个唯一的名称。
因此,每个
GPO
由两个组件(
GPC
和
GPT
)组成,并且这些组件在该域控制器上的两个位置之间分配。好消息是,这一切都与
GPO
的
GUID
有关。我们将在接下来的两个部分中探讨这些组件中的每一个。
GPO
如何
“
生活
”
Active Directory
中的
GPO
由两个组成部分组成。一个部分是不够的,没有两个部分,
GPO
就无法生存。这两个部分都是必需的,以便传达
GPO
消息。
如您所见,
GPO
的生命来自这两个部分。
组策略容器(
GPC
)
Active Directory
数据库包含
GPO
的前半部分。不必太讨厌,但这只是对象(
groupPolicyContainer
类的对象),我们称为组策略容器(
GPC
)。域中定义的每个
GPO
都有一个为其定义的
GPC
对象。然后,正是这个
GPC
对象可以保存与组策略对象相关的多个属性,例如版本和显示信息以及某些策略设置。
GPC
具有采用
GUID
格式的唯一名称
–
请参见侧栏
“ GPC
属性
”
。
GUID
不是
我们在管理
GPO
时使用的友好名称。友好名称存储为
Active Directory
中该
GPC
对象上的一个属性,称为
displayName
。
通过进入
“ Active Directory
用户和计算机
”
控制台,可以查看所创建的每个组策略的
GPC
。
要查看
GPC
及其
GUID
,请按照下列步骤操作:
1.
以域管理员身份登录到服务器
DC01
。
2.
选择开始
➢
所有程序
➢
管理工具
➢Active
Directory
用户和计算机。
3.
选择
“
查看
”
➢“
高级功能
”
,如图
7.4
所示,显示
“
策略
”
文件夹。
图
7.4
打开
“
高级功能
”
设置以查看
“
策略
”
文件夹(以及更多)。
4.
展开
“
系统
”
文件夹以显示
“
策略
”
文件夹以及
GPC
,如图
7.5
所示。
到目前为止,我们一直在使用
GPMC
界面创建
GPO
。当我们使用
GPMC
创建
GPO
时,我们引用了
GPMC
中的组策略对象容器作为游泳池的表示。但
GPMC
没有显示你真正的游泳池,它显示你
表示
的游泳池。它向您显示的是游泳池的
GPC
部分。游泳池的另一半是
GPT
(我们将在下面讨论),
GPT
是
Active Directory
域中每个域控制器上存在的已复制
SYSVOL
文件夹中的文件。
GPT
的路径是
\\ <
域名
> \ sysvol \ <
域名
> \ policies
。
图
7.5
展开
“
策略
”
文件夹以显示基础
GPC
对象。
在
Active Directory
中钻取
GPC
容器时,应该为每个已创建的
GPO
看到一个
GUIDnamed
文件夹,再为两个默认
GPO
(默认域策略和默认域控制器策略)看到另外两个
GUIDnamed
文件夹(我们将在中进行探讨)。第
8
章)。
实际上,这两个默认
GPO
具有所谓的
“
众所周知的
GUID”
。
”
也就是说,无论您查看哪个
AD
域,这两个
GPO
的
GUID
都相同。它们在您的广告域中与我的域相同。这样很容易找到它们。当您一次又一次地看到这两个
GUID
时,您将立即知道它们代表哪些
GPO
。
在图
7.5
中,我已经创建了许多
GPO
。因此,我有很多容器。您可能更少。
|
|
|
当您尝试深入研究子容器时,有些会扩展到
{
GUID} \ Machine
和
{
GUID} \ User
级别。这样做的原因是因为您已经在
Active Directory
需要维护的特定
GPO
中设置了策略设置,例如在发布或分配应用程序时。我们将在
GPT
的部分之后,查看每个策略区域在何处存储其设置。
如果在阅读本书的现阶段没有任何可完全展开的子文件夹(如图
7.5
所示),请不要感到惊讶。不会展开的子文件夹根本没有存储任何组策略设置。
GPO
有用的几乎所有其他内容都存储在
GPT
中,这在
“
组策略模板
”
部分中进行了探讨。
谁真正有权做某事?
在第
2
章中,我们对
GPO
应用了各种权限,包括谁拥有
“
读取
”
和
“
应用组策略
”
权限,以及谁可以看到设置或编辑
GPO
中的内容。在以下
“
策略
”
文件夹中可以找到针对特定
GPO
的
“
谁真正拥有什么权限
”
的锁定机制:
■
■
在一方面,在政策锁定机制文件夹本身决定谁可以和不可以创建
GPO
。但是,应注意,这些权限不会继承到以
GUID
命名的
GPT
文件夹本身。
■
■
请参见下图
7.8
有关如何更改默认权限的具体信息的说明。
■
■
在另一方面,在
GUID
命名的文件夹,
GPT
的锁定机制下的政策文件夹,用户可以访问
“
读
”
和
“
应用组策略
”
或可以改变
GPO
本身使然。
在现实中,权限您在
GPMC
给定
GPO
看到反映的权限
都
将
GPC
和
GPT
。尽管可以授予
Active Directory
对象的权限不会一对一映射到可以授予文件系统文件夹的权限(例如
SYSVOL
中的权限),但它们大致可以转换为相同的权限。因此,非常重要的一点是
不要
尝试通过单独修改
GPC
或
GPT
上的权限来直接修改
GPO
上的权限。这项任务的最佳工具是
GPMC
的安全筛选和委派功能。
然而,在我
GPanswers.com
通讯#
13
(在发现
www.GPanswers
的
.com /
通讯
),你会发现一个提示,不通过怎么改明确在紧急情况下的基本权限的步行路程。请注意,在该文章中,这是一种特殊情况,同样,应仅按照该紧急情况中的描述执行该操作。
谁可以创建新的组策略对象?
右键单击
“
策略
”
容器,选择
“
属性
”
,然后单击
“
安全性
”
选项卡以显示多个名称,其中一些名称应该很熟悉,包括
“
组策略创建者所有者
”
和
“
域管理员
”
组。另外,您可以通过
GPMC
中
“
组策略对象
”
容器上的
“
委派
”
选项卡明确添加的任何人。您已在第
2
章中看到了如何执行此操作。那时,我们从域中添加了一个名为
Joe User
的用户。
如果检查
“
策略
”
容器的属性(如图
7.6
所示),则会看到
“
组策略创建者所有者
”
组。
Joe
也被列出(因为
GPMC
明确授予他许可)。还请注意,还存在名为
Domain Admins
和
Enterprise Admins
的组。
图
7.6
展开
“
策略
”
文件夹以显示基础
GPC
对象。
您可以单击
“
高级
”
按钮以显示
Joe
的精确
“
特殊权限
”
。的确,
Joe
仅具有一个权限,称为
“
创建
groupPolicyContainer
对象
”
。获得此权限后,系统将允许他创建
GPC
文件夹并用
GPC
文件夹填充他创建新的
GPO
时的组策略信息。
“
组策略创建者所有者
”
组对
“
策略
”
文件夹具有许多不必要的权限,包括
“
创建所有子对象
”
,
“
创建用户对象
”
以及实际上与之无关的很多东西组策略。确实,如果您以
“
组策略创建者所有者
”
组中的用户身份登录并右键单击
“
策略
”
文件夹,则可以执行某些本不应该执行的操作,如图
7.7
所示。
该系统(非常感谢)不允许您执行
此处列出的
所有
功能,但是可以让您执行
其中的一些
功能。再说一遍,您真的不应该这样玩。当然,
“
正确
”
的事情是仅通过
GPMC
设置权限。但是,我向您展示这些东西是出于演示目的,因此您可以更好地了解组策略创建者所有者组中的某人与已通过
GPMC
中
“
组策略对象
”
容器上的
“
委派
”
选项卡明确授权的人之间的区别。
。
图
7.7
为了爱
Pete
,请不要这样做。
域管理员组和企业管理员组在这里也具有显式权限。当他们创建新的
GPO
时,这样做是因为具有明确的权限,而不是因为它们是组策略创建者所有者组的成员。
谁可以操纵和编辑现有的组策略对象?
右键单击
“
策略
”
文件夹下的
GPO
文件夹(名称为
GUID
),然后选择
“
属性
”
以显示
“
安全性
”
选项卡(请参见图
7.8
),该信息将显示与在第
2
章中使用
“
拒绝
”
属性时相同的信息。通过某些安全组。也就是说,此处显示的信息与当我们专注于
GPO
(或
GPO
链接,因为它使用的是来自实际
GPO
的信息)时,单击
“
委派
”
选项卡中的
“
高级
”
按钮时相同。
创建新
GPO
时获得的权限由
Active Directory
架构中
groupPolicyContainer
类上的
DefaultSecurityDescriptor
属性控制。如果希望
GPO
在创建时获得不同的默认权限,则可以修改此属性的架构实例。在微软知识库文章
的
http
:
//
support.microsoft.com/kb/321476/en-us
德
文士如何做到这一点。
除非另有授权,否则创建
GPO
的人员或组是除
Domain Admins
和
Enterprise Admins
之外唯一可以修改或删除
GPO
的人员或组。但是,如果您有许多域管理员,这可能是一个特别敏感的问题,因为他们都对他们创建的
GPO
拥有
“
共同所有权
”
。一个管理员接管并修改另一位管理员的
GPO
会带来严重的潜在风险。
图
7.8
每个
GPC
都可以显示
GPO
的基本权限。
但是,正如您在第
2
章中看到的那样,还可以通过
GPMC
在
GPO
容器上的
“
委托
”
选项卡上授予某人显式权限。在此示例中,我已经为
Joe
完成了此操作。图
7.9
显示了
Joe
创建的
GPO
的属性。
图
7.9
如果
Joe
创建了
GPO
,则他拥有
GPO
。除
Domain Admins
或
Enterprise Admins
之外,没有其他人可以编辑它。
由于
Joe
具有创建
GPO
的明确权限,因此他成为自己创建的
GPO
的所有者。您可以清楚地看到
Joe
创建了它,现在他拥有它。因此,
Joe
不必担心其他明确指定的用户或组会更改他创建和拥有的
GPO
。但是请注意,域管理员和企业管理员组实际上将能够更改
Joe
创建的任何
GPO
。此外,请注意,组策略创建者所有者中的其他用户不能进入和编辑
Joe
的
GPO
。
再说一次,乔拥有它;是他的。
|
|
|
组策略模板
如您所知,
GPC
存储在
Active Directory
数据库中,并通过普通的
Active Directory
复制进行复制。另一方面,组策略模板(
GPT
)作为一组文件存储在每个域控制器的
SYSVOL
共享中。每个
GPT
通过
FRS
(文件复制服务)复制到每个域控制器。
使用
GPO
的
“
属性
”
选项卡时,我们能够找到其唯一名称
(就像我们在图
7.3
前面所做的那样)。我们可以使用唯一名称在
Active Directory
中定位
GPC
,也可以使用相同的唯一名称在
SYSVOL
中定位
GPT
。要在
SYSVOL
中查看
GPT
,请按照下列步骤操作:
1.
在域中的域控制器上,打开
Windows
资源管理器。
2.
将目录更改为
SYSVOL
容器。它的通常位置是
C
:
\ Windows \ SYSVOL \ SYSVOL \ <
域名
>
(在这种情况下为
C
:
\ Windows \ SYSVOL \ SYSVOL \ corp.com
)。
3.
转到策略文件夹。您会看到一个文件夹列表。文件夹名称与
存储在
Active Directory
中的
GPC GUID
名称匹配(在上一个练习中可见)。
图
7.10
显示了包含许多
GPO
的
“
策略
”
文件夹。
图
7.10
在
SYSVOL
中可以找到
GPO
的唯一名称作为文件夹名称。这是
“
隐藏鼠标指针选项
/
还原屏幕保护程序
”
的唯一名称。
选项
”
,您在侧栏中的最后一个图像中看到了
“
使用
LDP
来查看
GPC
的内脏
”
。
双击
SYSVOL
中的
“ Policies”
文件夹,将显示
GPT
的内容。在内部,您将看到几个子文件夹和一个文件。此列表中的第一项是文件(
gpt.ini
);其余的是子文件夹。
gpt.ini
您将始终在
GUID
文件夹下找到一个文件。它包含
GPT
的版本号以及与
在
Active Directory
中的
GPC
对象上找到的
gpcMachineExtensionName
和
gpcUserExtensionName
属性等效的信息。即,
gpt.ini
中的这两个键列出了
CSE
的
GUID
及其在
GPO
中已实现的相关
MMC
管理单元扩展。这样可以使客户端知道在处理
GPO
时需要调用哪些
CSE
。(您将在
“
了解组策略版本号
”
一节中了解版本号。)对于非常老的
GPO
,您可能还会在
gpt.ini
中
看到一些文本片段。
表示
“ displayName = New
组策略对象
”
。当您使用非常旧的组策略创建工具时,此文本片段是相同的。该条目是遗留条目,从未使用过。
\ Adm
如果使用
Windows 10
管理站创建
GPO
(如我们在第
1
章中讨论并在第
6
章中进行了深入探讨),则在任何新创建的
GPO
中都不会看到
ADM
目录。
XP
计算机上的
GPO
,将创建此目录以容纳称为管理模板文件的策略设置,简而言之,当您从
XP
计算机上创建或编辑
GPO
时,将从
\ Windows \ INF
文件夹复制管理模板(
ADM
文件)。同样,这是从您编辑该
GPO
的计算机到
GPT
的
\ Adm
文件夹中发生的。
默认情况下,这些
ADM
文件是
Conf.adm
,
Inetres.adm
,
System.adm
,
wmplayer.adm
和
wuau.adm
。
双击
\ Adm
文件夹将显示模板。请注意,
\ Adm
文件夹将不存在,直到从
XP
机器首次打开
GPO
并单击
“
计算机
”
或
“
用户管理模板
”
节点。同样,请随时阅读第
6
章中的材料以获取有关该主题的更多信息。
请注意,
GPT
中
\ Adm
文件夹的存在是
Windows Vista
以前的操作系统的产物。使用
Windows Vista
和更高版本创建和编辑新
GPO
时,不会创建
\ Adm
文件夹,因为例如,您的
Windows 10
计算机不再将
ADM
文件复制到
GPT
中,而是将它们本地保存在
C
:
\ windows \ policydefinitions
或在
“
中央存储
”
中。但是,如果您编辑最初在现代
GPMC
上创建的
GPO
,然后在以后使用较旧的
GPMC
(例如
XP
或
2003
)对其进行编辑,则
\ Adm
文件夹将被创建并填充到
GPT
中。请注意,这种行为(从
Windows
的较低版本中编辑
GPO
)通常不是一个好主意。一旦开始将
Windows 10
用作组策略创建工作站,最好从那时开始继续使用现代客户端编辑这些
GPO
。您可以查看第
6
章,其中详细介绍了
Central Store
和
ADMX
文件,并进一步探讨了此特定问题。
\ Machine
此文件夹包含
GPO
计算机端的设置,包括启动和关闭脚本(尽管没有要求它们驻留在此处;它们也可以位于其他位置),指向分配的应用程序的指针和注册表设置(以及其他设置)。
\ Machine
文件夹的实际内容取决于
GPO
中指定的计算机选项。潜在的内容包括:
该
的
Registry.pol
文件
存放在电脑中指定的注册表设置
配置
➢
策略
➢
管理模板,以及
“
计算机配置
”
下的
“
软件限制策略
”
设置
➢
策略
➢Windows
设置
➢
安全设置
➢
软件限制策略。
该
\
应用程序
文件夹中
存储的文件的指针称为
Application
广告脚本,或
.AAS
文件。这些文件与组策略软件部署结合使用。这些是客户端计算机用来处理软件安装的说明。软件安装将在其
单独
的章节第
11
章中进行进一步讨论,但是
.AAS
文件在标题为
“
内部
.AAS
文件
”
的边栏中有进一步描述。
|
|
|
该
\
微软
\
的
Windows NT \ Secedit
的
文件夹中
存储一个名为
的
GptTmpl.inf
。该文件包含各种计算机安全设置,这些设置在
GPO
的
“
计算机配置
”
➢“
策略
”
➢Windows
“
设置
”
➢“
安全设置
”
部分下定义。您也可以提前设置这些设置和部署他们
集体
使用第
8
章中描述的技术。
该
\
脚本
\
关闭
文件夹
包含为其关机脚本运行和可选说明,用于计算机关机脚本的实际文件。有关将运行哪些脚本以及将脚本存储在何处的说明保存在称为
脚本
的文件中
。
ini
,在此文件夹中。它可以是任何脚本文件类型(
ShellExecute
进程可以运行),包括
.BAT
,
.CMD
,
.VBS
,
.JS
等。您将在第
8
章中看到如何使用它。
该
\
脚本
\
启动
文件夹中
包含了哪些启动脚本运行和可选说明,用于计算机启动脚本的实际文件。有关将运行哪些脚本以及将脚本存储在何处的说明保存在此文件夹中名为
scripts.ini
的
文件中。它可以是任何脚本文件类型(
ShellExecute
进程都可以运行),包括
.BAT
,
.CMD
,
.VBS
,
.JS
等。您将在第
8
章中看到如何使用它。
该
\
用户
文件夹
此文件夹包含组策略硬币的用户侧的设置,包括登录和注销脚本,指向已公布或分配的应用程序,并
注册表设置。根据每个
GPO
上使用的选项,它表示
GPT
计算机侧下
\ User
文件夹中的内容。
该
的
Registry.pol
文件
存放在注册表中设置用户配置设置
➢
策略
➢
管理模板用户配置下的软件限制策略,以及设置
➢
策略
➢
Windows
设置
➢
安全设置
➢
软件限制策略。
该
\
应用程序
文件夹中
存储的文件的指针称为
.AAS
文件使用组策略部署软件安装应用程序。
该
\
的
Documents and Settings
文件夹
包含一个名为
Fdeploy.ini
,其存储应用文件夹重定向设置。您可以在第
10
章
“
托管桌面,第
1
部分:重定向文件夹,脱机文件和同步管理器
”
中了解有关文件夹重定向的更多信息。
该
\
微软
\ IEAK
文件夹中
存储文件来表示用户配置所做的更改
➢
策略
➢
Windows
设置
➢
Internet Explorer
维护。
该
\
微软
\
的
RemoteInstall
文件夹
存储
Oscfilter.ini
,指定组策略远程安装服务设置。不再使用远程安装服务。它的后继者
Windows
部署服务不使用该条目。
该
\
脚本
\
登录
文件夹中
包含用于其登录脚本运行和可选指令,用于用户登录脚本的实际文件。有关将运行哪些脚本以及将脚本存储在何处的说明保存在此文件夹中名为
scripts.ini
的
文件中。可以是任何可接受的文件类型,包括
.BAT
,
.VBS
,
.JS
和其他文件类型,以及
Windows 7
及更高版本的
PowerShell
脚本。您将在第
12
章
“
使用组策略完成触摸:脚本,
Internet Explorer
,硬件控制,打印机部署,本地管理员密码控制
”
中看到如何使用此文件夹。
该
\
脚本
\
注销
文件夹
包含为其注销脚本来运行和可选,用于用户注销脚本的实际文件的说明。有关将运行哪些脚本以及将脚本存储在何处的说明保存在此文件夹中名为
scripts.ini
的
文件中。可以是任何可接受的文件类型,包括
.BAT
,
.VBS
,
.JS
,和
其他人。您将在第
12
章中看到如何使用此文件夹。
组策略设置存储
正如我已经指出的,组策略设置(在编辑
GPO
时设置的内容)存储在
GPO
的一半(
GPC
或
GPT
)之内。关于使用哪个存储给定设置的决定随所存储数据的大小而变化。通常,由于
Active Directory
并非用于存储大数据块,因此那些需要大量内容的设置将存储在
GPT
中,而不是
GPC
中。
但实际上每个
CSE
确实有所不同。表
7.1
列出了每个
CSE
存储其设置的位置。
|
|
|
|
表
7.1
客户端扩展及其存储位置
策略存储在一个名为
fdeploy.ini
中
的子文件夹
的用户
\
GPT
中的
\ Documents and Settings
。
管理存储在
SYSVOL
下
模板
为给定的
GPO
管理
GPT
容器。管理模板策略存储在名为
注册表
的文件中
。
pol
,可以按用户和每台计算机定义。在给定的
GPT
中,如果您已经定义了用户和计算机管理模板策略,则将
在用户和计算机子文件夹下看到一个
registry.pol
文件。
如果
GPO
是使用较旧的
GPMC
创建的,则您将看到与
GPO
一起存储在
GPT
中的任何给定
GPO
的
ADM
文件。请注意,也可以将
ADM
与更新的
GPMC
一起添加,但通常不能添加。在这两种情况下,您都将在一个名为
ADM
的文件夹中找到
ADM
,该文件夹位于给定
GPO
的
GPT
根目录之外。因此,每个设置
“
管理模板
”
策略的
GPO
都将存储自己的
ADM
文件副本,以用于对其进行编辑,即使它们与另一个
GPO
相同。请注意,
GPO
不像在
ADMX
文件中那样在
GPO
中存储
ADMX
文件。有关所有血腥细节,请参见上一章。
表
7.1
客户端扩展及其存储位置
(续)
|
|
|
|
|
|
|
|
|
|
表
7.1
客户端扩展及其存储位置
(续)
软件安装
存储在
GPC
和
GPT
中。在
GPT
中,已部署的软件包信息存储在容器机器(或用户)下
\
应用程序
,内
应用广告文件或
AAS
文件。在
GPC
内,
将为
部署的每个应用程序创建一个类
packageRegistration
的特殊对象。可以在
计算机
(或
用户
)
\ Class Store \ Packages
下的
GPO
的
GPC
中找到该对象。
IP
安全
IPsec
策略是特殊的
案件。设置严格地作为特殊对象存储在
Active Directory
中,
而不存储
在
GPC
中。即,
IPsec
策略设置存储在
域内的
CN = IP
安全,
CN =
系统
容器下。因此,
IP
安全设置存储在整个域范围内,并且可以由该域中的任何
GPO
引用。当您为
GPO
分配
特定的
IPsec
策略时,会在
GPO
的
GPC
中创建一个附加对象
-GPC
中
找到的
packageRegistration
对象包含诸如
.MSI
文件的路径,已选择的所有转换(修改)之类的信息。
,以及应用程序是已发布还是已分配。(有关更多详细信息,请参见第
11
章。)
特别是,在
GPO
下的
Machine \ Microsoft \ Windows
容器下创建了一个
ipsecPolicy
对象。该对象存储域中的可用
IPsec
策略与该
GPO
之间的关联。
表
7.1
客户端扩展及其存储位置
(续)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
了解组策略版本号
如果您浏览任何
GPO
的
gpt.ini
,就会看到其版本号。如果您按照本章前面的
“
使用
LDP
来查看
GPC
的内胆
”
侧栏中的说明进入
GPC
,则可以看到相同的号码。
那么,该版本号是如何构造的?这个想法是一个
32
位值,其中最高
16
位是用户值,最低
16
位是计算机值。
用小数表示,这是公式:
版本
=
(用户部分更改次数
×
65536
)
+
(计算机部分更改次数)
因此,当您创建新的
GPO
时,版本号为
0
。单击
GPO
上的
“
编辑
”
,然后开始编辑,然后数字开始上升。在
“
计算机
”
端启用策略,然后单击
“
确定
”
。然后将其设置回
“
未配置
”
。这会将版本号加
2
。在用户端编辑策略,然后单击确定。这将添加
65536
。将其更改回
“
未配置
”
,并将添加另一个
65536
。版本号的大写在这里并不重要。也就是说,数量有多大无关紧要。
那么,我们如何在日常生活中看到版本号?在任何组策略的
“
详细信息
”
选项卡中,如下所示。
在此示例中,我们可以看到用户端已被修改了两次(
2
×
65536
),而计算机版本已被修改了三次(添加
3
)。因此,如果我们
浏览
此
GPO
的
gpt.ini
,则版本号应为
131075
。
同样,
GPC
和
GPT
都存储
GPO
的版本号。但是,正如我们已经描述的,在某些情况下,复制可能尚未完成,并且
GPC
和
GPT
版本号不一致。在这种情况下,
GPMC
(通过
GPO
的
“
详细信息
”
选项卡显示版本号)将
始终
使用
GPC
版本号作为最终参考,但是如果它们不同步,则会向您显示消息。
Microsoft
的组策略团队在该主题上有一个有趣的博客条目。在
http://tinyurl.com/2gfmmg
上进行
检查
。
验证
GPC
和
GPT
同步
组成
GPO
的两条信息是
GPC
和
GPT
:
■
■
的
GPC
存储在
Active Directory
数据库,并通过正常的
Active Directory
复制复制。
■
■
GPT
的存储在每个域控制器的
SYSVOL
文件夹和使用
FRS
复制复制。
这是窍门:组策略诞生时(在
Windows 2000
天内),除非
GPC
和相应的
GPT
都同步,否则组策略将不会在计算机上应用。
同步
意味着给定
GPO
的
GPC
对象上的
versionNumber
属性必须与该
GPO
的
GPT
gpt.ini
文件中找到的
versionNumber
键相同。
对于
Windows 2000
之后的所有
Windows
版本,
GPC
和
GPT
不再需要具有相同版本的
GPO
才能在客户端计算机上进行组策略处理。
回想一下,默认情况下,
GPC
和
GPT
最初都写入了
PDC
仿真器。编写完成后,目标是将
GPC
和
GPT
复制到其他域控制器。一个域中只有一个域控制器,就不会有复制问题,因为没有其他域控制器可复制到该域控制器。这一切都发生在一个系统上。但是,当一个域中的多个域控制器进入画面时,事情就会变得有些麻烦。这是因为普通的
Active Directory
复制和
FRS
复制是完全独立的计划(尽管在正常情况下,它们采用相同的路径)。
管理员可以创建或修改
GPO
,并且
GPC
可能无法与
GPT
中的文件同步复制。这通常不是问题,因为随着时间的推移,所有域控制器最终在其
Active Directory
数据库副本和
SYSVOL
文件夹中都具有完全相同的信息。但是在给定的复制周期内,在特定的域控制器上
GPC
和
GPT
可能
不
匹配。
此外,
GPC
和
GPT
共享一个
版本号
GPO
的每半部分
–
计算机和用户。每次修改
GPO
时,版本号都会递增,并包含在复制到其他域控制器的属性列表中。请记住,在第一章中我曾说过,如果特定的
GPO
不变,则客户端的默认设置是不处理
GPO
。毕竟,如果什么都没有改变,客户为什么要打扰?客户端使用这些版本号来确定是否发生了更改。客户端会保留上一次应用的
GPO
的缓存以及注册表中的版本号。然后,如果已通过修改特定策略设置或添加策略设置来触摸
GPO
,则
Active Directory
中
GPO
的版本号会更改。下次客户尝试处理
GPO
时,它将看到更改,客户将再次下载整个
GPO
,并接受修改后的指令集!因此,版本号对于客户端识别新指令正在等待他们很重要。
到目前为止,一切都很好。现在,还有更多的东西可以完全理解版本号。根据
Microsoft
的说法,这是弄清楚
GPO
是否要在工作站上处理的秘密:
■
■
两个
GPO
的
GPC
和
GPT
部分必须存在于域控制器工作站用途登录。
■
■
如果客户端处理组策略为
Windows 2000
,则
GPC
和
GPT
必须具有相同的版本号。
■
■
如果是
XP
或更高版本中,
GPC
和
GPT
可以有不同的版本号,但仍出现组策略处理。
■
■
在所有情况下,如果在
GPC
或
GPT
举行的版本号是不是从
GPO
被处理的最后一次保留在注册表中的版本号不同,
Windows
认为已经发生了变化,并继续运行并处理政策。
这里的要点是,对于
Windows
的早期版本(
Windows 2000
),如果版本号不匹配,则组策略处理将失败。现在,版本号相同与否无关紧要。如果它们不同,则组策略将尝试在客户端计算机上重新应用。
这两个部分在某个时刻进行同步仍然很重要。如果它们在某个时刻不同步,则意味着其中一个没有最新的设置信息。在某个时候,复制应该完成,并且所有域控制器将具有相同的组策略数据。然后,计算机和用户将获得最新版本的组策略设置。如果这
从未
发生过,则说明您的域存在问题,应遵循以下各节中的工具和技术。
版本号不是构成
“
更改
”
的唯一内容。
更改也可能是删除的
GPO
(或添加的
GPO
),安全组成员身份的更改以及新的或删除的
WMI
筛选器。另外,必须指出的是,如果一个
GPO
发生了变化,则处理该
GPO
的
CSE
必须重新处理
列表中的
所有
GPO
,而不仅仅是重新更改的
GPO
。
|
|
|
|
|
使用
Gpotool.exe
如果您怀疑在使
GPT
和
GPC
保持同步方面遇到问题,可以使用
Windows 2003 Resource Kit
附带的
Gpotool.exe
。最后检查,可以在这里找到:
www.microsoft.com/download/en/details.aspx?id=17657
您可以在任何域控制器上运行
Gpotool.exe
来验证
GPC
和
GPT
是否同步,并且域中所有域控制器之间的数据均一致。
运行不带任何参数的
Gpotool
命令可验证所有
GPC
和
GPT
在域中的所有域控制器之间都已同步。但是,如果仅使用一个
GPO
遇到麻烦,则可能不希望经过检查每个域控制器上每个
GPO
的
GPC
和
GPT
所需的紧张过程。而是可以使用
/ gpo
:
开关,该开关允许您指定遇到问题的
GPO
的友好名称或
GUID
。例如,如果您怀疑在第
1
章中创建的
“
隐藏鼠标指针选项
/
还原屏幕保护程序选项
” GPO
遇到问题,则可以运行
Gpotool / gpo
:
Hide
搜索以单词
Hide
开头的所有
GPO
。在图
7.11
中,我正在运行
Gpotool
没有任何开关,这将引起所有
GPO
的嗡嗡声。
图
7.11
使用
Gpotool
查看您的
GPC
和
GPT
是否在域控制器之间同步。
要专门验证任何特定的组策略对象,只需对其进行命名,然后
将所有
GPO
的名称加引号引起来。类似于
Gpotool / gpo
:
“ GPO ABC”
注意
/ gpo
:
开关区分大小写。例如,运行
Gpotool x / gpo
:
“ GPO ABC”
与运行
GPOTOOL / gpo
:
“ GPO abc”
不同
。
这个例子显示了什么时候进展顺利。下一个示例(参见图
7.12
)显示了何时可能出错。
图
7.12
Gpotool
在天堂中发现了麻烦。
在此示例中,我们正在验证名为
“ Broken2”
的
GPO
的同步。在这种情况下,
GPC
和
GPT
之间的版本不匹配。将工具称为
DS
版本与
SYSVOL
版本进行比较时,您会看到此信息。
DS
版本代表
GPC
,而
SYSVOL
版本代表
GPT
。
恐慌之前,请记住,这个
“
问题
”
实际上可能不是问题。请记住,
GPC
和
GPT
是独立复制的。我们的客户当前使用的
DC
可能在
Active Directory
更改(
GPC
)之前已经收到
SYSVOL
(
GPT
)更改,反之亦然。请稍等片刻,两个版本可能会融合。如果它们不收敛,则此问题可能表明
Active Directory
或文件复制服务(
FRS
)复制问题。
以下是有关使用
Gpotool
的
其他提示:
■
■
运行
Gpotool
在一个大领域,有很多的
GPO
可能需要很长的时间,拖垮你的域控制器的性能。如果可能的话,
请
在几个小时后运行
Gpotool
,这样会影响最少的人数。
■
■
如果必须在工作时间内运行它,你可能要指定
/ DC
:
选项,并指定只检查
PDC
模拟器(其中的
GPO
最初诞生并开始修改的地方)中的
GPO
。如果您有问题,很可能最初会在此关键域控制器上指出。
■
■
Gpotool
有一个额外的超级大国:它也可以验证一个
GPO
的
GPT
部分的基本访问控制列表。回想一下,
GPT
是驻留在
SYSVOL
中的
GPO
的一部分。要执行此额外检查,您需要在
Gpotool
的命令行
上将
其指定为
Gpotool / checkacl
。默认情况下,此测试不会运行,因为它会占用大量时间和资源。关于
/ checkacl
开关,有一个关键点:它仅检查
SYSVOL
Policies
文件夹本身上的
ACL
继承标志,而不检查包含
GPO
胆量的单个文件夹上的
ACL
。因此,如果您对包含
GPO
的文件夹有特定的权限问题,则
/ checkacl
切换不会帮助您将其雪貂化。
■
■
一个警告有关
Gpotool
–
它只是检查是否版本号是
GPC
和
GPT
之间的相同。它不会检查例如是否所有应该存在于
GPT
中的文件。例如,如果您遇到
FRS
复制问题,则可能只有某些
GPT
文件已复制到给定的
DC
,并且
Gpotool
不会告诉您是否发现
gpt.ini
文件包含所需的信息。
使用
Windows 10
的
GPMC
的状态选项卡
Windows 10 GPMC
具有的功能或多或少是
Gpotool
的图形版本。您可以通过单击域名在
GPMC
中找到它。在我们的案例中是
Corp.com
。在图
7.13
中可以看到一个名为
Status
的选项卡。
图
7.13
单击域级别时,
GPMC
中的
“
状态
”
选项卡
像
gpotool
一样,
“
状态
”
选项卡的活动并非一直都在运行。单击
“
立即检测
”
按钮可以手动将其启动。
如果您正在阅读本书,那么您将只有一个域控制器,这意味着零复制问题。但是,在现实生活中,如果您有多个域控制器,则可以不时单击一次
“
立即检测
”
按钮,以评估总体复制状态。
同样,
“
状态
”
选项卡将仅显示问题,因此没有新闻是好消息。此外,
“
状态
”
选项卡相对于其较早的
GPOtool
表弟具有的另一种超能力是,它正在组策略对象的
GPT
部分中寻找完全匹配的内容。它通过计算整个
GPT
目录的文件哈希来实现。如果在任何域控制器上有任何不同,则
“ Infra Status”
将发送一个红旗,表明组策略对象存在问题。
此外,当您单击特定的
GPO
时,可以找到
“
状态
”
选项卡,如图
7.14
所示。您可以单击
“
立即检测
”
按钮,而不是检查所有
GPO
,然后根据域控制器检查一个
GPO
的状态。方便,如果您有可疑的
GPO
,并且想要验证其胆量在所有
DC
上至少相同。
图
7.14
状态
–
您可以通过先单击
GPO
,然后单击
“
状态
”
选项卡,快速检查一个
GPO
的状态。
如果使用
GPOtool
或
GPMC
的
“
状态
”
选项卡,
但又
返回错误,则可能需要向下钻取并准确找出问题所在。
请记住,组策略是两个部分:
GPC
(
Active Directory
记录)和
GPT
(基于文件的部分)。您可以通过执行几个
“
石蕊测试
”
来尝试查看
Active Directory
复制是否正在运行(因此,是否
GPC
复制正在运行)。以下是一些示例:
■
■
在组策略对象容器创建一个新的
GPO
。只需在没有策略设置的情况下创建它,就不要在任何地方链接它。
■
■
创建在
Active Directory
用户和计算机或
GPMC
一个新的
OU
。
■
■
在
Active Directory
中添加一个新用户。
在每种情况下,您都想查看这些对象是否已复制到其他
DC
。在一个域控制器上创建对象之后,使用
Active Directory
用户和计算机和
/
或
GPMC
检查其他域控制器。右键单击该域,然后选择另一个域控制器。
如果这些石蕊测试失败,则可以尝试使用
Active Directory
站点和服务强制复制。如果需要超强度复制,
Repadmin
可以通过多种方式帮助强制复制。
有关
Repadmin
的
一些重要技巧,请访问以下
Microsoft
博客:
http
:
//blogs.technet.com/b/askds/archive/2009/07/01/
Getting-over-replmon.aspx
您可以通过将任何文件(例如,
Readme.txt
文件)放入任何域控制器的
SYSVOL
共享中,然后查看是否已复制,来尝试查看
SYSVOL
复制是否通过
FRS
运行(因此,如果
GPT
复制正在运行)到其他域控制器的
SYSVOL
共享。如果没有自动将其复制到其他域控制器,请使用
ping
命令测试每台计算机的连接性。
Microsoft
有两个工具,
Ultrasound
和
Sonar
,可从
Microsoft
网站上获得。最后检查,声纳,可以发现
http://tinyurl.com/5ouk9
的
d
超声,声纳来了之后,可以在这里找到
http://tinyurl.com/odgu
。摹
ENERAL FRS
故障排除和信息可以在这里找到
http://tinyurl.com/cofstj
为
写这篇文章的。
Microsoft
知识库文章
Q221112
,
Q221111
,
Q272279
和
Q229928
是学习更多有关
FRS
以及如何通过调试
FRS
来解决
SYSVOL
复制问题的良好起点。有关如何调试
Active Directory
复制的详细信息,请参见
Q229896
和
Q249256
。
|
|
|
|
GPO
的死亡
如第
2
章所述,有三种方法可以停止在
Active
级别使用
GPO
。
目录。一种方法是在
Active Directory
中使用的级别
“
删除链接
”
到
GPO
。在游泳池类比中,我们将系绳带给孩子在游泳池中,但是如果其他级别的孩子想要使用它,我们会将对象留在游泳池中。
另一个是
“
禁用链接
”
。这将系绳留在原处,但基本上阻止了水准仪在
OU
内接收电源。
停止使用
GPO
的最后一种方法是删除它。使用
GMPC
,您只能删除
GPO
,方法是遍历到
“
组策略对象
”
节点,右键单击它,然后选择
“
删除
”
,如图
2.6
所示。但是,再次要小心;其他级别的
Active Directory
(包括其他域和林中的级别)可能正在使用您将要使用的
GPO
。
正如我们在前几章中讨论的那样,跨域链接
GPO
是不行的。而且,如果您在源域中重击
GPO
,它将不会清除到
其他
(目标)域的链接。
客户端系统如何获取组
策略对象
服务器上存储的项目仅占故事的一半。真正的魔力发生在将
GPO
应用于客户端(通常是工作站)时,尽管当然服务器的行为也相同。组策略有用的一半是它可以同等地应用于服务器,台式机和笔记本电脑。随着每个新操作系统的问世,您可以控制和配置更多的内容。因此,以下各节中的详细信息适用于所有
“
目标
”
计算机,无论它们运行什么操作系统。
将组策略从高层部署到客户端系统时,客户端始终会执行请求。组策略的胆量称为客户端扩展(
CSE
)。负责的是客户,而不是域控制器。这就是为什么,当芯片故障而无法正常运行时,您需要检查目标计算机的事件日志(以及其他故障排除区域),以帮助发现客户端为什么没有满足您的需求。
组策略处理的步骤
客户端上的组策略处理大致分为两部分。第一部分称为
“
核心
”
或
“
基础结构
”
处理。对于
Windows XP
和现代
Windows
(例如
Windows 7
、
8.1
和
10
,它们都是您可能拥有的所有计算机类型),我们将对其进行细分。
XP
机器的核心处理
在组策略处理的核心处理阶段,
Windows
尝试完成许多任务。其中主要:
■
■
要确定是否到域控制器的连接是通过慢速链接
■
■
要发现所有的
GPO
应用到计算机或用户
■
■
要发现哪些客户端的扩展被称为
■
■
要发现是否有任何自上次处理周期变化(
GPO
中,安全组成员,
WMI
过滤器)
■
■
要创建需要应用的
GPO
的最终名单
为了执行这些任务,
Windows
要求在客户端和与其配对的
DC
之间成功传递许多网络协议。这些协议及其用法在此处列出:
■
■
ICMP
用于慢速链接检测
■
■
RPC
(
TCP
端口
135
和这比
1024
端口更大一些随机端口)进行身份验证到
AD
■
■
LDAP
(
TCP
端口
389
),用于查询
AD
确定的
GPO
,组成员资格,
WMI
过滤器列表,等等
■
■
SMB
(
TCP
端口
445
)查询
SYSVOL
中
GPT
如果客户端尝试访问服务器,并且此处列出的任何协议均被阻止
(通常是通过防火墙),则所有组策略处理将失败。因此,重要的是
Windows
客户端必须不受阻碍地访问所有可能响应这些协议的身份验证和组策略请求的潜在域控制器。在
Windows
服务器上默认打开防火墙的情况并不少见,但是所有正确的规则(默认情况下)都已到位(默认情况下),以允许组策略请求成功通过。
要注意的另一点是
Windows XP
中的组策略处理在特权
Winlogon
进程中运行。
Winlogon
是一项系统服务,因此在
Windows
中具有最高级别的特权。因此,行为不佳的
CSE
可能会使
Windows
崩溃。这并不经常发生(据我所知,从来没有,但是确实有可能)。正如我们将在下一节中看到的那样,组策略的内部工作方式已在
Windows Vista
及更高版本中发生了变化,正如我们在
组策略
客户端
服务中所
看到的。
完成核心步骤后,
Winlogon
进程将按在注册表中的注册顺序在以下位置调用每个
CSE DLL
:
HKLM \
软件
\ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ GPExtensions
(始终先运行的管理模板策略除外),并且每个
CSE
都会处理在核心处理周期中发现的
GPO
。
现代
Windows
的核心处理
因此,
Microsoft
对
Windows Vista
中的组策略处理引擎进行了重大更改。这项工作在
Windows 7
及更高版本(例如
Windows Server 2008
和
Windows Server 2008 R2
,
Windows 8
等)中得以维护。话虽这么说,
Windows 8
和更高版本进行了
“
非常细微
”
的调整,我将在稍后说明
Windows 10
会对其进行维护。
从
Windows Vista
开始,
Microsoft
将引擎从
Winlogon
移到了单独的服务中,该服务称为
组策略客户端服务,
或简称为组策略服务。该服务是
“
强化
”
的,因此,即使是管理员也无法轻易将其终止。
这可能是一件好事,因为在很多情况下,您都不想完全禁用组策略处理。如前所述,普通管理员无法轻易停止组策略客户端服务。如果进入
“
服务
” MMC
管理单元并突出显示该服务,则会注意到停止和启动该服务的选项显示为灰色。停止该服务需要一些工作,当您停止该服务时,它将在短时间后自动重新启动。但是,如果您希望动态地进行查看,这是常规过程。
如果您想尝试一下(只是为了好玩),则需要启动
Windows
任务管理器并选择
“
服务
”
选项卡。找到名为
gpsvc
的服务,并注意旁边列出的进程
ID
,如图
7.15
所示。接下来,移至
“
任务管理器
”
中的
“
进程
”
选项卡,并找到与
gpsvc
条目具有相同进程
ID
的
svchost
进程。突出显示该
svchost
进程,然后单击
“
结束进程
”
按钮以结束服务。
图
7.15
查看组策略客户端服务过程
这里的所有都是它的!
除了几分钟,您将看到
gpsvc
复活
。哪个好
在
Windows 8
和更高版本中,当计算机启动时以及用户登录时,组策略服务会启用。然后,在组策略
“
不活动
” 10
分钟之后,组策略服务将其关闭。这是为了节省平板电脑和笔记本电脑等移动设备上的电池寿命(尽管,老实说,我看不到它会大大改善电池寿命)。请注意,在
Windows Server 2012
和更高版本上,组策略服务没有此问题,因为它一直处于活动状态。
在
“ Windows 8
、
8.1
和
Windows 10
组策略:细微差别
”
部分的第
3
章
“
组策略处理行为要点
”
中,我谈到了
Windows 7
、
8
、
8.1
和
Windows 7
之间的组策略引擎中的细微变化。
10
。
Windows 8
和更高版本的慢速链接检测
之前,我描述了
Windows XP
如何使用
ICMP
来检测它是否在慢速链接上。
Windows Vista
和更高版本使用完全不同的机制来检测慢速链接。
Windows Vista
和更高版本不依赖于
ICMP ping
,而依赖于操作系统中的网络位置感知(
NLA
)服务。
NLA
服务使用与域控制器的一系列更高级别的通信来确定域控制器何时可用以及计算机具有何种链接速度。
NLA
过程更加动态,因此能够在域控制器可用时(没有以前的机制)通知组策略引擎。因此,重要的是要了解当
NLA
检测到
DC
可用时在什么情况下进行
GP
处理。我们将在本章后面的
“ NLA
故障排除
”
部分中对此进行讨论。
如果要通过慢速链接将
Windows Server 2012
或更高版本用作组策略客户端,它将以相同的方式检测慢速链接。但是,您多长时间使用
Windows Server 2012
或更高版本从酒店房间
或通过慢速
3G
连接拨号?
客户端扩展
当
“
组策略
”“
时钟
”
敲响时,客户的
“
组策略
”
引擎将立即采取行动以开始处理您的愿望。从
Active Directory
下载了用于客户端的
GPO
,然后由客户端执行其余的工作。
从高设置
GPO
时,通常不会使用所有策略设置类别。例如,您可能设置了管理模板策略,但没有设置
Internet Explorer
维护策略。客户端足够聪明,可以知道哪些策略设置组会影响它。
这是在组策略的
“
核心
”
处理过程中发生的。在此核心处理周期中,客户端查询
Active Directory
以获取其
GPO
列表,找出实际上适用于该目录的
GPO
,并列出要为找到的
GPO
运行的
CSE
的列表。完成所有核心工作后,每个
CSE
都会依次执行它的工作。
CSE
实际上是执行组策略处理的
DLL
(动态链接库)。这些
DLL
由系统
Winlogon
进程(或
Windows Vista
和更高版本中的组策略客户端服务)调用。这些
CSE
会自动在操作系统中注册,并在注册表中由其
GUID
标识。
想要控制操作系统或软件自己方面的第三方程序员可以创建其他
CSE
。请参阅侧栏
“
具有自己的
CSE
的组策略软件供应商
”
以获取示例。
在
Windows 2000
中,该操作系统附带
9
个
CSE
。在
Windows XP
和
2003
中,
Microsoft
又添加了两个,总共
11
个
CSE
。对于
Windows XP SP2
,添加了另一个
CSE
。
Vista
总共增加了五个,总共增加了
17
个。
将组策略首选项扩展添加到
Windows XP
或
Windows Vista
后,将添加另外
21
个。或者,由于它们在
Windows Server 2008
的包装盒中,因此包装盒中的数量跳到总共
38
。
Windows 7
包含刚才提到的
38
个
CSE
,以及另外五个特定于
Windows 7
的
CSE
。
Windows 8
添加了另外三个特定于
Windows 8
和
Windows Server 2012
的功能。
Windows 8.1
又添加了一个功能。
|
|
|
Windows 10
不再添加任何内容,但是它们确实删除了一些不再受支持的旧
Internet Explorer
功能。
要查看工作站或服务器上的
CSE
,请执行以下步骤:
1.
在
Windows WIN10
上,以管理员身份登录。
2.
键入
regedit
打开注册表编辑器,如图
7.16
所示。
3.
向下钻取
HKLM
➢
软件
➢
微软
➢
Windows NT
的
➢
当前版本
➢
Winlogon
中
➢
GPExtensions
。在这里,您将找到一个
GUID
列表,每个
GUID
代表一个
CSE
。
让我们看一下下一节,以准确地了解我们所看到的。
XP
机器的
CSE
图
7.16
显示了一个示例
CSE
和磁盘配额设置。有关
GUID
列出的
CSE
,它们执行的功能以及相关的
DLL
,请参见表
7.2
。请注意,一个特定的
DLL
可以负责多个功能。
图
7.16
客户端扩展
DLL
实际上执行
GPO
处理。
表
7.2
Windows Vista
之前的计算机的
GUID
,其功能以及相应的
DLL
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表
7.2
Windows Vista
之前的计算机的
GUID
,其功能以及相应的
DLL
(续)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
为什么所有的
CSE
都没有
DLL
?远程安装服务(
RIS
)或软件限制策略都不需要
CSE
与
DLL
关联。
RIS
在操作系统启动
之前
就处于活动状态。软件限制策略不需要
CSE
,因为它们
“
跟随
”
另一个
CSE
的功能。
Windows Vista
和
Windows Server 2008
计算机的
CSE
有关
GUID
列出的
Windows Vista
特定的
CSE
,它们执行的功能以及相关的
DLL
,请参见表
7.3
。同样,所有
Vista
之前的
CSE
都在
Windows Vista
上,因此在此表中不再赘述,因为它们已在表
7.2
中列出。请注意,一个特定的
DLL
可以负责多个功能。
脱机文件在
Windows Vista
(在
Windows 2000
和
Windows XP
中)之前存在,但在
Vista
中已成为自己的
CSE
。
表
7.3
CSE GUID
,其功能以及仅存在于以下位置的相应
DLL
Windows Vista
和
Server 2008
计算机
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Windows 7
和
Windows Server 2008 R2
计算机的
CSE
确实,
Windows 7
和
Windows Server 2008 R2
(以及
Windows Server 2008
)都具有组策略首选项
CSE
。表
7.4
列出了仅有的特定
CSE
。
表
7.4
Windows 7
和
Windows Server 2008 R2 CSE GUID
,它们的功能以及它们相应的
DLL
仅在
Windows 7
和
Windows Server 2008 R2
计算机上存在
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Windows 8
和
Windows Server 2012
(及更高版本)的
CSE
Windows 8
添加了
Windows 7
没有的三个特定的
CSE
。您可以在表
7.5
中看到这些
CSE
。两个是一些新的远程桌面(终端服务)功能。另一个是用于
Windows Server 2012
(及更高版本)的称为动态访问控制的功能,该功能使管理员可以指定谁可以查看服务器上存在哪些类型的文件。
表
7.5
Windows 8
(及更高版本)和
Windows Server 2012
(及更高版本)的
CSE GUID
,其功能以及相应的
DLL
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Windows 8.1
和
Windows Server 2012 R2
(及更高版本)的
CSE
Windows 8.1
和
Windows Server 2012 R2
获得了一个针对工作文件夹的新
CSE
。其
GUID
为
{4d968b55-cac2-4ff5-983f-0a54603781a3}
,其
DLL
为
WorkFolderGPExt.dll
。
Windows 10
和
Windows Server 2016
获得了零个额外的
CSE
,并继续了
Windows 8
和
Windows 8.1
中所做的工作。
组策略首选项的其他
CSE
这些是组策略首选项扩展,我们在第
5
章
“
组策略首选项
”
中进行了探讨。
同样,要非常清楚:
Windows 7
和更高版本(包括
Windows Server 2008
和更高版本)中已经包含了它们。话虽如此,它们可用于
Windows XP
,
Windows 2003
和
Windows Vista
下载。它们不会在
Windows 2000
上安装。
在表
7.6
中,您可以看到组策略首选项
CSE
,它们的
GUID
和相应功能的列表。
表
7.6
中没有错误。所有新的组策略首选项扩展都使用
相同的
DLL
,但是如果您查看实际的注册表项,则会看到每个人的
Displayname
项都使用入口点
ID
记录
DLL
名称(
gppprefcl.dll
)。
表
7.6
仅当您添加组策略首选项扩展时才存在的
CSE GUID
,其功能以及相应的
DLL
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表
7.6
仅当您添加组策略首选项扩展时才存在的
CSE GUID
,其功能以及相应的
DLL
(续)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
内部
CSE
价值观
对于每个
CSE
,可以设置(或不设置)多个值。并非所有
CSE
都使用这些值。确实,
Microsoft
不支持以任何方式修改它们。
您可以在此处查看值列表:
http://msdn.microsoft.com/zh-cn/library/aa373494%28VS.85%29.aspx
(简称为
http://tinyurl.com/y9ydmcx
)。
它们会以您自己的方式显示在该
URL
上,但是在大多数情况下,除非
Microsoft
产品支持服务(
PSS
)明确指示这样做,否则您不应该对其进行修改。
请记住,
CSE
会设置这些值
–
否则,除非您由
Microsoft PSS
指导以确保
CSE
按照预期的方式工作,否则您不会设置这些值。
请注意,该网址列出了许多选项(例如,
NoSlowLink
,
可以在计算机内设置
NoBackgroundPolicy
和
NoGPOListChanges
)
配置
➢
策略
➢
管理模板
➢
系统
➢GPO
的
组策略部分。通过策略设置它们时,表中列出的
“
注册表值
”
列中显示的值将被忽略。
希望您不必在这里花费太多时间。但是,我提供这些信息是为了使您如果需要调试某个
CSE
,可以直接查看源代码,并查看设置可能不是您想要的。
请记住,这些设置大多数都是由系统默认设置建立的,或者可以更改。您可以使用第
3
章末尾介绍的技术自行修改设置,例如处理慢速链接的功能,被禁用的功能或在后台处理的功能。
管理模板注册表设置存储在哪里?
本节是您在第
6
章中已经学到的所有内容的简要回顾。但是,由于管理模板是最常用的策略设置之一,因此,让我们花一点时间来学习客户端如何处理管理模板。
在这里,我们只是在谈论适当的
“
政策
”
,而不是
“
偏好
”
(将在第
5
章中讨论)。
请记住,组策略的优势在于
“
现成的
”
策略设置不会刺中注册表。也就是说,一旦应用设置,它仅适用于该计算机或用户。当用户或计算机离开
GPO
的范围时(例如,当您将用户从
“
人力资源用户
OU”
移动到
“
会计用户
OU”
时),将删除应用于该用户的注册表设置,然后应用新的注册表设置。同样,如果某台计算机位于
“
人力资源计算机
”
OU
中并移至
“
会计计算机
”
OU
,则在
“
人力资源计算机
”
OU
中链接到的设置将消失。
管理模板组策略设置通常存储在以下位置:
用户设置
HKEY_CURRENT_USER \ Software \ Policies
计算机设置
HKEY_LOCAL_MACHINE \ Software \ Policies
或者,某些应用程序可以选择以下位置:
用户设置
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \
策略
计算机设置
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \
Currentversion \ Policy
Microsoft
鼓励第三方开发人员编写应用程序,以便他们使用
HKEY_CURRENT_USER \ Software \ Policies
或
HKEY_ LOCAL_MACHINE \ Software \ Policies
启用组策略。
知道其工作原理有助于我们理解为什么每个
Windows
版本都会增加可应用于它的管理模板策略设置的数量。这非常简单:针对策略设置的特定程序在这两个注册表位置查找设置。有时,该应用程序是一个我们忽略了一个为该地段
的
Explorer.exe
!
可以
“
理解
”
这些策略设置,然后使用该指令执行某些操作的
Explorer.exe
。
Internet Explorer
或
Windows
防火墙也是如此。随着他们的成长,每个操作系统的版本都会
“
更新
”
,因此可以管理的项目数量也随之增加。
这也回答了一个问题,例如,为什么
Windows XP
计算机似乎
“
忽略
”
了仅用于
Windows 10
计算机的策略设置。
简而言之,
“
较旧的
”
操作系统(实际上只是应用程序本身)不知道
“
寻找
”
新的策略设置(即使这些设置已写入目标计算机的注册表中)。因此,所有的操作系统(这又是真正的应用程序),可以下载策略设置
做
。但谁在乎?如果较旧的系统应用了策略设置,则会修改注册表,然后在其上运行的应用程序通常会忽略它。
“
旧
” Windows
只是不知道要查找新的注册表更改。有时,随着
Service Pack
的发布,有问题的应用程序可能会重新获得生命并了解一些新的策略设置
–
因为该应用程序现已更新,可以在注册表中查找它们。
Explorer
,
Software Update Services
,
Windows Media Player
和
Office
等已经发生过。
由于管理模板中的设置仅被写入这四个位置,因此我们免于为我们的注册表添加纹身的束缚。管理模板
CSE
(
Userenv.dll
)将放置在这四个位置中的任何位置的设置应用于当前的用户和系统组合。
在将用户移入或移出
OU
或更改组成员身份时,适用于它们的设置也会更改。从本质上讲,此过程更加微妙。非纹身行为的工作方式是,当首次应用注册表设置时,它们会合并到存储在计算机上的每个计算机和每个用户区域的文件中
–
每个文件称为
ntuser.pol
。下次运行管理模板
CSE
时,它将查找这些存储的文件,并列出我之前提到的四个
“
特殊
”
键中存在的所有策略设置的列表(在本节的开头)。然后,它将删除该文件指定的所有那些设置。然后,
CSE
用所有新文件重新创建该文件。
当前适用于计算机或用户的管理模板设置。最后,它将这些值应用于注册表的计算机或用户部分。
四个
“
特殊
”
位置之外的任何设置都
不会
被此删除过程覆盖,因此您有纹身的行为。
同样,如果使用
PolicyPak
应用程序管理器(在第
6
章中进行了探讨)将设置传递给应用程序,则当该策略不再适用时,它可以正确地还原设置。因此,没有难看的纹身。
为什么不应用组策略?
有时,您从高级别设置组策略,而用户或工作站不会收到更改。为什么会这样呢?
首先,请记住如何处理组策略:
■
■
在
GPO“
生活
”
在游泳池域中。
■
■
客户端请求的组策略在不同时间全天。
■
■
客户端连接到域控制器,以获得最新一批的
GPO
。(组
策略不以某种方式从高
“
推
”
)。
。
■
。
■
如果它的现状,这意味着:
■
■
(根据更改后的版本号),什么都没有了
GPO
内改变。
■
■
用户或计算机的位置在
Active Directory
中并没有改变。
■
■
用户或计算机没有改变组成员身份。
■
■
任何
WMI
筛选器的
GPO
设置并没有改变。
然后,默认行为是不重新处理
GPO
(尽管可以更改,如第
3
章所述)。
■
■
如果有变化(相对于任何这些以前要点的),那么所有适用的
CSE
重新处理所有适用的
GPO
。
这就是它的长短。
现在,如果您认为所有这一切都在正确进行,请尝试回答
以下各节中的问题,以找出可能阻碍组策略过程正常进行的因素。
复习基础
有时,是日常琐碎的事情阻止了
GPO
的应用。通过测试具有正常功能的简单应用程序,您通常可以发现并消除问题,从而使组策略能够按您期望的方式运行。
组策略对象或链接是否已禁用?
回顾第一章,组策略硬币有两半:计算机一半,用户一半。还请记住,任一部分或两者都可以禁用。实际上,可以完全禁用
GPO
本身(请参见图
7.17
)。
图
7.17
如果需要,可以禁用整个
GPO
。
检查
GPO
本身或任何相关的
GPO
链接。单击
“
详细信息
”
选项卡,然后检查
“ GPO
状态
”
设置。如果不是
“
已启用
”
,则可能会遇到麻烦。
您确定继承吗?
回想一下,组策略从站点,域和每个嵌套
OU
的每个级别向下流动,并且是累积的。还请记住,在
XP
中,只有一个针对计算机的本地组策略,该策略首先应用。
并且,在
Windows Vista
和更高版本中,存在三个级别的
MLGPO
。有关完整的摘要,请参见第
1
章。请记住,在
MLGPO
中,这是
“
最后书面胜利
”
的政策。
您是否正在尝试将策略应用于
OU
中的组?
这需要重复:您不能只是将包含用户的
NT
样式
/ Active Directory
组插入
OU
并期望他们获得组策略。组策略不能这样工作;您只能将组策略直接应用于
OU
中的用户或计算机,而不能应用于组。
一个级别上的多个组策略对象
还记得,在任何级别上都有许多
GPO
,它们的应用顺序相反,即从下到上,如第
2
章所述。由于任何两个(或更多)
GPO
可能包含相同甚至冲突的设置,最后应用的
GPO
胜出。如果您要使一个
GPO
具有更高的优先级,请使用
“
向上
”
和
“
向下
”
按钮来操纵顺序。请记住,编号
最低
的
GPO
将获得
最高
优先级。我知道这很令人困惑,但这就是问题。
检查您的块继承用法
GPMC
可让您使用蓝色感叹号(!)快速查看所有块继承实例。请记住,一旦选择阻止继承,
所有
更高级别的
GPO
都被视为无效
–
不仅仅是您要阻止的一个策略设置或
GPO
。好像您是从一个完全空白的板块开始。因此,无论何时阻止继承,都必须从头开始
–
创建和链接新的
GPO
或链接到已经在
GPO
容器中游泳的现有
GPO
。
检查您的
“
强制
”
用法
相反,请注意您所有的
“
强制
”
指令。
“
强制
”
图标是
GPO
链接旁边的一个小锁。
Enforce
指定从此刻起,在任何继承级别上都无法避免选择并包含在
特定
GPO
中的策略设置。请注意,块继承适用于
Active Directory
中的容器(例如,域或
OU
),而
“
强制
”
适用于
GPO
链接。因此,如果您有一个
GPO
链接到
Active Directory
中的四个容器,则可能只有一个链接
“
强制
”
,两个或全部(或没有!)。当
“
阻止策略继承
”
和
“
强制执行
”
似乎发生冲突时,
“
强制执行
”
总是胜利。回想一下,
Enforce
以前在过时的用语中被称为
“
不改写
”
。
权限设置正确吗?
回顾第二章,必须设置两个权限
-“
读取
”
和
“
应用组策略
”
,以便受影响的用户处理特定的
GPO
。默认情况下,
“
经过身份验证的用户
”
具有这两个权限,但是您可以删除该组,并通过
GPO
链接的
“
作用域
”
选项卡上的
“
安全筛选
”
部分设置自己的筛选。
在第
2
章中,我向您展示了两种过滤方式:
■
■
四舍五入只有用户,计算机或安全组谁
应
获得的
GPO
适用于他们。
■
■
找出你谁
不
希望
得到的
GPO
应用到它们,并使用
“
拒绝
”
属性在
“
应用组策略
”
的权利。
说完一切后,用户将需要对
GPO
本身具有
“
读取
”
和
“
应用组策略
”
权限才能应用
GPO
。并且,可以通过对这两种权限中的一种或另一种设置
“
拒绝
”
访问权限来阻止
GPO
的应用。但是,如果您要使用此技术,则最佳实践指示始终尝试拒绝对
“
应用组策略
”
而不是
“
读取
”
的访问。
尝试始终拒绝
“
应用组策略
”
(而不是
“
读取
”
),因为稍后该用户可能需要能够修改
GPO
。而且,如果没有读取权限,他们将无法对其进行修改。
仅拥有这些权限之一意味着在应进行处理时组策略将不适用。此外,请确保记住,
“
拒绝
”
属性始终优先于所有其他权限。如果遇到显式的
“ Deny”
属性,就好像它是世界上唯一重要的位。因此,如果没有将特定的
GPO
应用于用户或组,请确保
“ Deny”
不会以某种方式进入画面。
“
范围
”
选项卡的
“
安全性过滤
”
部分中不会显示对
“
拒绝
”
属性的任何使用,因此,如果使用该属性,则不会有任何通知。这是不应用组策略的常见原因;传统的执行组策略过滤的方法涉及大量使用
“ Deny”
属性,现在,除非您使用组策略结果向导(或
GPResult.exe
),否则
GPMC
将不会轻易显示此事实。
高级检查
如果您已经了解了基础知识,但没有任何明显错误,则可能是在进行更细微的交互。查看以下任何问题和解决方案是否符合要求。
Windows XP
(及更高版本)是否已启动快速启动?
Windows XP
(及更高版本)的默认行为不同于其最初的兄弟
Windows2000
。
Windows2000
的默认行为是在前台(在计算机启动或用户登录时)同步处理
GPO
。也就是说,对于影响
Windows 2000
计算机(将在启动时生效)的策略设置,甚至在用户可以按
Ctrl + Alt
之前,都会应用每个
GPO
(本地,站点,域和每个嵌套的
OU
)。
+ Del
登录。一旦用户登录,在最终显示用户的桌面并可以开始工作之前,将应用影响用户端的策略设置(本地,站点,域和每个嵌套的
OU
)。
对于影响计算机的
GPO
中的策略设置来说,这通常不是什么大问题,但是如果启用了用户策略处理功能,则可能严重影响用户的体验。即使
在
用户登录后,也可以突然下载
GPO
,并且策略设置开始弹出并更改用户的环境。
而且,正如我在第
3
章中所述,默认情况下,
Windows XP
及更高版本中的几个关键项需要两次至三次重新引导才能生效。为此,建议您修改默认行为。我可以给您的最强建议是
在域级别创建和链接新的
GPO
。将新的
GPO
命名为
“ Force XP
和更高版本的计算机,使其表现与
Windows 2000
相似
”
,然后启用
“
在计算机启动和登录时始终等待网络
”
策略设置。然后,选择
“
强制
”
,使其不会被阻止。
要找到此策略设置,请在
“
计算机配置
”
➢“
策略
”
➢“
管理模板
”
➢“
系统
”
➢
“
组策略
”
的登录分支中进行深入研究。(有关更多信息,请参见第
3
章。)
因此,如果您的组策略应用程序不稳定(尤其是对于软件安装,文件夹重定向或配置文件设置),请查看
Windows XP
和更高版本的
“
快速启动
”
是否仍处于活动状态。
GPC
和
GPT
都正确复制了吗?
如本章第一部分所述,组策略由两部分组成:
■
■
GPC
的,这是在
Active Directory
中找到,并通过正常复制活动
目录复制
■
■
该
GPT
,这是在一个域控制器的
SYSVOL
共享发现,通过
FRS
到其他域控制器复制
GPC
和
GPT
都是独立复制的,可以在融合之前按照不同的时间表进行。
结合
GPMC
的
“
状态
”
选项卡
Gpotool
和
Repadmin
使用前面所述的技术,可以诊断复制
GPC
和
GPT
的问题。
您是否检查服务器和客户端的
DNS
配置?
为了正确复制
GPC
和
GPT
,无论在服务器上还是在客户端上,
DNS
结构必须始终为
100
%洁净。如果您怀疑未正确复制
GPC
和
GPT
,则可以尝试查看
DNS
结构是否符合您的意图。如果是这样,我不建议您将其全部撕碎并在其他所有工作正常的情况下重新配置它。
Microsoft
知识库文章,位于:
http
:
//support.microsoft.com/kb/291382/en-us
为了解如何创建健康的
DNS
基础结构提供了良好的基础。
在某些情况下,一个域控制器可能没有向您的客户端提供组策略。在下一节中,我将向您展示如何确定您的客户端是否真正登录,如果是,则如何确定计算机和用户用于登录的域控制器。
您确实登录吗?
有时您可以
“
感觉
”
到登录而无需实际登录。这是一个很大的差异。例如,如果您使用缓存的凭据登录,并且域控制器没有将
Kerberos
票证退还给您,那么您根本就不会登录。您只是
“
感觉
”
已登录。
因此,为确保您的用户和计算机真正登录到网络上,您可以仅依靠一种工具
-Kerbtray
(或等效于命令行的
klist.exe
)。
Windows 2003 Resource Kit
中提供了
Kerbtray
和
klist
,它们很小,足以放在
USB
记忆棒上并在可疑机器上运行。运行
Kerbtray
时,它会在通知区域中放置一个小图标。如果计算机和用户具有
Kerberos
票证,则该图标变为绿色,并且您知道您已经真正登录。但是,如果
Kerbtray
返回一堆松散的键的图形(在我看来,它看起来像问号),如图
7.18
所示,您会知道您尚未登录,因此不会下载最新的
GPO
。同样,如果您确实已登录,则该图形将是一张绿色票。
图
7.18
的
LOGONSERVER
变量不能被信任。在这里,网络处于脱机状态,但是
LOGONSERVER
仍然报告(错误的)域控制器。改用
Kerbtray
,它显示在通知区域中。
在图
7.18
中,您可以看到几件事:
■
■
该计算机的网卡被断开(如图网络连接窗口)。
■
■
该
LOGONSERVER
变量设置到域控制器(如图所示在
CMD
提示窗口)。随意大声说:
“
如果网卡关闭,这是不可能的。
”
■
■
的
Kerbtray
,值得庆幸的是,回报那一堆松散的按键的图标核实,我们没有登录。
因此,找出如果您已经登录使用的是
Windows XP
或更高版本的计算机上时,它的
“
的
Kerbtray
或高速公路。
”
一旦你用的
Kerbtray
验证了计算机真的登录,就可以
再
使用
LOGONSERVER
变量确定
Windows XP
或更高版本的计算机使用的是哪个域控制器
–
这样,您就会知道真相:是否真正登录。
最近有什么动静吗?
如果将计算机帐户或用户帐户从一个
OU
移到另一个
OU
,则
Windows
(所有版本)可以等待长达
30
分钟才能意识到这一事实。一旦完成,它可能会或可能不会再应用后台组策略
90
分钟或更长时间!运行
gpupdate
将无济于事。
但是,如果您希望某个特定设置在移动了
150
分钟以上的用户或计算机上生效,则需要确定该移动是否已被用于身份验证的工作站的域控制器所接受。(有关如何通过
LOGONSERVER
变量确定域控制器的信息,请参阅上一节,但请确保您确实已登录!)
然后,您可以启动
Active Directory
用户和计算机,并连接到有问题的域控制器,如图
7.19
所示。
图
7.19
您始终可以手动连接到域控制器,以查看
Active Directory
是否执行了复制。
如果目标计算机的本地域控制器不知道此举,则可能要使用
Active Directory
站点和服务手动启动复制。如果目标计算机的本地域控制器
确实
知道有关移动的信息,则可能要尝试注销用户,然后重新登录或重新启动计算机。尽管使用
gpupdate
(适用于
Windows XP
和更高版本)刷新
GPO
是一个不错的选择,但是最好注销并
/
或重新启动计算机,以确保计算机将执行初始策略处理,如第
3
章所述。
在
Windows 7
和更高版本的计算机上运行
gpupdate / force
应该可以
“
启动
”
计算机和
/
或用户帐户,以使其意识到它已在
Active Directory
中移动。我已经做了广泛的测试。它可以在
Windows 7
和
Windows 8
上很好地工作,但是即使那样,我仍然看到它可以工作,但是也无法工作。为了获得
100
%的确定性,只需重新启动计算机即可。
机器是否正确加入域?
这很奇怪,所以请和我在一起。简而言之,有时您会发现自己处于计算机从域断开连接的情况。这可能会在虚拟环境中发生,尤其是在测试中,当客户端计算机(例如
Windows 10
)一次加入但虚拟机(
VM
)被
“
回滚
”
到较早的日期和时间时。
在其他情况下,也可能导致计算机无法连接,但这种情况一直在我身上发生。这是一个很奇怪的部分:如果您尝试登录,有时它只是莫名其妙地
起作用了
–
即使它不起作用。
但是,然后,就像在斯蒂芬
·
金(
Stephen King
)的《
宠物抚养所
》(
Pet Sematary
)中一样
,突然间事情变得
“
不太正确
”
。一段时间内,您会获得用户端策略,甚至计算机端策略。然后,您可能会丢失计算机端策略。
GPresult / R
开始失败,并显示奇怪的错误消息。
简而言之,您不再加入,
甚至都不知道
。
发生的情况是
计算机信任
(也称为
安全通道
)被破坏了。要查看对域的计算机信任(安全通道)是否已损坏,可以使用
NLTEST
,可以在此处找到它:
http
:
//tinyurl.com/4uhnu
。
Ť
他验证语法
NLTEST / SC_QUERY
:
DOMAIN_NAME
。如果测试通过,那么您就是犹太洁食。如果不是,则解决方法很简单:只需取消联接并将设备重新加入域即可。
是否启用了环回策略?
启用回送策略将使组策略变得无所适从:回送将为登录到特定计算机的每个用户强制执行相同的用户策略设置。如果您看到用户策略设置适用但计算机策略不适用,或者正在应用而没有押韵或理由,则可能启用了环回策略。查看第
4
章
“
高级组策略处理
”
,以深入了解其工作原理,何时使用以及如何将其关闭。
在
Windows XP
中,很难确定您处于回送模式。在
Windows Vista
和更高版本中,这要容易一些。在
Windows
组策略事件日志中查找事件
ID 5311
。在事件的内容中,您将看到
“
回送
”
策略处理模式是否设置为
“
替换
”
,
“
合并
”
或未启用。
如何定义慢速链接,以及如何
处理慢速链接?
如果您发现组策略未应用于通过慢速链接进入的用户,请记住慢速链接的规则:
■
■
注册和安全设置总是应用在慢(和快速)的链接。
■
■
EFS
(加密文件系统),
IPSec
(
IP
安全)政策,工作文件夹设置,
Windows
搜索和脱机文件设置
总是
应用在低速链路。即使在
“
计算机配置
”
➢“
策略
”
➢“
管理模板
”
➢“
系统
”
➢“
组策略
”
分支下可以找到设置,也无法关闭此行为。这是界面中的错误,如第
3
章所述。
■
■
默认情况下,磁盘配额,文件夹重定向,
Internet Explorer
设置,旧部署打印机连接和软件部署没有应用过慢的链接。更新的登录脚本和新的登录脚本也不会通过慢速链接下载。您可以
在
“
计算机配置
”
➢“
策略
”
➢“
管理
模板
”
➢“
系统
”
➢“
组策略
”
下更改此默认行为,如第
3
章所述。请注意,处理脚本策略和运行脚本之间存在区别。脚本本身仅在登录和引导(计算机启动或用户登录)期间运行,但在
更新过程中
可以在后台完成需要运行的脚本列表。我在这里指的是这种更新。
此外,您可以更改等同于慢速链接的定义。默认情况下,
慢速链接为
500Kb
或更小。您可以在
“
用户配置
”
➢
策略
➢
管理模板
➢
系统
➢
组策略
➢
组策略慢速链接检测中
更改用户设置的定义,并在
“
计算机配置
”
中更改计算机设置的定义
➢
策略
➢
管理模板
➢
系统
➢
组策略
➢
组策略慢速链接检测
。用户设置如图
7.20
所示。如果未将组策略应用于您的慢速链接客户端,请确保检查慢速链接定义以确保它们适合。
最后,不要忘记
DSL
或电缆调制解调器上的宽带用户。这些速度有时快于
500Kb
,有时慢于
500Kb
。这可能意味着您的宽带用户可能会在周末获得
GPO
,但在高峰使用时间内登录时无法获得
GPO
。因此,如果发生这种情况,请根据需要设置慢速链接的定义。
最后,应该注意的是,如果将慢速链接阈值设置为
0
,则客户端将始终假定它位于快速链接上。
图
7.20
确保您没有将阈值提高得太高,以使连接较慢的用户可以接收组策略。
NLA
故障排除
如果您使用的是
Windows Vista
或更高版本的客户端,则可能需要确定是否发生了网络位置感知(
NLA
)刷新。如前所述,当您的客户端是
Windows Vista
及更高版本时,
NLA
是一项服务,可在确定链接速度和域控制器可用性时取代
ICMP
慢速链接检测。
如果域控制器对客户端不可用,或者由于客户端是远程的并且未连接到公司网络,或者因为域控制器根本不可用,所以组策略处理将失败。
当域控制器再次变得可用时,
NLA
将检测其存在并触发立即请求以执行组策略的后台刷新。但这是窍门:
只有
在先前刷新组策略失败时,
NLA
才会执行此刷新。如果先前的组策略刷新成功,
然后
域控制器变得不可用,
然后
又变得可用(在下一个组策略处理周期之前),则
NLA
将不会触发后台刷新。通过查看组策略操作日志,您将能够看到基于
NLA
的组策略的刷新,这将在稍后的
“
使用组策略操作日志进行故障排除
”
一节中进行介绍。该事件与图
7.21
所示的事件相同。
图
7.21
查看指示刷新基于
NLA
的组策略的事件
请注意,
NLA
完成对域控制器的检测并触发我的测试中的后台组策略处理周期最多需要
10
分钟。因此,不要期望在
DC
可用后立即刷新基于
NLA
的组策略。根据您的系统和网络,您的里程可能会有所不同。
客户端系统上的日期和时间是否正确?
客户端系统和验证域控制器之间的时间差大于
5
分钟将导致
Kerberos
不允许登录。如果没有
Kerberos
,则将出现登录问题,这将产生组策略问题。
您的
Active Directory
站点配置正确吗?
有时,如果您的客户端不在正确定义的
Active Directory
站点(具有与其关联的
IP
信息)中,则组策略将不适用。考虑到这一点,请检查客户端所在的子网,并确认该子网与
Active Directory
站点正确关联,并且该站点具有域控制器覆盖范围。
您是否检查了客户端的
DNS
配置?
Active Directory
网络最常遇到的问题之一是,当
DNS
失控时,事情只会
“
停止工作
”
。具体来说,如果您没有看到适用于您的客户端计算机的组策略,请确保其
DNS
客户端指向域控制器或该域的其他权威源。如果指向错误的位置或没有指向任何地方,则不会下载组策略。正如我的一位同事喜欢说的那样,
“
健康的
DNS
等同于健康的
Active Directory”
。
此外,由于
Windows 2003
及其具有跨林信任关系的多个林,因此组策略可以在几乎任何地方和任何地方应用。比以往任何时候都重要的是,验证所有
DNS
服务器指针的设计是否正确并可以正常工作。例如,如果客户端在利用跨林信任时无法访问其
“
主
”
域控制器,则不会获得组策略。
最后,要明确一点,组策略
仅
利用完全限定的名称。仅仅验证您可以解析名为
WIN10
而不是
WIN10.corp.com
的计算机还不够。第一个是
NetBIOS
名称,而
不是
标准域名。第二个是完全限定的域名。如果您发现
DNS
解析情况下可以解决
NetBIOS
名称,但是完全限定的名称将不起作用,则您有
DNS
问题需要解决。
您是否要在
OU
上设置密码或帐户策略?
正如您将在第
8
章中看到的那样,某些组策略项(即密码和帐户策略)不能在
OU
级别设置。而是,这些策略设置仅在整个域范围内。
GUI
使您可以在
OU
级别上设置这些策略设置,但它们不会影响用户或计算机。好吧,这不是正确的,正如您将在第
8
章中看到的那样,但是出于故障排除的目的,请记住,例如,在
Sales
OU
中不能有六个字符的密码,在
Engineering
OU
中不能具有
12
个字符的密码。。它不会工作。(您将在第
8
章中看到密码策略会影响
OU
中的本地帐户。)
有人在
组策略引擎的背后掩盖了安全性吗?
正如您在第
3
章中看到的那样,有很多方法可以
“
绕过
”
组策略引擎的后端。但是请记住,这些漏洞需要本地管理访问权限。
但是,这意味着具有本地管理访问权限的用户可以手动修改
注册并返回他们想要的系统。然后,如上所述,组策略将不会在后台刷新,登录或重新启动后重新应用。如前所述,仅当与组策略相关的某些内容发生更改时,它才会重新应用更改。
该
运行
gpupdate
命令将刷新更改的组策略为好,但其
/
力
开关是相当强大的,并会重新应用所有的设置,甚至包括那些没有改变。
目标计算机是否在正确的
OU
中?目标
用户是否在正确的
OU
中?
这是我个人的痛点。这是我通常最后检查的那个,通常是有问题的。也就是说,我忘记将用户对象或计算机对象放入要
GPO
应用于的
OU
中。因此,对象不在组策略将应用的
“
范围
”
内。
您可以在自己喜欢的
OU
上配置所有用户或计算机策略设置,但是很显然,除非该用户或计算机对象实际上
在
OU
中,否则目标计算机将不会收到您发送的消息。而且,不,您不能仅移动包含用户或计算机对象的安全组并将其插入所需的
OU
中。组策略不能那样工作。该实际用户或计算机对象需要位于
GPO
应用的站点,域或
OU
中!而且由于两个对象不能同时存在于任何两个
OU
中,因此这可能是一个挑战。
域控制器上(或之间)是否有防火墙?
所有现代
Windows
操作系统都附带打开了防火墙的功能。
通常这不应该是问题。从纯服务器升级到域控制器时,域控制器应自动打开正确的端口。但是,我见过他们没有的时候。在这种情况下,您可能需要删除
Active Directory“
角色
”
并重新安装它才能使端口正确打开。
同样,如果有人在您的客户端和域控制器之间建立了硬件防火墙或其他软件防火墙屏障,并且它阻止了客户端与域控制器进行通信所需的某些核心协议,则您将无法获得域控制器的注意,因此您无法下载组策略。
有人用
SYSVOL
破坏了
GPO
的
GPT
部分的
ACL
吗?
很少有理由手动挖掘
SYSVOL
中的
GPO
内胆(这是
GPT
的一部分)并手动操纵文件
ACL
。但是,有时,新手管理员可能会玩游戏,从而造成严重后果。而且,如前所述,
Gpotool / checkacl
不会验证
GPO
的
GPT
部件上的文件
ACL
。换句话说,如果
GPT
上的
ACL
损坏,最好的选择是重击
GPO
并从备份中还原。恢复过程应在重新创建时使用正确的
ACL
创建
GPO
。您也可以尝试使用
GPMC
来简单地修改损坏的
GPO
的
ACL
。任何更改都可以。这样,有时这可以
“
重新同步
” GPC
和
GPT
上的
ACL
,尽管这取决于
GPT
的
ACL
对此方法是否有效的修改程度。
客户端故障排除
掌握最重要的技能之一就是能够确定客户的状况。从总体上讲,从
GPMC
运行的组策略结果工具应该可以为您提供所需的信息。但是,有时候,只有向客户端走去才能真正确定客户端系统上正在发生的事情。
您可能会在大厅中漫游,只是想从休息室获得最后的甜甜圈,这时有人会紧紧抓住您并坐在您的座位上,以便进行即兴的故障排除。他们希望您弄清楚为什么今天的组策略与昨天的不一样,或者为什么他们突然得到新的或不同的设置。
以下各节将介绍在客户端或使用某种远程控制机制(例如
VNC
(虚拟网络客户端))甚至使用
Windows
自己的远程协助时确定
RSoP
(策略结果集)的各种方法。
正如在第
2
章中看到的那样,
GPMC
有两个工具可帮助您利用此数据:组策略结果和组策略建模。但是,您可以使用其他客户端工具。此外,我将描述如何利用功能来远程确定目标用户和计算机的
RSoP
。
让我先介绍一下一般的组策略故障排除技术,然后再尝试对故障进行故障排除。有一些值得关注的事情取得了良好的进展:
1.
您应该采取的第一步是使用我在下一节中描述的
RSoP
功能
,以确保您知道正在发生什么
—
正在应用哪些
GPO
,没有应用
GPO
,为什么。
2.
一旦掌握了这些内容但仍然找不到问题,下一步就是深入研究日志
–
从问题客户端上的应用程序事件日志开始。
3.
然后进入
Windows Vista
及更高版本的组策略事件日志(稍后在
“ Dive Dive
故障排除
”
部分中进行介绍)。
4.
如果第
3
步没有产生结果,并且您仍然找不到问题,请转到
CSE
特定的日志(如果有)。
这种方法将最大限度地减少您花费在解决问题上的时间,并将最复杂的故障排除任务留在了最后。
Windows
客户端的
RSoP
在本节中,我们将探讨几种从客户端获取
RSoP
的方法。
在第
2
章(本章较小程度上)中,我们讨论了打开
Windows
防火墙的想法,以使我们(管理员)可以看到用户计算机上正在发生的事情。
这个想法是,如果您不能使用此处介绍的任何技术远程获取
RSoP
,那么您将需要能够(从您的计算机中)与
他们的
计算机进行通信。
为此,至少需要打开端口
135
和
445
,这正是
Windows
防火墙:
允许入站远程管理异常的
作用。同样,此策略设置位于
“
计算机配置
”
➢“
策略
”
➢“
Windows
防火墙
”
➢“
域配置文件
”
中。
GPResult
命令行实用程序
您可以在用户桌面或自己的桌面上运行
GPResult
,也可以远程运行它并假装为该用户。
如果您正坐在某人的桌面上运行它,则可能会使用
以下选项:
。
■
。
■
/ R
是常规输出。(注意:
Windows XP
计算机上不需要。)
■
■
/H:File.html
将输出结果的
HTML
文件名为
File.html
。此输出将显示报告中的
“
组策略首选项
”
项(
Windows 7
及更高版本)。
。
■
。
■
/X:File.xml
将输出结果作为
XML
的文件名。
。
■
。
■
/ V
是详细模式。它提供了最有意义的信息。
。
■
。
■
/ Z
是
zuper
,呃,超详细模式。根据影响用户或计算机的策略设置的类型,它显示的信息比您可能希望看到的更多。
■
■
/
范围用户
限制了输出到用户侧的策略设置,和
/
范围计算机
限制输出到所述计算机侧的策略设置。
Windows Vista
和更高版本的
GPResult.exe
有所更改:作为在
Vista
和更高版本中运行
GPResult.exe
的常规用户,您不会从该工具中获得仅用户端结果。如果尝试报告计算机端设置,则将收到
“
访问被拒绝
”
错误,直到您在提升的上下文中运行命令。请注意,您可以委派特定用户或组使用
GPMC
读取此数据的权限。
您可以混合和匹配选项。例如,要显示用户部分的详细输出,可以运行
GPResult / v / scope user
。
这是以
Frank Rizzo
(属于
人力资源用户
OU
)登录
WIN10
工作站(位于
人力资源计算机
OU
中)时运行
GPResult / r
的结果。请注意,某些显示可能与您的显示有所不同。
首先要注意的是,
GPResult / r
输出仅显示
Frank
故事的用户端,而不是计算机端。我们将在一秒钟内到达那个怪异的部分。
接下来,您可以从
GPResult
中
收集各种多汁的花絮。对客户端
RSoP
进行故障排除时,以下是要检查的关键区域:
■
■
查找用户和计算机
“
应用的组策略对象
”
项。请记住,首先从本地计算机应用组策略,然后是站点级别,然后是域级别,然后是每个嵌套的
OU
。如果客户端上的设置是意外的,请使用提供的信息以及组策略对象编辑器来开始跟踪错误的
GPO
。
■
■
使用
“
上次组策略应用
”
条目看到
GPO
应用
–
无论是通过初始或后台刷新处理的最后时间。使用
gpupdate
刷新它,然后确保在重新运行
GPResult
时更新了该值。
■
■
使用计算机和用户对象的拼写出的专有名称(例如,
CN =
弗兰克
·
里索,
OU =
人力资源的用户,
DC = CORP
,和
DC = COM
),以验证用户和计算机对象位于何处您认为它们应该位于
Active Directory
中。如果不是,请使用
Active Directory
用户和计算机验证用户和计算机帐户的位置。如果
Active Directory
中的位置未检出,则可能需要重新启动此客户端计算机。请注意,如果您使用缓存的凭据离线登录,则此行不存在。
■
■
使用
“
用户是下列安全组的一部分
”
和
“
计算机是以下安全组的一部分,
”
部分,以验证用户或计算机是否是你希望的组。可能您的用户或计算机对象位于一个组中,该组被拒绝访问您期望的
GPO
的
“
读取
”
或
“
应用组策略
”
权限。请注意,如果您对计算机的安全组成员身份进行更改,则除非您重新启动计算机,否则组策略将不会采用该更改。不幸的是,这没有办法。用户组更改也是如此
—
在安全组更改生效之前,用户将需要重新登录。
■
■
查找日志以及用户和计算机两个
“
组策略慢速链接阈值
”
项
“
连接通过较慢的链接?
”
条目。请记住,通过慢速链接访问时,组策略的各个区域的处理方式有所不同。(请参阅第
3
章。)
■
■
查找
“
未应用以下的
GPO
,因为他们被过滤掉
”
的部分用户和计算机两个半。如果此处列出了
GPO
,则实际上该用户或计算机位于该
GPO
应该应用于的站点,域或
OU
中。但是,由于多种原因,此处列出的
GPO
尚未应用于该用户或计算机。
GPResult
可以告诉您为什么会这样。以下是一些常见原因:
拒绝(安全)
用户或计算机已被明确拒绝
“
读取
”
和
“
应用
”
组策略
”
处理
GPO
的权利。例如,在前面的示例中,
“ AutoLaunch Calc.exe”
不适用于
WIN10
,因为在第二章中,我们明确拒绝
WIN10
计算机对象处理
“
应用组策略
”
属性的能力。
未应用(空)
此
GPO
在
“
用户
”
或
“
用户
”
中未设置任何策略设置
电脑一半。例如,在前面的示例中,
“
禁止更改声音
” GPO
没有任何计算机端策略设置。因此,此
GPO
不适用于
Frank
的计算机对象。具体地说,在这里,组策略引擎看到
“
用户
”
或
“
计算机
”
一半的修订数量为
0
。这与
GPO
的版本号有关,因此,如果在进行
GPO
更改时版本号没有正确更新,则
GPO
可能会错误地视为空白。
未应用(未知原因)
通常已使用块继承,或者用户没有读取
GPO
的权限(尽管其他真正的
“
未知原因
”
也可能有效)。在前面的示例中,在站点级别设置的
“
隐藏屏幕保护程序选项
” GPO
不适用于
Frank
,因为我们在
人力资源
OU
中阻止了继承。
正如您在上一个屏幕截图中所看到的那样,当以普通用户身份运行
GPResult / r
以获取
RSoP
数据时,您将只能看到用户端设置。为什么?因为这就是您在这个更加安全的
Windows
世界中可以访问的全部。要解决此问题,您有两种选择:
选择
1
两次
运行
GPResult
:一次以有问题的用户身份,然后以管理员身份运行。(您可以
通过以管理员用户身份运行命令提示符来以管理员身份运行
GPResult
。)这样,您将获得用户端
RSoP
(您以用户身份运行)和计算机端
RSoP
(您以用户身份运行)。管理用户)。然后,这两个部分组成了真正的
RSoP
。令人沮丧,但
Windows Vista
和更高版本中的安全性阻止了普通用户对此的了解,但这是必需的。更令人沮丧的是,如果您(管理员)从未登录过特定的客户端计算机,则会从
GPResult
中
收到错误
消息
表示该管理员帐户没有
RSoP
数据。因此,在以下屏幕截图中,我们以
Frank Rizzo
的身份登录,试图获取他的
RSoP
数据(顶部窗口)。如前所述,默认情况下他无法访问计算机端。因此,我们执行
runas
命令以获取自己的命令行窗口作为新的
Administrator
(底部窗口)。为了进行计数,我们然后运行
GPResult / scope
:
computer
。即使我们只是想要方程式的
计算机
端,我们仍然会收到关于
用户
端没有数据的错误(底部窗口)。令人沮丧的最大
选择
2
使用
GPMC
委派用户查看自己的计算机端
RSoP
数据的能力。同样,在
Windows Vista
及更高版本中,默认情况下不允许这样做。这对于
XP
机器来说很好用。因此,在我看来,没有什么理由不仅仅
允许用户看到它。
假设您想允许域中的每个人看到他们自己的
RSoP
数据,我们需要查看如何执行委派(在第
2
章中进行了讨论)。如果要执行此委派,则可以使用
GPMC
,单击域级别,然后单击
“
委派
”
选项卡。在
“
权限
”
下拉列表中,我们将选择
“
读取组策略结果数据
”
,然后添加
“
经过身份验证的用户
”
(或修改对
“
域用户
”
组的权限,该权限始终已列出)并选择应用于
“
此容器和所有子容器。
”
您可以在此处查看此过程的屏幕截图:
同样,如果我们实际坐下来,这就是获取机器的
RSoP
所需要的。如果您希望从另一台计算机远程获取此数据,则完全不同。如果您希望将权限委派给非管理用户(例如服务台中的某人),则方程式会变得更加严峻。
在本章稍后,我们回顾如何以非管理员用户身份成功检索组策略结果数据。该部分是
“
远程计算客户端的
RSoP
(当您将权限委派给非目标计算机的本地管理员的人时)。
”
请务必阅读该部分以获取完整信息,否则您将被排除在外。想知道为什么您会收到
“
拒绝访问
”
消息。
远程计算客户端的
RSoP
(使用
GPresult
)
GPResult
依赖于操作系统内置的
WMI
提供程序。因此,您可以通过使用
GPMC
的组策略结果向导或
GPresult
命令行工具来远程获取结果。
您运行
GPResult
,将其指向系统,并提供您希望收集其
RSoP
数据的用户名。
这里有两个更重要的警告。也就是说,仅当目标用户登录到目标计算机时,此魔术才有效。他们只需要登录一次,而在运行测试时甚至不需要登录。但是,如果目标用户
从未
登录过目标计算机,则为该用户远程计算
GPResult
将失败。此外,
如果启用了目标计算机的
Windows
防火墙,则远程尝试获取
GPResult
将失败。
如第
2
章所述,请关闭
Windows
防火墙或启用策略设置
“
Windows
防火墙:允许入站远程管理例外
”
,您可以在计算机配置
➢
策略
➢
管理模板
➢
网络
➢
网络连接
➢Windows
防火墙
➢
域(或标准)配置文件。
或者,对于您的
Windows Vista
和更高版本的客户端,您确实可以使用新的具有高级安全性的
Windows
防火墙(您将在第
8
章中了解到),当然,该防火墙还有一种替代方法仅对
Windows Vista
和
Windows XP
有效。后来。可以在
“
计算机配置
”
➢“
策略
”
➢“
Windows
设置
”
➢“
安全性设置
”
➢“
具有高级安全性的
Windows
防火墙
”
➢“
入站规则
”
下找到。考虑到这一点,这是您以后
使用
的其他
GPResult
选项:
■■
/ s
的
<
目标系统名称或
IP
地址
>
点到目标系统。
■
■
/
用户
<
可选域
\
用户名
>
目标用户收集的
RSoP
数据。
您也可以结合使用任何上述
GPResult
开关。如果您登录
DC01
并想在
Frank Rizzo
登录
WIN10
时仅查看用户端策略设置,请键入以下内容:
gpresult / user frizzo / s win10 / scope
:
user / r
同样,仅当
Frank
已经登录到
WIN10
时,此命令才会成功。
GPResult
更好地告诉您
为什么
要应用
GPO
,而不是告诉
GPO
包含
哪些
特定的策略设置。例如,请注意,
GPResult
从未
告诉我们本地
GPO
中包含哪些策略设置。对于这些任务,我们将需要使用
GPMC
(如第
2
章所示)。
使用远程计算客户端的
RSoP
Get-GPResultantSetOfPolicy
Cmdlet
您也可以使用
Get-GPResultantSetOfPolicy
cmdlet
远程获取
RSOP
并将其转储到
XML
或
HTML
文件。一个示例命令可能是这样的:
Get-GPResultantSetOfPolicy –ReportType HTML –
计算机
Win10 –
用户
Frizzo –
路径
C
:
\ Temp \ Report1.html
命令结果如图
7.22
所示。
图
7.22
使用
PowerShell
远程获取
RSOP
报告。
远程计算客户端的
RSoP
(委托后)
非目标计算机本地管理员的权限)
在前面的示例中,我做了一个假设。
我假设您要查看某人的
RSoP
数据,并且您也是计算机的本地管理员。
但是,在现实世界中可能并非如此。
也许在您的现实世界中,您想将权限委派给服务台(或另一个非管理组)。
如果这样做,则需要额外提高以确保他们可以读取
RSoP
数据。(如果您首先需要重新学习如何委派权限,请务必阅读第
2
章中的
“
特殊组策略操作委派
”
部分。)同样,此区域位于
OU
的
“
委派
”
选项卡中(或域或网站)。
一旦在所需的用户和
/
或计算机上执行了
“
读取组策略结果数据
”
的委派,您还需要执行这些非常重要的附加委派步骤。(同样,仅当您已将此功能委派给目标计算机的非管理员时才需要执行这些步骤。)
例如,假设
Tom
用户(从服务台)需要访问权限,以从
Brett Wier
使用的计算机(
Win10.corp.com
)读取组策略结果数据。首先,您在包含
Win10.corp.com
的
OU
上委派权限,并确保
Tom
可以
“
读取组策略结果数据
”
。但是即使这样做,
Tom
尝试运行组策略结果向导时,他也会出现
“
拒绝访问
”
消息,如图
7.23
所示。
要稍微打开它(并同时降低安全性),您需要创建并链接一个会影响目标计算机
OU
的
GPO
。然后,确保在该
GPO
中启用了以下策略设置:
1.
我们已经介绍了这一内容,但是只是为了确保您已安装好它:计算机配置
➢
策略
➢
管理模板
➢
网络
➢
网络连接
➢Windows
防火墙
➢
域配置文件
➢Windows
防火墙:允许入站远程管理例外
。选择允许来自哪个子网的入站请求(或指定
*
允许所有子网)。
2.
其他策略设置位于计算机配置中
➢
策略
➢
Windows
设置
➢
安全设置
➢
本地策略
➢
安全选项
➢
DCOM
:在安全描述符定义语言(
SDDL
)语法计算机访问限制
。编辑策略设置时,首先选择
“
定义此策略设置
”
,然后单击
“
编辑安全性
”
,添加
Tom
用户,然后指定允许远程访问。执行此操作时,将(自动)自动生成一个安全描述符,例如
O
:
BAG
:
BAD
:(
A ;; CDCLC ;;;
),通常很长。您可以在图
7.24
中看到此屏幕快照(尽管屏幕快照中没有安全描述符,因为我还没有点击
OK
)。
图
7.23
Tom
不能针对自己不是本地管理员的计算机运行组策略结果。
3.
最后一个策略设置位于内计算机配置
➢
策略
➢
Windows
设置
➢
安全设置
➢
本地策略
➢
安全选项
➢
DCOM
:在安全描述符定义语言(
SDDL
)语法计算机启动限制
。同样,请确保单击
“
定义此策略设置
”
。然后,添加同一个人(
“ Tom
用户
”
)并授予
“
远程启动:允许
”
和
“
远程激活:允许
”
权限。
图
7.24
对于每个
DCOM
权限,添加委派的用户并指定他们具有
“
远程访问:允许
”
权限。
由于您已经更改了计算机端设置,因此请确保在目标计算机上运行
gpupdate / force
(或只是重新启动它)。
完成后,您将使指定的非管理用户能够使用
GPMC
的组策略结果向导读取另一台计算机的
RSoP
数据。
执行完这些步骤之后,您已经委派了一个用户(或组,如服务台),并且现在可以
“
扩展
”
并查看其他计算机上的情况,即使这些计算机不是本地管理员也是如此。
。但是,请不要忘记这里的黄金法则:如果目标计算机的防火墙阻止了您的传入请求,即使您现在已经委派了权限,它仍然无法正常工作。
使用事件查看器日志进行高级组策略疑难解答
我们已经探索了一些用于对组策略应用程序进行故障排除的技术。您可以启用一些基础的操作系统故障排除工具,以帮助诊断意外情况发生时到底发生了什么。
Windows
中最容易被忽视和利用不足的工具是事件查看器。客户端的事件查看器记录
组策略的成功和失败应用程序。图
7.25
中可以看到一个这样的事件。
图
7.25
Event Viewer
是一个很好的地方,可以开始对好消息(或坏消息)进行故障排除。
在碰头撞墙之前,请检查客户端的事件日志中是否有相关的组策略记录。
在图
7.25
中,具体的事件
ID
返回信息的
1053
年做在微软的
TechNet
快速搜索错误代码,你可以找到一篇相关的文章,
261007
(
HTTP
:
//
支持
.microsoft.com / KB / 261007
),
W
HICH
显示客户端指向错误的
DNS
服务器。再次,当发现可能存在错误的事件时,请搜索
Microsoft
知识库。您可能会在这里找到一颗隐藏的宝石
–
完全可以解决您的问题。
使用
Windows
系统日志进行故障排除
所有与组策略相关的主要事件都可以在系统日志中找到。
Windows 8
和更高版本的系统会生成具有
GroupPolicy
事件源的组策略事件
(
Microsoft-Windows-Group Policy
)
,如系统登录中所示。
图
7.26
。
但是,请注意,
Windows 7
仅作为
GroupPolicy
生成组策略事件,而括号中没有其他文本。如果您同时拥有
Windows 7
和
Windows 8
或更高版本的系统,这确实会使疑难解答变得更加困难,如图
7.27
所示。您必须知道要查找的事件源。
系统日志旨在为您提供有关组策略引擎状态的高级信息。因此,它将告诉您诸如计算机组策略处理成功还是失败之类的信息,但不一定告诉您发生了什么或为什么。
您可以收集许多事件的详细信息,如图
7.28
所示。
图
7.26
查看带有组策略事件的
Windows 7
系统日志
图
7.27
使用组查看
Windows 8
和更高版本的系统日志
政策事件
图
7.28
查看组策略处理时间
请注意,在图
7.28
中,
ProcessingTimeInMilliseconds
字段显示
1188
毫秒或
0.11
秒。那就是计算机处理花费了多长时间。另请注意,
ProcessingMode
列为
0
。这表明计算机正在以正常处理模式工作,而不是回送处理。如果值为
1
或
2
,则分别表示已启用
“
合并
”
模式或
“
替换
”
模式中的环回。并且,当然,
DCName
字段指示在最后一个周期中哪个域控制器为组策略引擎的组策略处理请求提供服务。
除了通过组策略告诉您什么时候情况良好之外,系统日志还会告诉您什么时候情况不是很好。故障日志还将尝试为您提供一些提示,说明为什么事情不起作用。例如,签出图
7.29
中的事件。
在图
7.29
中,您可以看到故障的性质。此外,如果您单击页面底部的
“
事件日志联机帮助
”
链接,您将被带到一个
Microsoft
网站,其中包含有关此事件
ID
的更多详细信息。好吧,
希望是。并非每个事件
ID
都有其自己的网页链接,但是您可以尝试
检查。
默认情况下,
Windows
中的组策略事件日志记录处于打开状态,因此您无需专门启用任何功能。
您可以使用
GroupPolicy
(对于
Windows 7
)或
GroupPolicy
(
Microsoft-Windows-Group Policy
)
(对于
Windows 8
及更高版本)的源简单地过滤此日志中的事件,并获取
GP
处理的快照。该日志中记录的与组策略相关的事件是每个处理事件的摘要,它们告诉您诸如组策略处理是否成功进行,使用哪个域控制器处理策略以及处理了多少
GPO
之类的信息。它们没有提供深层次的细节。在下一节中,我们将讨论如何从
Windows
的事件日志中获取详细信息。
图
7.29
查看组策略失败事件
在撰写本文时,可以在
https://technet.microsoft.com/zh-cn/library/cc749336
上找到组策略事件日志文档
。
但是它尚未针对
Windows 8.1
以来的大量事件日志条目进行更新。因此,这是您可能会发现的未记录的
Windows 8.1
(及更高版本)系统事件。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
使用组策略操作日志进行故障排除
在上一节中,我们讨论了系统日志。我解释说,它告诉您发生了
什么
,但是
为什么
不是那么好。
组策略操作日志为您提供了一种逐步查看任何组策略
“
周期
”
中发生的情况的方法,并弄清了
什么
原因
不起作用。
要查找组策略操作日志,打开事件查看器,并深入到应用程序和服务日志
➢
微软
➢
视窗
➢
组策略
➢
操作。您将获得一系列类似于图
7.30
中发现的事件。
图
7.30
在
Windows
中查看组策略操作日志
组策略操作日志将提供跟踪组策略问题所需的几乎所有信息。我说
“
差不多
”
是因为有时需要启用一些额外的日志才能获取更多数据。(请参见侧栏
稍后再介绍
“
其他类型的详细日志记录
”
。)
深入潜水故障排除
同样,如果怀疑有问题,请从
Windows
系统日志开始。可能会很好地解释它,并助您一臂之力。
假设系统日志不能帮助您找到问题所在,那么下一步就是我们刚刚讨论过的组策略操作日志。
但是,在给定的处理周期中生成了如此多的事件时,如何使用组策略操作日志来解决问题?例如,给定的组策略处理周期可以生成
20
到
30
个操作日志事件,而操作日志本身可能包含数百个此类事件。目标是缩小
一个
组策略的处理周期,并逐步了解成功或失败所采取的步骤。您可以使用自定义视图(
Crimson Event Log
系统的功能)来完成此任务。
组策略处理周期的每个实例由事件中称为
“
关联活动
ID”
的字段唯一标识。通过创建一个按此活动
ID
过滤事件的自定义视图,您可以仅获得与给定处理周期相关的那些组策略操作事件的列表。让我们逐步了解如何做到这一点。
要通过特定的组策略活动
ID
筛选操作事件日志,请执行以下操作:
1.
启动事件查看器实用程序。
2.
您需要做的第一件事是找到您感兴趣的组策略处理周期的活动
ID
。您可以进入
“
操作日志
”
,找到所涉及周期中的一个事件,然后单击下部预览窗格中的
“
详细信息
”
选项卡,如图
7.31
所示。将该活动
ID
复制到安全的地方
–
我们很快将需要它。
图
7.31
在组策略事件中找到关联活动
ID
3.
在
“
事件查看器
”
的左侧窗格上,右键单击
“
自定义视图
”
节点,然后选择
“
创建自定义视图
”
。
4.
“
创建自定义视图
”
对话框将出现在
“
过滤器
”
窗格上,但是在本练习中,我们将直接输入
XML
过滤器,而不是使用复选框。因此,点击
XML
标签,然后选中
“
手动编辑查询
”
框。
5.
将我在此处写的文本全部复制为一行。为了使书中的格式更好,我将其分解为几行。但是想象一下,这是一条很长的线。在过滤器查询框中输入以下
XML
查询字符串:
<QueryList> <Query Id =“ 0” Path =“ Application”>
<
选择路径
=“ Microsoft-Windows-GroupPolicy / Operational”> * [
系统
/
Correlation / @ ActivityID ='{
插入活动
ID
HERE}’] </ Select> </ Query> </ QueryList>
6.
将您在第
2
步中找到的活动
ID
放在
“
在此处插入活动
ID”
的位置。完成后,单击
“
确定
”
两次,
“
事件查看器
”
的右上角结果窗格将仅显示以下内容的过滤视图:您的组策略事件。
GPLogView
既然我们已经将事件过滤到一个组策略周期中,您可能会对自己说:
“
亲爱的,由于我必须滚动浏览每个事件而又无法查看所有事件,因此很难看到发生了什么出于这个原因,
Microsoft
创建了一个名为
GPLogView
的工具。
使用此命令行实用程序,您可以将组策略操作日志的事件输出为多种易于阅读的格式,包括纯文本和
HTML
。您可以在
http://go.microsoft.com/fwlink/?LinkId=75004
上
下载该工具
。
这是
GPLogView
可以做的事情。您可以使用它来完成与上一个自定义视图描述中相同的操作
–
输出与单个活动
ID
关联的事件。为此,您可以使用以下语法运行
gplogview
命令:
gplogview -a 9A867233-04FF-4625-B7D1-6DEB763E2DCA -o ouput.txt
这将逐步生成所有事件的逐步列表,这些事件的活动
ID
我们已提供给名为
output.txt
的输出文件。图
7.32
显示了输出的一小部分示例。
请注意,它提供了有用的信息,例如在慢速链接检测期间检测到的带宽,到下一个处理周期为止的时间,应用和拒绝了哪些
GPO
以及原因。
此外,如果您查看事件查看器中的实际事件,它们与
GPLogView
的输出中列出的每个事件相对应,您将获得一些更有用的信息。例如,在每个策略处理周期的开始,每个事件的
“
详细信息
”
选项卡下都包含有用的摘要标志,如图
7.33
所示。
您在该图中看到的标志可以使您了解正在发生的处理类型。例如,
isBackgroundProcessing = true
标志指示这是后台处理周期而不是前台处理周期。这很重要,因为某些
CSE
(例如软件安装和文件夹重定向)在后台处理期间不会运行。此摘要视图还提供有用的信息,例如处理是否异步发生(
IsAsyncProcessing
)以及是否正在记录计算机或用户处理(
IsMachine
)。
图
7.32
查看
GPLogView
的输出
图
7.33
查看组策略操作事件的摘要标志
总体而言,在解决
Windows Vista
及更高版本中的组策略问题时,可以使用组策略操作日志。
启用组策略首选项扩展的跟踪
默认情况下,组策略首选项不生成任何直接日志文件。除非您想从中获取更多信息,否则认为它们
“
工作正常
”
。
为此,有许多策略设置可启用跟踪日志。在第
5
章中,我们探讨了对组策略首选项的跟踪,但是为了完整起见,在本疑难解答一章中,我还将引用它们的存在。
您可以在计算机上找到组策略首选项扩展跟踪策略设置
配置
➢
策略
➢
管理模板
➢
系统
➢
组策略
➢
日志和跟踪。
您可以在图
7.34
中看到组策略首选项扩展跟踪选项之一,特别是对于组策略首选项驱动器映射。
有关组策略首选项疑难解答的详细信息,请参阅第
5
章中的
“
疑难解答:报告,日志和跟踪
”
。
图
7.34
您可以使用这种策略设置来对组策略首选项扩展进行故障排除。
|
|
|
有关功能强大的
ADM
模板,请访问
Darren Mar-Elia
的网站
www.GPOguy.com
,
该模板可帮助在客户端计算机上自动执行这些注册表打孔(如果需要)。
组策略处理性能
我经常听到这样一个问题:
“
拥有更少,更大的
GPO
还是拥有更多具有更少设置的
GPO
更好?
”
这个问题的答案是本节的基础。
组策略处理性能的底线是处理组策略所需的时间高度依赖于您在给定的一组
GPO
中所做的工作以及您的环境状态。如果考虑本章讨论过的有关如何存储和处理组策略的所有内容,那么您可能发现过程中存在很多可变性。例如,设置
“
管理模板
”
策略比使用
“
文件安全性
”
策略重新许可大型文件树所花费的时间要少得多。同样,与使用组策略首选项提供
10
个快捷方式相比
,使用
“
软件安装
”
策略安装
Microsoft Office
将花费更多时间。
此外,与周期的
CSE
处理部分相比,组策略处理在核心处理阶段所花费的时间(在该阶段中,客户端与
AD
进行通信以确定要应用哪些
GPO
)通常占整个处理时间的一小部分。因此,与必须执行更多耗时的
CSE
处理相比,必须枚举更多的
GPO
或更少的
GPO
对总处理时间的影响可以忽略不计。同样重要的是要记住,只有在给定计算机或用户的组策略基础结构中发生某些更改时,才进行组策略处理。因此,在大多数环境中,更改
GPO
或创建新的
GPO
可能需要几天的时间。鉴于此,性能问题归结为您的环境中可接受的性能。
要优化处理性能,您可以做的最好的事情就是测量并了解给定处理周期中的时间花在了什么地方。您可以使用本章中提到的许多工具来完成此操作。另外,你可以下载一个名为自由命令行实用程序
gptime.exe
在
https://sdmsoftware.com/gpoguy/free-tools/
库
/
输出花在处理组策略的本地或远程计算机的时间。此外,如果您使用
Windows 8
(和更高版本)的
GPMC
,则组策略结果报告的
“
组件状态
”
部分还可以显示每个组件的单独
处理时间。
除了您已应用到给定用户或计算机的
GPO
数量之外,许多因素可能会影响组策略处理性能。其中一些突出显示在这里:
■
■
保持应用于
GPO
到最低限度的安全组的数目。客户端需要阅读和处理的安全组越多,以确定
GPO
是否适用,则在核心处理阶段花费的时间就越多。
■
■
确保您不会强迫策略应用对于给定的
CSE
(通过启用根据有关政策,使
计算机配置
\
策略
\
管理模板
\
系统
\
组策略
),每刷新周期,除非你绝对必须的过程。
■
■
确保您最大限度地减少
“
昂贵
”
的操作,你的
GPO
做量做。昂贵的操作包括大量用户数据的文件夹重定向,通过网络的大型应用程序的软件安装以及大型文件或注册表树的重新许可。此外,如果脚本脚本可能存在问题
最后的想法
正在执行可能会挂起的复杂任务。组
策略中的默认脚本超时为
10
分钟。这意味着脚本可能会在您的用户等待的情况下最多停留
10
分钟,直到最终超时。
■
■
WMI
过滤器(在第
5
章中讨论)也采取的处理时间一大块弄清楚,如果条件是
“
真
”
还是不行。如果需要,则应使用
WMI
筛选器,但不要过多使用
WMI
筛选器,尽管
WMI
筛选器在
Windows 7
和
Windows XP
上的处理速度更快。
因此,最后,更少,更大的
GPO
的性能是否优于更大,较小的
GPO
的问题可能不是正确的问题。更好的问题是哪种配置更易于管理。回答该问题后,您可以使用本节介绍的技巧来优化性能。
最后的想法
您想成为组策略问题的更好的疑难解答者吗?你进展顺利。
在上一章中,您了解了何时应应用组策略。它不只是在需要的时候发生;它是根据一组精确的时间发生的。在本章中,您学习了另外两个关键项目,以帮助您进行故障排除。首先,您了解了有关幕后情况的真实故事。然后,您学习了如何掌握这些知识并对组策略进行故障排除。希望本章中的每个页面都可以帮助您在出现问题时进一步对组策略进行故障排除。但是,以下是一些对组策略进行故障排除的技巧:
检查基础知识。
故障排除时,请首先检查基础知识。确保在不应该使用的地方不要使用
“
块继承
”
或
“
强制
”
。
检查权限。
用户需要对
GPO
的
“
读取
”
和
“
应用组策略
”
权限。电脑也一样。如果用户(或用户所在的组)被
“
拒绝
”
访问这些权限中的任何一个,则
GPO
将不适用。
利用内置工具。
使用内置的调试工具(例如事件查看器,
GPResult
和
GPMC
结果报告)可以帮助解决问题。
记住哪些操作系统的行为相似。
在进行故障排除时,请记住
Windows Vista
和更高版本基本相同。具体来说,
Windows 10
和
Windows Server 2016
最为相似,
Windows 8.1
和
Windows Server 2012 R2
相似,
Windows 8
和
Windows Server 2012
相似,其次是
Windows 7
和
Server 2008 R2
。然后是
Windows Vista
和
Windows Server2008
。最后,
Windows Server 2003
就像
XP
。
验证复制是否正常。
如果客户端没有获得您认为应该的
GPO
,则可能是正常复制尚未完成。
GPC
通过
Active Directory
复制进行复制。
GPT
通过
FRS
复制进行复制。他们应该走同样的路,但是有时候他们不走。使用
Gpotool
和
Repadmin
以及
GPMC
的
“
状态
”
选项卡进行故障排除。
查看
Microsoft
的故障排除文档。
Microsoft
提供了两个有关组策略疑难解答的正式白皮书。可以在
http://go.microsoft.com/fwlink/?LinkId=14949
上找到一个
。
在
http://tinyurl.com/gp-trouble2
上还有另一个版本
。我
是向此后一文档提供意见的审阅者之一。