安全观察网络访问保护

John Morello

本专栏中有关 Windows Server“Longhorn”的预发布信息可能会有所变动。

目前,各种规模的组织都面临的最大安全威胁之一就是网络外围背后的恶意设备。任何组织,不论其对来自 Internet 的外部威胁防御得多么严密,都会因善意的员工在不知情的情况下带入

蠕虫或木马等恶意软件而在安全性方面面临风险。这种威胁在中小型组织的 IT 环境中尤其如此,因为其员工可能使用同一台便携式计算机处理个人事务和工作任务,并且对他们而言,网络访问控制技术也经常因过于昂贵和复杂而无法部署。不过通常由于停机而付出高昂代价的也正是这些组织。由此可见防御这些威胁是至关重要的。

利用 Microsoft 的网络访问保护 (NAP) 技术,各种规模的组织都能在计算机连接到网络时前瞻性地检查其运行状况,以确保计算机在整个连接期间始终运转正常。NAP 为组织提供了一种基于策略的灵活的体系结构,可防止员工、供应商和访问者有意或无意地将不符合安全策略的计算机连接到组织的网络。NAP 主要围绕四大基本核心构建而成:策略验证、隔离、补救和持续的遵从性。

NAP 概述

NAP 提供的第一个核心服务是策略验证。策略验证是指 NAP 根据管理员定义的一组规则对系统进行评估并划定系统运行状况的过程。

IT 管理员指定一组策略元素,NAP 在计算机尝试连接到网络时会使用这些元素进行对比。符合这些策略元素的计算机被视为状态良好的计算机,而不符合其中一项或多项核查标准(由管理员指定)的计算机则被认为是状态不良的计算机。这些策略可以检查计算机是否安装有防病毒软件和防间谍软件、主机防火墙是否处于活动状态、是否缺少某个安全更新,等等。此外,由于 NAP 是可扩展的,因此独立软件供应商可针对 NAP 开发自己的插件,以针对应用程序进行检查。

NAP 提供的另一项核心服务是网络连接限制。根据管理员定义的策略的不同,NAP 可以将计算机的网络连接设置为各种状态。例如,如果一台计算机因缺少关键的安全更新而被视为状态不良,则 NAP 可以将该计算机置于隔离网络中,使其与网络中其他计算机隔绝,直至恢复健康为止。如果没有 NAP,状态不良的客户端也可以不受限制地访问组织的网络。一旦恶意软件能够通过那些本该由更新程序修补的漏洞危害该计算机,它就能够不断试图将自身的感染传播给网络中的其他计算机。图 1 所示使您对该体系结构有一个大致的了解。

图 1 常见的 NAP 体系结构

图 1** 常见的 NAP 体系结构 **(单击该图像获得较大视图)

不过,仅限制连接并非处理那些状态不良的计算机的有效方法(毕竟,您的用户还要工作)。为此,NAP 提供了补救服务,被隔离的计算机无需管理员干预即可纠正影响运行状态的问题。在上述示例中,受限的网络只允许状态不良的计算机访问安装缺失更新程序必需的特定网络资源,例如组织的 Windows Server® Update Services (WSUS) 计算机。也就是说,有了 NAP,状态不良的计算机只能访问那些可使其运行正常的网络资源,在其恢复健康前,不能向网络中的其他计算机发送任何通信。

NAP 的最后一个核心服务是持续的遵从性,即强制计算机在与网络保持连接期间,而不仅仅在初始连接时,始终符合这些可保持状态良好的策略。通过我们的示例,设想一下计算机对自身进行更新并恢复良好状态(因此可获得不受限的网络访问)后会怎么样。如果该计算机之后与策略不相符合,例如禁用了 Windows 防火墙,则 NAP 将自动将该计算机重新隔离。NAP 还允许管理员配置自动补救,无需用户干预即可自动更正违规状态,甚至在初始连接建立很久之后仍可执行这一操作。

