Internet 连接防火墙的目的
     Internet 连接防火墙(ICF)的设计目的在于:保护家庭用户和小型企业不受外部威胁的侵害。ICF 旨在为 Windows XP 操作系统提供一个基本的入侵保护机制。这意味着 ICF 可以防止黑客扫描计算机信息,也可以阻止未经计算机请求的外部流量进入计算机。所以,这个简单的防护工具可以有效防止“菜鸟级”黑客入侵系统,并迫使他们转向其他更容易受攻击的目标。
     
     防火墙对于一般用户来讲很难配置。但是在 Windows XP 中,Microsoft 的目标是为用户提供一种简单和透明的安全体验。用户可以通过一个简单的复选框或者向导在 Internet 连接上启用 ICF,从而在为高级用户提供灵活的定制设置的同时,为普通用户提供了一种简单轻松的配置过程。
     
     Internet 连接防火墙的有效性
     
     ICF 在 Windows XP Home Edition 和 Windows XP Professional 中发布。此外, Windows Server 2003, Standard Edition 和 Windows Server 2003, Enterprise Edition 也包含了 ICF。
     
     安装 Internet 连接防火墙
     本节描述了 Internet 连接防火墙的安装方式。
     
     ICF 的安装方式
     
     以下是ICF 的多种安装方式:
     
     欢迎使用 Windows 向导。如果您在独立计算机 (未加入网络域的计算机) 中安装 Windows XP Home Edition 或 Windows XP Professional,您将看到该向导。该向导使得以下操作非常容易:连接到 Internet、激活您的 Windows 副本、注册 Windows 以及创建用户帐户。如果 PC 仅有一个网络连接,并且已确定使用该网络连接访问 Internet,则“欢迎使用 Windows 向导”将在该连接上启用 ICF。
     
     网络安装向导 (NSW)。( 适用于独立计算机中的 Windows XP Home Edition 和 Windows XP Professional )。运行 NSW 时,将要求您选择 Internet 的连接方式(共有五个选项)。如果选择了表明 PC 是直接连接到 Internet 的选项,则将在该 Internet 连接上启用 ICF。
     
     新建连接向导 (NCW)。 如果运行 NCW 并选择了“连接到 Internet”的路径,则将在指派的 Internet 连接上启用 ICF。
     
     “网络连接”文件夹。您可以在某个网络连接的属性页中转到“高级”选项卡,并通过一个复选框来启用 ICF。“网络连接”文件夹位于控制面板的“网络和 Internet 连接”区域中。
     
     支持的连接类型
     
     您可以在局域网 (LAN) 中启用 ICF,这包括无线 LAN 以及 PPP over Ethernet、拨号和虚拟专用网等远程访问服务连接。您可以在一个系统的多个连接上启用 ICF,并且每个连接都可以有自己的设置和配置。
     
     但不能在以下位置启用 ICF:Internet 连接共享 (ICS) 专用适配器、网桥的成员连接、网桥自身或入站连接。
     
     权限要求
     
     只有系统管理员才能启用和控制 ICF。
     
     ICF 部署方案
     
     共有两种主要的 ICF 部署方案:
     
     保护直接连接到 Internet 的单台Windows XP 计算机。在这种方案中,运行着 Windows XP 的 PC 通过 RAS 或 LAN 连接与 Internet 相连。Internet (或与该 PC 相连的其他公共网络) 上的实体可以访问这台 PC,但不能访问该 PC 上的服务和资源。
     
     保护家庭或小型商用网络。 如果联同 Internet 共享解决方案 (如 ICS) 使用,ICF 会提供对网络的保护。
     
     返回页首
     Internet 连接防火墙功能概述
     本节包括对 ICF 工作方式的详细介绍。
     
     从概念上说,防火墙是一个大型的过滤器规则引擎,它可以拦截网络通信并将其规则集应用到这些通信。数据包过滤是一个基于各个数据包的报头信息来允许或拒绝通信通过的过程。数据包过滤设备可以使用网络协议的特定信息 (如 TCP/IP 源和目标地址、端口以及其他信息) 来建立允许或拒绝网络通信流的规则。
     
     状态数据包过滤
     
     ICF 本质上是一个状态数据包过滤器。与静态数据包过滤器不同,静态数据包过滤器仅基于数据包的地址信息来确定是否丢弃数据包,而状态数据包过滤器的决定会同时基于数据包的状态和会话的上下文信息。这些存储的状态为该过滤器提供了实施比静态过滤器更为丰富、更为全面的规则集的方法。
     
     ICF 维护的状态是一个连接流表。对于面向连接的协议 (如 TCP),连接流等价于这些协议的连接定义 (例如,源和目标地址、端口以及所使用的协议)。对于无连接的协议 (如 UDP),连接流是在公共端点 (如,IPAddress1/Port1 和 IPAddress2/Port2) 之间无中断发送的一组数据包。此处的无中断,是指在给定的时间段 (比如 1 分钟) 内没有任何数据包与该流匹配。
     
     当连接流到时终止或连接被关闭时,表中的状态信息会被删除。
     
     状态数据包过滤的安全策略
     
     ICF 在整个状态数据包过滤中实施的主要安全策略包括三个规则:
     
     与已建立的连接流匹配的任何数据包都将被转发。
     
     如果发送的数据包与已建立的连接流不匹配,它将在连接流表中创建新条目,然后被转发。
     
     如果收到的数据包与已建立的连接流不匹配,则将被丢弃
     
     
     该策略允许客户端对 Internet 的正常访问 (如 Web 浏览),同时阻止与这些访问无关的数据包被发送到网络堆栈。为了打开特定端口 (创建静态过滤器) 以便能在防火墙之后运行服务 (比如 Web 服务器),该策略也确保用户可以对这些规则进行修改。
     
     除安全策略外,ICF 还会对 TCP 数据包执行结构上的检查。这些检查包括快速丢弃具有不可能的标记组合的数据包 (比如在单个数据包中同时设置有 SYN 和 FIN 标记),以及实施 TCP 三路握手以打开端口。前者在面对基于大量随机数据包的攻击时能极大地降低处理开销,而后者可以防范各种扫描技术。
     
     每个连接的状态和配置
     
     您可以在多个网络连接上启用 ICF。每个 ICF 实例都有自己的端口映射和 ICMP 配置选项,并且相互间保持独立 (但日志设置是全局性的)。
     
     阻止 IP 欺骗
     
     IICF 可以阻止应用程序进行 IP 欺骗。有一些媒体已经注意到在 Windows XP 中包含了原始套接字以及这如何可能导致拒绝服务 (DoS) 攻击的增多。Windows XP 所包含的对 IP_HDRINCL 选项的支持允许套接字应用程序设置或修改数据包的源 IP 地址。这可能有助于 DoS 攻击,因为攻击者可以掩盖攻击源。
     
     ICF 可以检查出站数据包是否含有欺骗性的 IP。这包括 TCP、UDP、ICMP 和 PPTP/GRE (点对点隧道协议 - 虚拟专用网) 通信。当 ICF 单独运行时,它会对出站数据包进行检查。一旦检测到欺骗性的数据包,该数据包即会被丢弃。
     
     如果同时启用了 ICF 和 ICS,欺骗性通信将被修改以使它包含 ICS 主机的正确源 IP 地址,从而防止在家庭网络中始发的恶意代码能进行 IP 欺骗。
     
     请注意: 这不能阻止 Windows XP 客户端自身参与 DoS 攻击,只能阻止 Windows XP 客户端伪装其 IP 地址。
     
     对标准协议的支持
     
     ICF 包含对 Internet 标准协议的支持,如 FTP、H.323、LDAP、T.120 以及 PPTP。
     
     传输支持
     
     ICF 支持对 IPv4 通信过滤。它不支持 NetBEUI、IPX/SPX 以及 IPv6 传输。
     
     对 Microsoft 功能和协议的支持
     
     Windows Messenger 和“远程协助”已经过重新编写,可以通过 ICF 工作。另外,由于 DirectPlay (dplay4 和 dplay8) 支持穿越 ICF,因此使用 DirectPlay 的游戏和应用程序将可以无缝地通过 ICF 工作。这些修改是使用本文档此后所介绍的 API 来完成的。
     
     包含网络操作的其他 Windows XP 功能 (如“帮助和支持中心”、Windows Time、Windows Update) 所使用的协议不用专门修改即可通过防火墙工作。
     
     已知问题
     
     以下是 ICF 的已知问题列表:
     
     默认情况下,那些要求打开一系列端口以返回通信的应用程序将不能工作。为此,应用程序需要创建适当的端口映射。用户可以手动添加这些端口信息。
     
     如果应用程序运行在用户环境中,但该用户不具有管理员身份,则该应用程序将无法控制端口映射。
     
     当运行在 ICF 主机上的扫描应用程序扫描目标时,该扫描应用程序可能报告端口 21 (FTP) 和 389 (LDAP) 在目标上是打开的.