标题：windows防火墙
简介
防火墙(英文：firewall)是一项协助确保信息安全的设备，会依照特定的规则，允许或是限制传输的数据通过。防火墙可以是一台专属的硬件也可以是架设在一般硬件上的一套软件。Windows防火墙顾名思义就是在Windows操作系统中系统自带的软件防火墙。
防火墙对于每一个电脑用户的重要性不言而喻，尤其是在当前网络威胁泛滥的环境下，通过专业可靠的工具来帮助自己保护电脑信息安全十分重要。市场上杀毒软件的品牌繁多但并非每一款都为用户提供了防火墙功能，于是很多网友是安装了杀毒软件又还要找一款专业的防火墙，这有点舍近求远的感觉，因为Windows操作系统就有自带的防火墙。
WIN7
Windows 7 防火墙
简洁易用的启动方式
Windows 7操作系统发布已经一周年，其美观性和易用性广泛受到用户的好评，在系统安全性方面Windows 7也作出了很多的改进包括UAC和防火墙功能，Win7自带的防火墙与老版Windows系统的防火墙功能相比功能更实用，且操作更简单。如防火墙的启动，我们只需从Windows 7开始菜单处进入控制面板，然后找到"系统和安全"项点击进入即可找到"Windows防火墙"功能。如图  
然后左边我们可以看到5个关联的设置　　1、允许程序或功能通过windows防火墙　　2、更改通知设置　　3、打开或关闭windows防火墙　　4、还原默认设置　　5、高级设置
其中点击第一个设置"允许程序或功能通过windows防火墙"即进入如图界面  这个是最基础的通行与否，就像当初的XP就是这样的，添加规则很简单，点击“允许运行另一程序”，选择你想要添加的程序即可，但是我们可以看到还是区分了专用网络和公用网络的　　这边只要最基础的通行或者不通行，没有端口，更不用TCP和UDP。因为对于一般人来说，只是需要设置程序是否需要联网，而不会区分一条条的规则，而更高级的规则，将在稍后讲到（这边添加的程序，根据程序对应的服务，可能会在后面产生多条规则）。
打开第二个更改通知设置和第三个打开或关闭windows防火墙效果一样,出来的是如下界面:
  来自卡饭