NAP 可以采取多种不同的方法控制网络访问。采用托管网络交换机的组织可以利用 802.1X 在网络硬件层提供基于端口的访问控制。NAP 还能够利用基于 Ipsec 的强制技术,通过 Ipsec 关联建立安全网络并将其覆在物理网络之上。利用基于 Ipsec 的强制技术,NAP 可动态地创建和删除 IPsec 引擎所使用的证书,以此来控制对安全区域的访问。最后,NAP 可以提供基于 DHCP 的强制技术。在这种情况下,DHCP 服务器为运行状态不良的客户端提供来自受限池的 IP 租约。这些租约使用单独的 DNS 后缀和 IP 路由来控制受限客户端可以访问哪些资源。

NAP 服务器组件基于下一版本的 Windows Server(代号“Longhorn”)构建,更具体地说,是内置在新的网络策略服务器 (NPS) 中,NPS 是 Internet 身份验证服务 (ISA) 的替代品,功能得到了极大的增强。组织如果利用基于 802.1X 的强制技术,其网络硬件必须支持 802.1X 身份验证和动态 VLAN 功能(“NAP 资源”侧栏中的 NAP 合作伙伴站点提供了有关特定硬件供应商的详细信息)。要利用基于 DHCP 的强制技术,需要一个与 Windows Server“Longhorn”提供的类似的支持 NAP 的 DHCP 服务。在客户端上,Windows Vista™ 中内置了 NAP 支持。NAP 支持也可以作为加载项添加到 Windows® XP 中,随之添加的还有一个新的 802.1X 申请者 (supplicant),它将在 Windows XP 上支持 802.1X 强制技术。

此外,NAP 还集成在 Windows 安全中心和第三方的运行状态代理内,用于报告运行状态的信息。因此,NAP 能够根据安全中心公布的数据作出策略验证决策。

NAP 是一个功能非常强大的企业级策略管理解决方案,因此,本文篇幅有限,不可能涵盖其全部功能和部署策略。本文主要将重点放在中小型组织的部署上,因为在这些组织中,IT 员工的时间已经不够分配了,因此可以对 NAP 部署进行精简和优化,以便更快地实现部署所要求获得的投资回报。但是文中很多讲解性的内容和通用准则也同样适用于任何规模的组织的 NAP 设计。但要注意的是,我所列举的示例方法并非逐步设置指南,而是大体上概述了成功部署基于 DHCP 的 NAP 应关注的关键领域。有关详细的设置指南,请参阅“NAP 资源”侧栏提供的链接。

Contoso 的问题包袱

为了更清楚地了解 NAP 如何解决中小型组织的独特需求,我们将以 Contoso 公司为例加以说明。Contoso 是一家假想的中型组织,有三个主要办事处,共有 250 台计算机。该公司的工作人员实现了很高的移动性,许多用户都从远程的客户所在地远距离地与主要办事处进行通信或连接回主要办事处。因此,该公司的计算机中有一半是便携式计算机和 Tablet PC。与许多组织一样,随着工作人员移动性的增强,Contoso 也面临着更加严峻的安全性挑战。某些使用移动数据终端的用户从客户那里或家庭办公室染上了恶意软件,然后将受感染的计算机又连接到 Contoso 的内部网络中。

Contoso 也曾努力采取过多种措施来确保这些远程计算机保持最新状态。但有的用户经常要在客户处工作很久才会回到 Contoso 的办事处。在这些情况下,他们计算机经常会数月不进行安全更新,这增加了 Contoso 网络中其他计算机面临的整体风险。Contoso 需要一个解决方案来确保所有连接到公司网络的计算机(不论是远程的还是本地的)都是安全的、状态良好的。

NAP 将如何帮助 Contoso 实现这一目标呢?请回顾一下 NAP 的主要核心服务。借助策略验证,NAP 可以对所有连接到 Contoso 网络的计算机的运行状态进行检查。策略验证可以确定计算机是否具有最新的防病毒签名,是否已完全安装了所有安全更新修补程序。当 NAP 策略验证例程确定一台计算机状态不良时,NAP 可以对该主机的网络连接进行限制。这样就确保了在异地使用并感染恶意软件的计算机无法将恶意软件传播给网络中的其他计算机。NAP 将限制状态不良的计算机的连接,使其只能访问由 Contoso 的 IT 管理员定义的补救资源。例如,状态不良的计算机可以访问 Contoso WSUS 服务器和承载防病毒签名的服务器。最后,NAP 可以确保计算机在恢复正常后始终保持良好状态。在这个示例中,如果远程办公人员通过 VPN 使用状态不良的主机,并且该用户关闭了主机防火墙,则 NAP 会自动对这一问题进行补救。只要一禁用防火墙,NAP 体系结构就会立即将该计算机隔离,重新启用防火墙,重新评估该计算机的运行状态,在确定该计算机恢复良好状态后,再将其放回不受限的网络中。NAP 的四项核心服务直接满足了 Contoso 对动态移动的计算环境的安全方面的需求。

