易用性 Microsoft也通过服务来实现Windows的易用性,比如XP的统一界面、Plug and Play 自动硬件识别和安装、无线网络的自动配置(Wireless Zero Configuration服务)等。Windows Audio 服务管理基于Windows程序的音频设备;Shell Hardware Detection服务可以让Windows在插入CD或DVD光盘时自动识别里面的内容并启动相应的软件进行播放;Task Scheduler服务则允许你在计算机上配置和制定自动任务的日程;而Logical Disk Manager服务会监测和监视新硬盘驱动器并向逻辑磁盘管理器管理服务发送卷的信息以便配置。
如何优化 不必要的后台服务占用了宝贵的系统资源,并给你的电脑带来了安全风险,关掉它们可以让电脑运行得更快、更安全。对于一般用户而言,Windows服务显得相当复杂,但只要遵循一定的优化规则,你也完全可以轻松地完成这项工作。首先关闭所有你不需要的服务,然后保证必要的服务都处于正常启动状态。要注意的是:当你对Windows服务进行重新配置时,你是在对操作系统的核心进行操作,所以要特别小心。在做任何改动之前,你都要对重要的数据进行备份,最好能够对系统分区进行一次完整地备份(比如用ghost程序)。如果你不想亲自完成这项优化工作,也有个偷懒的办法,那就是利用我们后面将要讨论的脚本自动进行优化。
禁用哪些服务 如果你的Windows XP还没有升级到SP2,首先你可以禁用Messenger服务和Alerter服务,这两项服务原先是为管理员发布消息和错误警报而设计的,实际上很少被用到(尤其是对于家庭用户就更是没用了),反而会被垃圾信息发送者和黑客滥用。如果你经常收到弹出的消息窗口向你推销某种商品,那正是Messenger服务惹的祸。关闭服务的方法是依次打开“控制面板” “管理工具” “服务”,双击某个想要关闭的服务或者选中某个服务后按右键选择“属性”,然后在服务的属性窗口中将它的启动类型改为“已禁用”,这样在下次电脑启动后它们就不会被自动启动了。如果你的Windows XP已经升级到SP2,这两个服务是会被自动禁用的,不过你最好检查一下,如果没有禁用的话就将它们禁用。
接下去可以考虑禁用的服务是Error Reporting Service,它会搜集来自其他服务和应用程序的错误消息。如果你经常碰到系统崩溃,会很熟悉它弹出的错误报告窗口,它允许你把错误发送给Microsoft公司,但实际上多数人都不会选择这样做,所以还是关掉它吧。
Remote Registry服务顾名思义是用于远程操作注册表的,你真的需要进行这种具有相当风险的操作吗?如果没有的话,那还是将它禁用吧。
Task Scheduler服务允许你在计算机上配置和制定自动任务的日程,但并不是所有人都习惯这样安排任务,如果你不想自动对系统进行备份,那就关闭它。你也不必担心你的杀毒软件不能正常自动更新,因为杀毒软件的任务安排通常不是由Task Scheduler服务控制的。
Telnet服务最好也关掉,这项协议会在网络传输中使用明码传递ID和密码,因此很不安全,所以还是关掉为好。
如果有疑问 如果你无法确定某个自动启动的服务是否需要,最好不要将其禁用。在这种情况下,把它们的启动状态改为“手动”是个最好的选择。
还要注意一点,很多服务之间存在着依存关系。比如,如果关闭Remote Procedure Call服务,Task Scheduler服务就无法工作。依次打开“控制面板” “管理工具” “服务”,双击某个想要关闭的服务或者选中某个服务后按右键选择“属性”,在属性窗口中选择“依存关系”选项卡,就可以看到某项服务依赖于哪些其他的服务(如图7所示)。
如果有疑问 如果你无法确定某个自动启动的服务是否需要,最好不要将其禁用。在这种情况下,把它们的启动状态改为“手动”是个最好的选择。
还要注意一点,很多服务之间存在着依存关系。比如,如果关闭Remote Procedure Call服务,Task Scheduler服务就无法工作。依次打开“控制面板” “管理工具” “服务”,双击某个想要关闭的服务或者选中某个服务后按右键选择“属性”,在属性窗口中选择“依存关系”选项卡,就可以看到某项服务依赖于哪些其他的服务(如图7所示)。
是否禁用那些易用性服务,你可以根据自己的情况而定,如果你宁愿自己手动去检查和安装Windows补丁,那就可以将Automatic Updates服务关闭。如果你喜欢使用第三方的防火墙,可以将Security Center服务关闭。如果你并不使用无线连接,则可以将Wireless Zero Configuration服务关闭。
必需启动的服务 表格中的带“○”标记的条目表示这些服务如果不被其他服务所依赖的话,也可以将其禁用。禁用这些服务可能会使Windows XP的某些功能无法使用,比如如果禁用Cryptographic Services,就无法支持带有签名的程序,也无法使用安全证书。
如果你特别执着地想知道哪些服务可以被关闭,可以关闭某项服务,然后观察关闭前后Windows XP系统是否能够正常运行,如果一切正常,那就可以将其禁用。试验时比较好的做法是不要将服务禁用,而是把它们的启动状态改为“手动”。我们曾经尝试在一台机器上关闭了所有的服务,只保留了Remote Procedure Call服务。我们发现,操作系统还可以正常启动,你也可以把它当作打字机使用,但其他功能基本上无法使用,操作系统会弹出无数的窗口告诉你没有操作的权限。
安全服务 即便你按照上述的步骤对Windows XP服务进行了“瘦身”,但使用Netstat和Nmap扫描时你仍然会发现三个对外开放的服务:Epmap(端口135)、Microsoft-ds(端口445)和Netbios-ssn(端口139),这三项服务都和网络有关。毕竟我们对Windows XP服务进行“瘦身”并不是为了彻底切断与网络的联系。
Windows XP在默认状态下会打开Netbios和SMB(Server Message Block,服务器信息块),这些协议用于用户共享文件、磁盘、目录和打印机。如果你不需要它们,可以用后面讨论的办法关闭它们。先来看看如何关闭Netbios,打开“控制面板” “网络连接”中的网卡设置窗口,进入TCP/IP设置项的高级设置窗口,在WINS选项卡中选择“禁用TCP/IP上的NetBIOS”,这样一来就可以去掉Netbios-ssn服务(如图8所示)。
再来看Endpoint Mapper,它是由DCOM控制的。依次选择“开始” “运行”,然后运行dcomcnfg.exe,在窗口左边依次选择“组件服务” “计算机” “我的电脑”,然后按鼠标右键并在上下文菜单中选择“属性” “默认属性”,取消选择“在此计算机上启用分布式COM (E)”,然后在“默认协议”选项卡中删除所有的协议。这样重新启动之后,你会发现Epmap也不见了。
如果想彻底关闭SMB服务,你需要在注册表中创建一个新的值HKEY_Local_Machine\SYSTEM\CurrentControlSet\Services\NetBT\Paramters\SMBDeviceEnabled,将此值设置为0。
使用自动脚本 如果不想自己一项项地去调整各项服务,可以考虑一下使用预定义好的脚本程序。这里介绍的脚本来自www.ntsvcfg.de,这是一家专注于优化Windows安全配置的德国网站。你需要下载的脚本程序是http://www.ntsvcfg.de/svc2kxp.cmd。下载之后双击该文件即可,它会打开一个Windows命令行窗口(如图9所示),列出了4个服务配置选项:LAN、Standard、ALL、Restore。你可以按数字键进行选择,LAN适用于需要使用局域网的机器,Standard适用于带有Internet连接但没有局域网的独立机器,ALL则使用了该网站讨论的最为激进的优化方案。其中的Standard比较符合本文推荐的优化方案,这个脚本会将Security Accounts Manager、TCP/IP NetBIOS Helper和Windows Management Instrumentation的运行状态改为“手动”。如果你对修改后的效果不满意,可以选择Restore恢复之前的设置。除了不能关闭Netbios之外,这个脚本的自动化程度非常不错。由于该脚本使用了sc.exe来启动和终止服务,如果你的机器上没有sc.exe,可以到http://www.dynawell.com/reskit/microsoft/win2000/sc.zip下载并解压到Windows/System32下即可。
更进一步的考虑 如果想要防止黑客入侵,仅仅对Windows服务进行优化是不够的。你仍然需要安装Internet防火墙和防病毒软件,经常更新你的操作系统和应用软件。升级到Windows XP SP2是个好主意,它内置了防火墙,安全性有了不小的进步。如果你对Internet Explorer和Outlook Express并不是非常依赖的话,可以考虑使用其他的网络浏览工具和e-mail客户端,比如基于Mozilla的Firefox和Thunderbird,国产的邮件客户端Foxmail也非常不错,这些软件都可以免费获得。它们通常要比Microsoft的产品更安全,原因很简单,黑客会把注意力集中于最流行的软件。
进行日常工作时使用普通帐户而不是管理员帐户登录是个很好的习惯,不过Microsoft和很多应用软件开发商的疏忽给这种使用习惯带来了不小的障碍,很多厂商只是在管理员权限下对产品功能进行测试,因此普通帐户往往需要扩展权限才能正常工作。
重要的Windows XP服务 ● Workstation:创建和维护到远程服务的客户端网络连接。如果你想要访问Internet或者局域网,就必须启动该服务
● Computer Browser:维护网络上计算机的更新列表,它还管理文件和打印机共享信息。
● Print Spooler:管理本地或网络共享的打印机。
● Protected Storage:提供对敏感数据(如私钥)的保护性存储,以便防止未授权的服务或用户对其的非法访问。
● Cryptographic Services:它确定Windows文件的签字、受保护的根服务,添加和删除受信根证书机构的证书和密钥服务,帮助计算机获取证书。
● Messenger:传输客户端和服务器之间的 NET SEND 和 Alerter 服务消息,此服务与 Windows Messenger 无关。如果服务停止,Alerter 消息不会被传输。经常被垃圾信息发送者滥用,最好将其禁用。
● Plug and Play:使计算机在极少或没有用户输入的情况下能识别并适应硬件的更改,终止或禁用此服务会造成系统不稳定。
● Remote Procedure Call (RPC):因冲击波(Worm.Blaster)病毒的发作而鼎鼎大名,但却是Windows必需的通信服务(图6)。
● System Restore Service:Windows用它来备份系统文件以便需要时进行恢复。
● Alerter:通知所选用户和计算机有关系统管理级警报,容易被攻击者滥用,最好将其关闭。
重要的服务管理工具 ● 服务控制器:Windows XP Resource Kit中自带的命令行软件sc.exe可以用来对配置Windows服务并能提供很多有用的背景知识。
● Netstat:这条Windows XP自带的命令能够显示当前所有被激活的网络连接。
● TCPview:与Windows XP自带的Netstat功能类似,但提供了图形化的界面(www.sysinternals.com)。
● Nmap:带有丰富的安全设置分析工具和端口扫描器的安全分析软件(www.insecure.org)。
● SuperScan:适用于Windows平台的端口扫描器,易于使用(http://www.foundstone.com/resources/freetools.htm)。
● Languard:带有强大分析功能的安全分析和网络监测工具,30天内可试用(www.gfi.com/languard)。
● Portqry:来自Microsoft的免费端口扫描工具(http://support.microsoft.com/default.aspx?scid=kb;zh-cn;310099)。