本实例通过编写批处理脚本,将控制U盘的键值更改为系统服务,来达到针对性的将域中所有用户进行移动储存设备(U盘)部署控制。
  技术要点
   实例是通过reg命令修改或增加注册表USBSTOR子项中的值来达到控制效果,但由于用户没有直接修改注册表的权限,因此使用psexec命令文件更改运行时的权限变更,battoexe程序将批处理文件转换为可执行文件,便可解决批处理文件当中涉及到的管理员密码问题,以上方法已在200台电脑的域中测试成功。
  
  命令格式说明
   Psexec \127.0.0.1 -u 域名管理员账号 -p 密码 执行命令
   psexec是一个远程执行工具(在www.sysinternals.com网站有提供下载),本例中用它来实现在本机上切换为管理员的身份来运行批处理文件,虽然系统自带的Runas命令可以切换身份运行程序,但每次需要手动输入密码,致使不能实现批处理的工作。
   Reg add /?由于命令自带的帮助很详细帮在此不列举
   Reg命令是一个注册表编辑命令,本例中用它来添加USBSTOR子项中新建五个键:Start键控制着U盘的开关、Type键修改此键值可更改其运行的类型、ImagePath键、ErrorControl键、DisplayName键是显示名称(将Type键更改为系统服务类型后,在服务窗口会看到由显示名称的一条服务)。以上五个键是计算机在检测到新的U盘后新建的五个子键,由于部分计算机可能没有使用过U盘,所以需手动建立。
   Battoexe 批处理文件名
   Battoexe命令作用是将BAT文件转换为COM文件,因为批处理文件中涉及到管理员的密码,而组策略执行的路径是共享给用户的,所以需要用此命令转化为EXE文件来防止管理员密码的泄露。
  使用工具:Psexec.exe(Pstools中包含)、reg.exe(Windows XP系统自带,Windows 2000没有)、BATtoEXE.exe
  
  实现过程
   新建一个文件夹并进入,将本例中所需的文件拷入其中。
  1.新建三个批处理文件
   打开记事本写入以下命令后,另存为CloseU.bat文件。
  @echo off
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEMCurrent ControlSet ServicesUSBSTOR/v Start /t REG_DWORD /d 4 /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v DisplayName /t REG_SZ /d USB Mass Storage Driver /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v Type /t REG_ DWORD /d 16 /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v ImagePath /t REG_ EXPAND_SZ /d system32 DRIVERSUSBSTOR.SYS /f
   psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServices USBSTOR /v ErrorControl /t REG_DWORD /d 1 /f
   打开记事本,写入以下命令,后另存为CpenU.bat文件。
  @echo off
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v Start /t REG_DWORD /d 3 /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v DisplayName /t REG_SZ /d USB Mass Storage Driver /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEMCurrent ControlSetServicesUSBSTOR /v Type /t REG_DWORD /d 1 /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServicesUSBSTOR /v ImagePath /t REG_ EXPAND_SZ /d system32 DRIVERSUSBSTOR.SYS /f
    psexec \127.0.0.1 -u chinaadministrator -p china123 reg add HKLMSYSTEM CurrentControlSetServices USBSTOR /v ErrorControl /t REG_DWORD /d 1 /f
   打开记事本,写入以下命令,另存为Bat2exe.bat文件。
  Battoexe OpenU.bat
  Battoexe CloseU.bat
  2.执行bat2exe.bat,在目录将新建两个可执行文件,分别是OpenU.com和CloseU.com。
  
  注:我使用域为China,管理员账号Administrator,密码China123(只需将域名、账号、密码更改)。
  
  3.在域控制器上打开
   (1)点击“开始→程序→管理工具→Active Directory 用户和计算机”,在域名处右击,选择“属性→组策略选项卡”。
   (2)新建组策略(命名为“禁U盘”),双击打开禁U盘组策略,点击“用户配置→Windows设置→脚本(登录/注销)→登录(打开登录窗口)→添加→浏览”,打开Logon(将closeU.com、reg.exe、psexec.exe三个文件复制到这里),选择closeU.exe,单击确定将批处理文件添加至登录脚本中。保存后关闭组策略
   以下部分将创建一个新的OU并新增一个组策略。
   (3)点击“开始→程序→管理工具→Active Directory 用户和计算机”,在域名处右击打开“新建组织单元”选项,命名为OpenU。
   (4)在OpenU处右击,选择“属性→组策略选项卡→新建组策略(命名为“开U盘”)”,双击打开U盘组策略,选择“用户配置→Windows设置→脚本(登录/注销)→登录(打开登录窗口)→添加→浏览”,打开logon(将 OpenU.com、reg.exe、psexec.exe三个文件复制到这里),选择OpenU.exe,单击“确定”将批处理文件添加至登录脚本中,保存关闭组策略。
   通过以上设置,除OpenU的OU中用户开通使用权限外,其他用户默认都为禁止