NAP 设计

对许多中小型组织而言,实施基于 DHCP 的 NAP 强制技术是最快、最简单的可选方案。这是因为 DHCP 强制技术不需要对网络进行其他更改,而且除 DHCP 和 NPS 之外,不需要其他服务。尽管 IPsec 和 802.1X 强制方案更为灵活,但它们都需要在网络中进行额外更改并部署新的服务。对于较为简单的环境,使用 DHCP 既可享受 NAP 提供的大多数好处,同时实现成本也低得多,持续运营费用也少一些。

在 Contoso 的环境中,围绕一台运行 Windows Server“Longhorn”的计算机进行 NAP 部署。由于 NAP 需要 Windows Server“Longhorn”NPS,因此不能在以前的 Windows Server 版本上部署 NAP。NAP 的基于 DHCP 的强制也需要 Windows Server“Longhorn”DHCP 服务器。如果要整合这些服务,Contoso 可以将 NPS 和 DHCP 部署在同一台服务器上,二者可以相安无事,和谐共存。这样,Contoso 的基本 NAP 服务器体系结构就变得非常简单:仅需一台装有 Windows Server“Longhorn”的计算机,同时运行策略组件和强制组件。

在客户端,Contoso 运行 Windows Vista 的计算机已经具备支持 NAP 所需的能力。对运行 Windows Vista 的计算机而言,唯一要对客户端做出的更改就是启用 NAP 功能,这可通过组策略来实现。而对于运行 Windows XP 的计算机,则必须单独安装 NAP 客户端软件包。默认情况下,已加入域的 Windows XP 计算机的 Windows 安全中心功能是处于禁用状态的。如果 NAP 策略需要使用来自安全中心的状态信息来评估计算机的运行状态,则必须运行安全中心,否则 NAP 无法正常运行。因此,对于 Contoso 公司内运行 Windows XP 的计算机来说,管理员已通过组策略启用了安全中心。除了这些更改外,客户端无需再进行其他更改即可支持 NAP。

Contoso 的 NAP 部署

在 Contoso 完成前面所述的必要的组策略更改之后,下一个 NAP 部署步骤是安装 Windows Server“Longhorn”。所有 Windows Server“Longhorn”版本都包括必需的 NAP 组件,因此,Contoso 可以使用任何符合需求的版本。安装完毕后,IT 管理员要使用服务器管理器工具向计算机添加新的角色。对于 Contoso 使用的基于 DHCP 的强制,所需的角色为网络访问服务和 DHCP 服务器。添加角色向导将帮助管理员处理所有依赖关系并加入服务器可能需要的任何其他功能。添加完角色后,Contoso 即可开始配置 NAP 了。

Contoso 的管理员将使用服务器管理器工具访问 Microsoft 管理控制台 (MMC) 的 DHCP 管理单元,并添加新的作用域。配置 Windows Server“Longhorn”DHCP 服务器将导致它所服务的 IP 段上现有的 DHCP 服务全部被替换。根据 Contoso 的网络情况创建好该作用域并在其中填充了正确的选项后,就必须对其启用 NAP。这一操作可在作用域属性的“网络访问保护”选项卡上进行(参见图 2)。

图 2 启用 NAP

图 2** 启用 NAP **(单击该图像获得较大视图)

NAP 通过新的 NAP 用户类作用域选项使计算机在同一作用域内的受限和不受限网络访问之间切换。在向状态不良的客户端提供租约时,会使用这组特殊的作用域选项(包括 DNS 服务器、默认的 DNS 后缀,等等)。例如,提供给状态良好的客户端的默认 DNS 后缀为“contoso.com”,而提供给状态不良的客户端的后缀为“restricted.contoso.com”,如图 3 中所示。配置好 DHCP 作用域选项后,即可设置网络策略服务器并创建规则了。

