为了提高安全性和易用性,
Win XP
不仅改进了许多原有的
GUI
工具和命令行工具,同时还增加了一些新的工具,而且这些工具不再通过
Resource Kit(
资源工具包
)
发布,而是直接把最有用的工具作为
Support Tools
包装到了
OS
软件包,放在安装
CD
的
Support\Tools
目录下。如果你打算深入、全面地管理
XP
,这些工具能够帮你完成日常的监视、管理任务,加固
Win XP
的安全。
一、获得系统信息
知己知彼,百战不殆,这句话表明了要想百战不殆,一个重要的前提就是
“
知己
”
。以前,你需要运行一大堆工具才能获知操作系统已经安装了哪些
Service Pack
、
Hotfix
以及系统的网络配置。
Win XP
新增了一个命令行工具
Systeminfo(Systeminfo.exe)
,帮你轻而易举地完成这些工作。
Systeminfo
通过
WMI(Windows
管理规范
)API
列举出系统配置信息,输出信息按照
OS
、硬件平台、安装配置、已安装的补丁分门别类,一目了然。
是不带任何命令行参数运行
Systeminfo
的结果片断,如果要诊断远程机器,只要加上一个
“/s <
远程机器名字
>”
参数。另外,
Systeminfo
还允许通过
“/u <
用户名字
>”
和
“/p <
密码
>”
参数指定运行
Systeminfo
的用户身份,如果只提供用户名字但省略密码,
Systeminfo
将提示输入密码,输入密码时屏幕上不会有回显
――
如果旁边有人看着你运行
Systeminfo
,这个功能让你无所顾忌。
另一个检测系统配置的实用工具是
Spcheck(Spcheck.exe)
,用于检测
Service Pack
级的组件信息,以前这个工具只通过
Product Support Service(PSS)
提供,但现在加入到了
Support Tools
。
Spcheck
要用到一个数据文件
spcheck.ini
,这个文件包含了各个网络组件的每一个文件的信息,鉴于操作系统需要不断更新,所以
spcheck.ini
不随
XP
一起提供,而是通过网络发布,
[url]http://support.microsoft.com/default.aspx?scid=kb;en-us;q279631[/url]
页面提供了针对
Win XP/2K/NT 4
和
Exchange Server 5.5
等的各个
spcheck.ini
版本的链接。
下载
spcheck.ini
的
XP
版本,把它保存到安装
Support Tools
的目录,解开压缩,然后运行
spcheck
。
spcheck
将生成报告文件
spcheck.rpt――
其实这是一个文本文件,可以用记事本打开,图二显示了
spcheck.rpt
文件的一个片断。
二、监视系统
说到监视系统状态,人们最熟知的就是按
Ctrl+Alt+Del
弹出的
“
任务管理器
”
。不过任务管理器的功能有限,如果要了解哪个进程启动了子进程,或者有哪些进程服务在运行,你可能会想到
tlist.exe
命令行工具。
不过
XP
没有提供
tlist.exe
,代之以另一个工具
Tasklist(Tasklist.exe)
。
Tasklist
是针对
XP
多用户环境开发的,能够报告每一个正在运行进程的会话信息,但和
tlist.exe
不同的是,
Tasklist
不会列出父进程的每一个子进程
(
但愿以后的版本会增加这个非常实用的功能
)
。
Tasklist
能够查询远程系统,用
/v
参数可得到详细信息
(
包括窗口标题、用户名字
)
。如图三所示,用
/m
参数可以显示出装入某个
DLL
的进程
――
如果你怀疑某个
DLL
实际上是一个木马程序,这一功能非常有用。
当网络防火墙
/
路由器的通信指示灯开始狂闪,在以前的
Windows
上,我用
Netstat
工具
(netstat.exe)
查找哪些
TCP
或
UDP
端点正在使用我的系统,然后大致地判断应该是哪个或哪些进程正在发送或接收数据,但如果要精确地判断端点和进程的从属关系就必须使用第三方工具。
在
XP
中,
Netstat
命令的功能已经改进,能够显示出哪些进程正在使用端点。只要加上
/o
参数,
Netstat
会在端点之后显示出进程
ID
,如图四所示。如果使用
/a
参数,
Netstat
能够显示出所有端点
――
不管是活动状态的,还是监听状态的。
有时监视每一个进程打开了哪些文件也是非常有用的。在以前的
Windows
中,我们可以安装资源工具包的
oh.exe
。但在
XP
中,虽然
Support Tools
的帮助文件提到了
oh.exe
,安装好的
Support Tools
却不带
oh.exe
。但是,
XP
提供了一个新的
Openfiles
命令行工具
(Openfiles.exe)
,它能够报告进程打开的各个文件。和
oh.exe
相似,
Openfiles
也要求打开系统内核监视,而这会消耗一些内存,降低文件、打印、邮件、数据库等操作的性能。打开系统监视的命令是
openfiles /local on
,它会启用系统全局标志
“
维护对象列表
”
,需要重新启动系统才能生效
(
你可以执行
gflags.exe
查看
Openfiles
命令设置了哪些标志
)
。
重新启动系统后,不带参数执行
Openfiles
就可以看到一个进程清单以及各个进程打开的文件
(
包括共享文件
)
,图五就是
Openfiles
执行结果的一个片断。如果要查看哪个用户正在运行打开文件的进程,执行
openfiles /query /v
,如图六。
图五
图六
Openfiles
还有其他一些命令行参数,主要用来控制输出格式,另外还可以用
Openfiles
来监视远程系统打开的文件,前提是远程系统必须启用监视功能。
就监视系统状态而言,事件日志属于最难的部分。在运行了大量应用软件或者启用了安全审计的系统上,审计
/
事件信息可能很快达到数兆之多,要在如此庞大的事件信息库中寻找特定的事件纪录是相当困难的
――
至少是相当耗时的。
XP
新增了一个
Eventtriggers
工具
(eventtriggers.exe)
,能够在事件日志中发生任意事件时执行指定的命令。假设当有人试图登录系统但验证身份失败时,我们想要执行
C:\Admin\InvalidLogon.cmd
脚本,可设置如下:
eventtriggers /create /l security /eid 529 /tr“
登录失败
”/tk c:\admin\InvalidLogon.cmd /ru:administrator
。
InvalidLogon.cmd
脚本将在本地系统管理员的身份下运行。系统将要求为
/ru
参数指定的用户输入密码。如果不指定运行
InvalidLogon.cmd
脚本的用户,系统默认使用
“Local System”
,但使用
Local System
可能导致某些命令无法执行,所以本人的建议是最好指定一个具有适当权限的用户。经试验发现,从事件出现到触发
/
运行指定的命令之间会有约
60
秒的延迟。就象许多其他
XP
新增的工具一样,
eventtriggers
也能够操作远程的
XP
系统。
三、监视网络
如果你曾经排解过服务器
/
客户机之间的通信问题,可能已经熟悉网络监视工具
Netmon.exe
,不过这个工具是随着服务器操作系统提供的。
XP
的
Support Tools
有一个
Netcap
工具
(netcap.exe)
,它和
Netmon.exe
一样也能够捕获网络通信。第一次运行
Netcap
时它会提示说正在安装网络监视驱动程序。
Netcap
能够读取
Netmon 2.0
以上版本创建的筛选文件,
Netmon
也能够读取
Netcap
捕获的数据。
在网络上运行
IP Security(IPSec)
的用户都知道,
Ipsecmon
是一个监视
IPSec
组件的实用工具。奇怪的是,
XP
并没有提供这个工具,不过不必担心,在
XP
中
Ipsecmon
已被一个称为
“IP
安全监视器
”
的
MMC
管理单元替代,后者的监视功能进一步加强,而且兼具监视本地
/
远程系统的能力。
选择菜单
“
文件
”
→
“
添加
/
删除管理单元
”
,点击
“
添加
”
打开
“
添加独立管理单元
”
对话框,从管理单元清单中找到并选中
“IP
安全监视器
”
,点击
“
添加
”
,再在
“
添加
/
删除管理单元
”
对话框中点击
“
确定
”
返回
MMC
控制台,如图七。本地机器的节点包含两个子节点:主模式,快速模式。两种模式分别对应
IPSec
协商过程的第一、二两个阶段。
图七
四、管理系统
在以前的
Windows
中,使用
Support Tools
中的
kill.exe
工具可以关闭一个进程。
XP
把
kill.exe
换成了
taskkill.exe
,增加了关闭远程系统上进程的能力,能够根据进程名称、窗口标题关闭进程,能够关闭子进程,甚至能够根据一组指定的条件关闭一系列进程,允许定义的条件包括:进程状态,内存使用情况,
CPU
使用情况,装入的
DLL
,用户名字,服务名字。
从最早的
NT 3.1
开始,
Windows
就能够注销连接到共享资源的用户或关闭用户打开的文件。在
XP
中,你可以要求操作系统关闭本地或远程用户打开的文件。例如,如果要关闭文件,只要执行
Openfiles
命令时加上
/disconnect
参数。就象
tasklist.exe
一样,
Openfiles
允许指定用户名字、文件名字和打开模式等条件。
利用
Logoff
命令行工具
(logoff.exe)
能够强行注销
XP
上的用户。虽然早期的
Windows
版本也提供了
Logoff
命令,但它们只能注销远程登录到服务器的用户
;
在
XP
中,
Logoff
命令能够注销控制台用户了。
总地看来,本文介绍的安全管理工具是人们长久以来盼望
Windows
提供的工具。虽然说操作系统的易用性在不断提高,但从另一方面理解,操作系统正变得越来越复杂
――
当你要穿过易用的界面深入掌握、控制
Windows
时,不得不运用大量的工具,即使你是一个普通的爱好者而不是专职管理员也一样。本文介绍的许多工具是从原来的资源工具包转移到安装操作系统
CD
,这本身就说明现在该是我们掌握这些工具的时候了。