这边就可以打开和关闭windows防火墙，切家庭或工作网络和公用网络是分开的。至于提醒，还是按照默认的勾上，阻止所有连入连接不用勾上，不然会影响某些程序的运行。
打开第四个还原默认设置,进入如图界面  来自卡饭　　
如果自己觉得自己配置的乱七八糟或者规则十分混乱，那么可以选择还原默认设置，那么防火墙的规则就会恢复到初始的状态（谨慎使用）　　
设置
在Windows防火墙设置中，很多电脑用户可能知道，一旦防火墙设置不好除了会阻止网络恶意攻击之外，甚至会阻挡用户正常访问互联网，所以不敢轻易动手。如果是安装了专业的全功能安全软件，那这个难题完全交给它就能很好解决，但现在需要我们手动来开启Windows防火墙也并不困难。点击进入"打开或 关闭Windows防火墙"设置窗口，轻松点击两下鼠标即可开启防火墙，而且就算你错误进行了某些操作影响上网也不必担心了，这次Windows 7操作系统提供了防火墙还原默认设置功能，轻轻点一下鼠标马上将防火墙还原到初始状态，有问题重新设置吧！
覆盖各种需求的用户
高级用户如果是非常了解Windows防火墙的可以进行更加详细全面的配置，进入"高级设置"项中，包括出入站规则、连接安全规则等都可以从这里进行自定义配置。当然，如果你已经安装有全功能专业安全软件，那么所有这些都交给安全软件代为管理就不必自己麻烦了。 
Windows 7针对每一个程序为用户提供了三种实用的网络连接方式：
- 允许连接：程序或端口在任何的情况下都可以被连接到网络。　
- 只允许安全连接：程序或端口只有IPSec保护的情况下才允许连接到网络。
- 阻止连接：阻止此程序或端口的任何状态下连接到网络。
XP系统
Windows XP 防火墙
微软在设置Windows XP防火墙内置规则时，已经为自家的应用程序开了“绿色通道”，所以装上SP2后，即使打开其防火墙并且启用“不允许例外”，无需将IE加到“例外”就能上网，而防火墙也不会询问是否要允许IE通过。
仅就防火墙功能而言，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和WindowsXP防火墙，让内网的朋友在进行BT下载时可以获得相当快的下载速度。但自从升级到SP2并启用了Windows防火墙后，BitComet软件速度变得很慢！这是由于防火墙没有设置好，使得系统没能正确识别UPnP设备。
第一步:WindowsXP默认是支持UPnP的，如果在“例外”看不到这个选项，则说明没有安装UPnP设备支持。打开“网上邻居”窗口，在其左侧的工具栏中点击“显示联网的UPnP设备的图标”，如果UPnP设备文件没有安装或安装不正确，系统就会自动安装(见图3);
第二步:在“控制面板”中打开防火墙并启动，确认不勾选“不允许例外”这个选项；当打开BitComet后，Windows防火墙有可能会提示你是否要阻止该程序，选择“解除阻止”；
第三步:点击“例外”选项卡，勾选“UPnP框架”即可。
实战3:给远程管理开个通行证
战前分析:当通过MMC控制台中的Computer Management(计算机管理)、DiskManagement(磁盘管理)等组件远程管理程序来管理局域网上的其他计算机，计算机必须开放TCP 445端口。如果在远程操作已经安装XPSP2并开启了防火墙的计算机时，就得手动打开这个TCP端口。
第一步:打开防火墙设置窗口，切换到“例外”选项卡，勾选“文件和打印机共享”
第二步:单击“编辑”按钮，在打开的“编辑服务”窗口中选中“TCP 445”，单击更改范围，勾选“仅我的网络”或者勾选“自定义列表”并输入要控制的计算机的IP地址(见图4)。
小提示
上列步骤可以用命令代替，即在命令提示符窗口中输入“netsh firewall set portopening TCP 445 TCP445 ENABLE”(不包括引号)。
实战4:彻底搞定“远程桌面”连接
战前分析:通过Windows XPSP2防火墙实现远程协作的方法很简单，远程协作使用的是动态端口。在防火墙设置对话框中的“例外”选项卡上“程序和服务”列表中选择“远程协作”项目，这样Windows将自动监视并正确处理来自sessmgr.exe应用程序的所有通讯请求完成连接。WindowsNetMeeting的远程桌面要复杂一些，尽管在例外选项卡中有“远程桌面”选项，但是如果你选择这个选项，实际是开放了TCP的端口3389，也可能无法完成远程桌面连接。
方法:在Windows防火墙打开的情况下，在可以使用WindowsNetMeeting的远程桌面共享功能之前，必须向Windows防火墙的“例外”选项卡上“程序和服务”列表中分别为WindowsNetMeeting和%systemroot% System32Mnmsrvc.exe文件和C:ProgramFilesNetMeetingconf.exe文件分别添加一个条目即可。
实战5:只让内网来“Ping”我！
战前分析:在默认情况下XP SP2防火墙不允许ICMP入站数据进入，也就不会回复ICMP返回数据，这样可以防止检查网络故障常用的命令工具“Ping”来探测你的计算机，不过这样对于一些启用了共享上网的用户，内网就无法用Ping来检查自己的网络情况了。
方法一:按照实战2的方法，分别将“文件和打印机共享”中所打开的TCP端口适用于子网即可。
方法二:打开Windows 防火墙，切换到“高级”选项卡，双击与内网连接的那个“本地连接”，切换到“ICMP”选项卡，勾选“允许传入的回显请求”，确认所有操作即可(见图5)。
控制协议
ICMP协议
ICMP是“Internet Control MessageProtocol”(Internet控制消息协议)的缩写，它是TCP/IP协议簇中的一个子协议，用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息，这些控制消息虽然并不传输用户数据，但是对于用户数据的传递起着重要的作用。我们在网络中经常会使用到ICMP协议，只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令实际上就是ICMP协议工作的过程，还有诸如跟踪路由的Tracert命令也是基于ICMP协议的。