图 3 受限访问

图 3** 受限访问 **(单击该图像获得较大视图)

NPS 策略由四个主要组件构成。系统健康验证器(System Health Validators,SHV)定义了评估计算机运行状态需要执行哪些检查。更新服务器组列出了状态不良的计算机可以访问的系统(例如 WSUS),通过访问这些系统,状态不良的计算机可以恢复正常状态。系统健康验证器模板组件用于定义实际的运行状况。例如,Contoso 可以认为通过了 Windows Security SHV 检验的计算机是“遵从策略”的,但客户端仍有可能无法通过其防病毒供应商提供的另一项 SHV 检查。最后,这些组件将组成一组网络策略,其中包括了逻辑规则,借此根据计算机运行状况确定如何对其进行处理。

系统健康验证器列出了各种项,NAP 代理会对这些项进行检查并向 NPS 报告计算机运行状况。默认的 NAP 部署包括 Windows SHV(加入到 Windows 安全中心),它可允许 NAP 检查安全中心报告的所有安全组件的状况。这其中包括防火墙、防病毒组件、自动更新组件和防间谍软件组件。

我们之前说过,NAP 是可以扩展的,允许第三方创建属于自己的 SHV,以便对单个组件进行更为详细的检查(有关详细信息,请参阅 microsoft.com/windowsserver2003/partners/nappartners.mspx)。例如,Windows Security SHV 允许 NAP 检查防病毒软件是否已启用并处于最新状态。不过,Windows Security SHV 并不能执行有关防病毒应用程序的更详细的检查,例如计算机的扫描频率或应用程序特定的其他选项。不过,防病毒软件供应商可以创建自己的 SHV,与默认的 Windows SHV 相比,该 SHV 能够更深入应用程序,提供更多应用程序特有的检查。此 SHV 将与 Windows SHV 和其他可能存在的 SHV 密切协作;一个 NAP 部署有时会同时使用多个 SHV(参见图 4)。

图 4 Windows 安全 SHV

图 4** Windows 安全 SHV **

更新服务器组用于指定状态不良的计算机能够访问哪些资源。这些组通常包括 WSUS 或 Systems Management Server (SMS) 服务器,以及防病毒更新服务器。至关重要的是,不仅要包括服务器本身,还要包括客户端查找服务器所用的名称解析服务器。由于 Contoso 的客户端经由组策略配置,使用称为 wsus.contoso.com 的服务器进行自动更新,因此更新服务器组不仅必须包括该 WSUS 服务器的 IP 地址,还要包括 DNS 服务器的 IP 地址,因为客户端要通过它将完全限定的域名 (FQDN) 转换成数字 IP 地址。如果无权访问这些名称解析资源(可能为 DNS 和 WINS,具体取决于客户端的配置方式),客户端将无法解析补救资源的 IP 地址,也就无法访问它们。图 5 所示为示例的 DNS 和 IP 设置。

图 5 DNS 名称和 IP 地址

图 5** DNS 名称和 IP 地址 **(单击该图像获得较大视图)

系统健康验证器模板用于定义状态良好的计算机需要满足哪些条件。验证模板会获取 SHV 检查的结果,并根据计算机是否通过其中的一项或多项检查来确定其运行状态是否良好(参见图 6)。

图 6 遵从性检查

图 6** 遵从性检查 **(单击该图像获得较大视图)

在 Contoso 的环境中(象许多中小型组织的部署一样),只定义了两种状态。通过所有 SHV 检查的计算机称为状态良好的计算机。未能通过其中一项或多项检查的计算机则称为违规的计算机。如果需要,组织可以选择实施更为复杂的逻辑(例如,根据角色、所在部门、地理位置等为用户创建不同的遵从规则),但要注意,这样做可能会增加识别和排查问题的难度,而且更为耗时。

所有这些组件都通过网络策略组合在一起。网络策略由管理员定义,用于指导 NPS 如何根据计算机的运行状态处理计算机。NPS 会从上到下评估这些策略(如 NPS UI 中所示),一旦计算机与策略规则相符,处理将立即停止。

