★Windows XP SP2防火墙的工作原理
对于只使用浏览、电子邮件等系统自带的网络应用程序,Windows防火墙根本不会产生影响。也就是说,用IE、OutlookExpress等系统自带的程序进行网络连接,防火墙是默认不干预的。微软在设置防火墙内置规则时,已经为自家的应用程序开了“绿色通道”,所以装上SP2后,即使打开其防火墙并且启用“不允许例外”,无需将IE加到“例外”就能上网,而防火墙也不会询问是否要允许IE通过。
★SP2防火墙与第三方防火墙软件的区别
仅就防火墙功能而言,Windows防火墙只阻截所有传入的未经请求的流量,对主动请求传出的流量不作理会。而第三方病毒防火墙软件一般都会对两个方向的访问进行监控和审核,这一点是它们之间最大的区别。如果入侵已经发生或间谍软件已经安装,并主动连接到外部网络,那么Windows防火墙是束手无策的。不过由于攻击多来自外部,而且如果间谍软件偷偷自动开放端口来让外部请求连接,那么Windows防火墙会立刻阻断连接并弹出安全警告,所以普通用户不必太过担心这点。这就好像宾馆里的房门一样——外面的人要进入必须用钥匙开门,而屋里的人要出门,只要拉一下门把手就可以了。
实战1:天网防火墙和Windows防火墙的不同
我们用两种软件来分别对QQGame的网络请求进行监控。
第一步:确认不要将QQGame这个程序添加到各自的“例外”规则中,然后登录QQ游戏大厅;
第二步:这时你会发现,天网个人防火墙立即阻止QQ游戏的网络访问,然后询问是否给予通行(见图1);
第三步:而Windows防火墙对这个主动出站的请求不做任何处理,就好像没有防火墙一样,输入帐户信息后登录到游戏平台,QQGame实际上已经完成了往外网络访问;这时需要将游戏信息下载到本地(就是有外部访问请求),防火墙就弹出了“Windows 安全警报”(见图2)。
小提示
取消“Windows 安全警报”的方法:打开防火墙设置后,在“例外”选项卡中取消选择“Windows防火墙阻止程序时通知我”即可。
实战2:让XP SP2正确识别UPnP(通用即插即用)
战前分析:BitComet以其拥有内网互联(NAT Traversal)技术,而且支持UPnP的NAT和Windows XP防火墙,让内网的朋友在进行BT下载时可以获得相当快的下载速度。但自从升级到SP2并启用了Windows防火墙后,BitComet软件速度变得很慢!这是由于防火墙没有设置好,使得系统没能正确识别UPnP设备。
第一步:Windows XP默认是支持UPnP的,如果在“例外”看不到这个选项,则说明没有安装UPnP设备支持。打开“网上邻居”窗口,在其左侧的工具栏中点击“显示联网的UPnP设备的图标”,如果UPnP设备文件没有安装或安装不正确,系统就会自动安装(见图3);
第二步:在“控制面板”中打开防火墙并启动,确认不勾选“不允许例外”这个选项;当打开BitComet后,Windows防火墙有可能会提示你是否要阻止该程序,选择“解除阻止”;
第三步:点击“例外”选项卡,勾选“UPnP框架”即可。
实战3:给远程管理开个通行证
战前分析:当通过MMC控制台中的Computer Management(计算机管理)、Disk Management(磁盘管理)等组件远程管理程序来管理局域网上的其他计算机,计算机必须开放TCP 445端口。如果在远程操作已经安装XP SP2并开启了防火墙的计算机时,就得手动打开这个TCP端口。
第一步:打开防火墙设置窗口,切换到“例外”选项卡,勾选“文件和打印机共享”
第二步:单击“编辑”按钮,在打开的“编辑服务”窗口中选中“TCP 445”,单击更改范围,勾选“仅我的网络”或者勾选“自定义列表”并输入要控制的计算机的IP地址(见图4)。
小提示
上列步骤可以用命令代替,即在命令提示符窗口中输入“netsh firewall set portopening TCP 445 TCP445 ENABLE”(不包括引号)。
实战4:彻底搞定“远程桌面”连接
战前分析:通过Windows XP SP2防火墙实现远程协作的方法很简单,远程协作使用的是动态端口。在防火墙设置对话框中的“例外”选项卡上“程序和服务”列表中选择“远程协作”项目,这样Windows将自动监视并正确处理来自sessmgr.exe应用程序的所有通讯请求完成连接。Windows NetMeeting的远程桌面要复杂一些,尽管在例外选项卡中有“远程桌面”选项,但是如果你选择这个选项,实际是开放了TCP的端口3389,也可能无法完成远程桌面连接。
方法:在Windows防火墙打开的情况下,在可以使用Windows NetMeeting的远程桌面共享功能之前,必须向Windows防火墙的“例外”选项卡上“程序和服务”列表中分别为Windows NetMeeting和%systemroot% System32Mnmsrvc.exe文件和C:Program FilesNetMeetingconf.exe文件分别添加一个条目即可。
实战5:只让内网来“Ping”我!
战前分析:在默认情况下XP SP2防火墙不允许ICMP入站数据进入,也就不会回复ICMP返回数据,这样可以防止检查网络故障常用的命令工具“Ping”来探测你的计算机,不过这样对于一些启用了共享上网的用户,内网就无法用Ping来检查自己的网络情况了。
方法一:按照实战2的方法,分别将“文件和打印机共享”中所打开的TCP端口适用于子网即可。
方法二:打开Windows 防火墙,切换到“高级”选项卡,双击与内网连接的那个“本地连接”,切换到“ICMP”选项卡,勾选“允许传入的回显请求”,确认所有操作即可(见图5)。
ICMP协议
ICMP是“Internet Control Message Protocol”(Internet控制消息协议)的缩写,它是TCP/IP协议簇中的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息,这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。我们在网络中经常会使用到ICMP协议,只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令实际上就是ICMP协议工作的过程,还有诸如跟踪路由的Tracert命令也是基于ICMP协议的。