组策略命令怎么打开,组策略在哪里打开

组策略是建立Windows安全环境的重要手段,尤其是在Windows域环境下。一个出色的系统管理员,应该能熟练地掌握并应用组策略。在窗口界面下访问组策略用gpedit.msc,命令行下用secedit.exe。

先看secedit命令语法:

secedit /analyze

secedit /configure

secedit /export

secedit /validate

secedit /refreshpolicy

5个命令的功能分别是分析组策略、配置组策略、导出组策略、验证模板语法和更新组策略。其中secedit /refreshpolicy 在XP/2003下被gpupdate代替。这些命令具体的语法自己在命令行下查看就知道了。

与访问注册表只需reg文件不同的是,访问组策略除了要有个模板文件(还是inf),还需要一个安全数据库文件(sdb)。要修改组策略,必须先将模板导入安全数据库,再通过应用安全数据库来刷新组策略。来看个例子:

假设我要将密码长度最小值设置为6,并启用“密码必须符合复杂性要求”,那么先写这么一个模板:

[version]

signature="$CHICAGO$"

[System Access]

MinimumPasswordLength = 6

PasswordComplexity = 1

保存为gp.inf,然后导入:

secedit /configure /db gp.sdb /cfg gp.inf /quiet

这个命令执行完成后,将在当前目录产生一个gp.sdb,它是“中间产品”,你可以删除它。

/quiet参数表示“安静模式”,不产生日志。但根据我的试验,在2000sp4下该参数似乎不起作用,XP下正常。日志总是保存在%windir%\security\logs\scesrv.log。你也可以自己指定日志以便随后删除它。比如:

secedit /configure /db gp.sdb /cfg gp.inf /log gp.log

del gp.*

另外,在导入模板前,还可以先分析语法是否正确:

secedit /validate gp.inf

那么,如何知道具体的语法呢?当然到MSDN里找啦。也有偷懒的办法,因为系统自带了一些安全模板,在%windir%\security\templates目录下。打开这些模板,基本上包含了常用的安全设置语法,一看就懂。

再举个例子——关闭所有的“审核策略”。(它所审核的事件将记录在事件查看器的“安全性”里)。

echo版:

echo [version] >1.inf

echo signature="$CHICAGO$" >>1.inf

echo [Event Audit] >>1.inf

echo AuditSystemEvents=0 >>1.inf

echo AuditObjectAccess=0 >>1.inf

echo AuditPrivilegeUse=0 >>1.inf

echo AuditPolicyChange=0 >>1.inf

echo AuditAccountManage=0 >>1.inf

echo AuditProcessTracking=0 >>1.inf

echo AuditDSAccess=0 >>1.inf

echo AuditAccountLogon=0 >>1.inf

echo AuditLogonEvents=0 >>1.inf

secedit /configure /db 1.sdb /cfg 1.inf /log 1.log /quiet

del 1.*

也许有人会说:组策略不是保存在注册表中吗,为什么不直接修改注册表?因为不是所有的组策略都保存在注册表中。比如“审核策略”就不是。你可以用regsnap比较修改该策略前后注册表的变化。我测试的结果是什么都没有改变。只有“管理模板”这一部分是完全基于注册表的。而且,知道了具体位置,用哪个方法都不复杂。

比如,XP和2003的“本地策略”-》“安全选项”增加了一个“本地帐户的共享和安全模式”策略。XP下默认的设置是“仅来宾”。这就是为什么用管理员帐号连接XP的ipc$仍然只有Guest权限的原因。可以通过导入reg文件修改它为“经典”:

echo Windows Registry Editor Version 5.00 >1.reg

echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] >>1.reg

echo "forceguest"=dword:00000000 >>1.reg

regedit /s 1.reg

del 1.reg

而相应的用inf,应该是:

echo [version] >1.inf

echo signature="$CHICAGO$" >>1.inf

echo [Registry Values] >>1.inf

echo MACHINE\System\CurrentControlSet\Control\Lsa\ForceGuest=4,0 >>1.inf

secedit /configure /db 1.sdb /cfg 1.inf /log 1.log

del 1.*

本文地址:https://www.cknow.cn/archives/31227

以上内容源自互联网,由百科助手整理汇总,其目的在于收集传播生活技巧,行业技能,本网站不对其真实性、可靠性承担任何法律责任。特此声明!

如发现本站文章存在版权问题,烦请提供版权疑问、侵权链接、联系方式等信息发邮件至candieraddenipc92@gmail.com,我们将及时沟通与处理。