由于 Contoso 网络的目标是简单,因此只需要少量策略。首先是 Compliant-FullAccess(合规 — 完全访问)策略。此策略规定通过所有 SHV 检查的计算机可以获得不受限制的网络访问权限。具体地说,当计算机经过运行状况评估并通过所有检查时,NPS 会指示 DHCP 服务器为该计算机提供一个作用域选项为“正常”的 IP 租约。此 Compliant-FullAccess 策略通常应该列在处理顺序的首位,因为大多数计算机在接受这项检查时应该都是符合规则的。将此策略列在首位可减少 NPS 的处理工作量和时间。

下一个要用到的策略是 Noncompliant-Restricted(违规 — 受限访问)。在 Contoso 环境中,此策略对应任何未通过一项或多项 SHV 检查(因此符合违规系统健康验证模板)的计算机。如果有计算机与此策略相符,则 NPS 会指示 DHCP 服务器为该客户端提供一个具有特殊 NAP“受限”作用域选项的 IP 租约。该地址仅允许违规计算机访问 Contoso 的更新服务器组中定义的资源。

第三个要用到的策略针对后台兼容性。我们说过,默认情况下,Windows XP 和更高版本的操作系统都提供 NAP 支持(不过,独立软件供应商也许会开发适用于更低的 Windows 版本和非 Windows 操作系统的 NAP 客户端)。如果 Contoso 的生产环境中仍存在 Windows 2000,则可以创建一条规则(在我们的示例中为 Downlevel-Full-Access),允许为不识别 NAP 的计算机授予正常的网络访问权限(DHCP 服务器默认的作用域选项)。此策略应该最后评估,并且只有当下层计算机需要网络访问时才需要创建和启用(参见图 7)。

图 7 下层计算机的访问权限设置

图 7** 下层计算机的访问权限设置 **(单击该图像获得较大视图)

如果 Contoso 的网络中存在目前不支持、且以后也不会支持 NAP 的资源(如打印机或其他硬件),我们该怎么办?而且,如果 Contoso 的计算机虽然支持 NAP,但却想永久或暂时免于策略检查,我们又将如何解决?有一种简单的方法可用于将这些计算机设为例外,即求助于 MAC 地址。为了让这些计算机绕过 NAP 检查,Contoso 管理员可以创建一个新的策略(按 MAC 设为例外),这样即可赋予它们完全的网络访问权限。此策略使用条件语句,Calling Station ID 的 RADIUS 客户端属性要与需要绕过 NAP 检查的那些设备的 MAC 地址相匹配。当计算机符合此策略语句时,NPS 会指示 DHCP 提供一个具有“正常”作用域选项的租约。此策略应该列在评估顺序的首位,以便减少 NPS 的总体处理时间和工作量。符合此策略的计算机不需要再进行任何 SHV 评估,因此 NPS 无需对其进行循环检查(参见图 8)。

图 8 忽略某些计算机

图 8** 忽略某些计算机 **(单击该图像获得较大视图)

这些策略结合在一起可确保 Contoso 的 NPS 迅速准确地评估连接到网络的计算机。在需要时,它们还能为下层计算机和设备提供免检,或在支持 NAP 的设备需要暂时绕过检查时,提供免检。

总结

NAP 中囊括了广泛的技术,需要进行全面的规划和测试,尤其是在较复杂的应用方案中。尽管我重点介绍的应用方案并不复杂,但 NAP 网站可提供更为详细的指导准则,所有规模的部署皆可参考。该网站还包括基于 802.1X 和 Ipsec 的强制技术的规划帮助信息,与基于 DHCP 的强制相比,这些技术通常更适合企业的需求。

NAP 为评估连接到网络的计算机的运行状况提供了一个强有力的可扩展平台。对中小型组织而言,基于 DHCP 的强制具有诸多好处,而且实现和管理的成本较低。NAP 是使用 Windows Server“Longhorn”所获得的一个主要好处,它能帮助您的组织增强安全性,改善规则遵从状况。

NAP 资源

John Morello在 Microsoft 工作的六年时间里担任过各种角色。身为高级顾问,他曾为财富 100 强企业和联邦军民客户设计过多种安全解决方案。目前他是 Windows Server 小组的高级项目经理,主要研究 Anywhere Access 技术。

© 2008 Microsoft Corporation 与 CMP Media, LLC.保留所有权利;不得对全文或部分内容进行复制.