zoukankan      html  css  js  c++  java
  • 统一管理Windows 2000域中的服务

    本文出自《网管员世界》2003年第10期“经验技巧”栏目

    我们知道,Windows NT核心的系统默认情况下都打开了很多服务,而这些服务很多都是不必要的,所以我们可以禁用其中的一部分。如果只有一台计算机还好办,要是针对整个Windows 2000域来说,如果要一台一台地禁用,那就是一件累人的事了。这时大家肯定都想找一种“简便方法”。对于Windows 2000域来说,最简便的事莫过于使用组策略了,但现在的组策略版本并没有关于这方面的设置,所以一种方法就是我们自己编写一个管理模板文件来分发策略。但自己编写管理模板并不简单,而且容易出错,所以我们可以通过另外一种方法—因为服务的开启或禁用其实都是由注册表中的值控制的—我们可以通过域的登录脚本分发相关的注册表文件来达到目的。

    编辑提示:服务在注册表中的位置

    服务的设置位于注册表的HKLM\SYSTEM\Current-ControlSet\Service下。但它下面并非都是服务项,还有设备驱动程序项等等,到底哪些是服务项呢?这个你可以根据“计算机管理”工具中服务的名称来辨别:打开某个服务的属性窗口时,在常规标签上显示的名称就是该服务的正式名称(如图1),

    图1
    服务在注册表中的条目就是这个名字(如图2)。在这里还可以看出,“计算机管理”工具中服务的启动类型与注册表中“start”项的值相对应。对应关系如下:“自动”值为2,“手动”值为3,“已禁用”值为4。如果start项值为0或1,就表明对应的是设备驱动程序,其中0对应最底层的设备驱动。

    图2

    在域中分发一个reg文件以禁用部分服务

    有了上面的知识,下面我们就来看看禁用域中部分服务的基本步骤,至于该禁用哪些服务,这就应该根据自己的网络情况来决定了。如果你还不清楚该调整哪些服务,可以先去看看以前《网管员世界》杂志上的相关文章。
    第一步:新建一个.reg文件。对于这个reg文件,你可以手动编写,也可以先导出一个reg文件再进行编辑。由于禁用的项并非占大多数,所以建议自己手动编写这个reg文件。编写好这个文件后,把它拷贝到域控制器的netlogon共享目录下。图3是reg文件的一个简单示例,从图中可以看出禁用了四个服务:clipsrv,dfs,fax,scardsvr。因为我把它们的启动类型值设为了4(“start”=dword:00000004)。编写reg文件时要注意它的格式,如果你对reg文件了解不深,可以先到网上去搜一搜相关内容(如图3)。
     
    图3
    第二步:在域控制器的netlogon共享目录下新建一个logon.bat登录脚本文件,这个脚本包含下面一行:
    regedit /s \\192.168.0.88\netlogon\1.reg
    /s参数表示导入注册表文件不给出提示,后面的\\192.168.0.88\netlogon\1.reg是第一步创建的注册表文件在域控制器上的UNC路径。
    第三步:在域组策略的编辑界面中添加logon.bat为登录脚本,选择路径时请用UNC路径。
    需要注意的是:在用户配置的登录脚本中添加,不是在计算机配置的启动脚本添加,因为启动脚本可能不会正常执行。
    就这样,当客户端登录域时就会执行这个登录脚本,从而实现了统一禁用域中不必要的服务项。不过这种方式还是有两个缺点,第一就是这个脚本不能辨别客户端的操作系统版本,因为Windows XP系统的服务比Windows 2000系统的服务更多,所以针对它们的注册表文件有可能不一样,但脚本却不能进行辨别。第二就是如果不删除脚本,它每次都会执行,也就是它不能判断注册表设置是否已经修改过了。要解决这两个问题,可以采用本期介绍的RemoteExec工具来分发注册表文件,它由相关过滤条件来解决这两个问题。

  • 相关阅读:
    spring mvc 总结
    linux安装tomcat及优化
    mysql支持emoji表情
    面试问题
    linux安装jdk mysql
    webstorm 介绍
    spring 总结
    UML工具
    js bom dom
    awt多线程聊天
  • 原文地址:https://www.cnblogs.com/todd/p/104722.html
Copyright © 2011-2022 走看看