我们本次进行NAP实战的特殊在于,是在基于虚拟化的平台上进行的测试,由安装于物理机上的VMware,虚拟出若干Windows Server 2008服务器,搭建一个NAP所需的多服务器环境。由于要实现NAP功能,至少需要一台DC服务器和另一台实现Network Policies的服务器,如果是基于物理服务器的配置,可以想象是比较浪费电力和资源的,因为实现这些功能,远远不需整台物理服务器的性能。而基于虚拟机的NAP应用,则很好地破解了这个问题。
VMware
Windows Server 2008
测试采用的拓扑结构
什么是NAP?
首先来看下NAP的介绍:网络访问保护 (NAP) 是 Windows Vista、Microsoft Windows XP 和 Windows Server 2008 操作系统中内置的策略执行平台,它通过强制计算机符合系统健康要求更好地保护网络资产。借助网络访问保护,您可以创建自定义的健康策略以在允许访问或通信之前验证计算机的健康状况、自动更新符合要求的计算机以确保持续的符合性,也可以将不符合要求的计算机限制到受限网络,直到它们变为符合为止。
若要基于系统健康状况验证对网络的访问,网络体系结构需要提供以下功能区域:• 健康策略验证: 确定计算机是否符合健康策略要求。
• 网络访问限制:限制不符合的计算机的访问。
• 自动修正: 提供必要的更新以允许不符合的计算机变为符合。
• 正在进行的符合: 自动更新符合的计算机以便它们符合健康策略要求中正在进行的更改。
• 检查移动便携式计算机的健康和状态
借助网络访问保护,网络管理员可以在任何便携式计算机重新连接到公司网络时检查其运行状况,而不会牺牲便携式计算机的便携性和灵活性。
• 确保桌面计算机正在进行的健康状况
通过添加管理软件,您可以生成自动报告、对不符合要求的计算机自动进行更新以及当管理员更改健康策略时,可以为计算机提供最新的更新,从而防止访问公共资源带来的健康威胁。
• 确定正在访问的便携式计算机的健康状况
借助网络访问保护,管理员可以确定正在访问的便携式计算机是否有权访问网络,如果没有权限,则可以限制其对受限网络的访问,而不需要对正在访问的便携式计算机进行任何更新或配置更改。
• 验证非托管的家庭计算机的符合性和健康状况
通过使用网络访问保护,网络管理员可以在每次家庭计算机对网络进行 VPN 连接时检查所需的程序、注册表设置、文件或这些内容的组合,他们也可以限制到受限网络的连接,直到符合系统健康要求为止。
DHCP 强制
本次实战我们采用DHCP强制的模式,DHCP 强制由 DHCP NAP ES 组件和 DHCP NAP EC 组件组成。使用 DHCP 强制,DHCP 服务器可以在计算机尝试租用或续订网络上的 IP 地址配置时强制健康策略要求。DHCP 强制是最简单的部署强制,因为所有 DHCP 客户端计算机必须租用 IP 地址。
NAP实战配置
提升DC、安装DNS Server
首先,我们将虚拟机中的一台2008提升为域控服务器,并装上证书服务器,同时也装上DNS Server。
接下来当然是建立一个域了,我们在这里将其命名为“nap.org”,同时添加后面将要用到的健康证书,将其发布到活动目录中。
启动DNS Server:
配置DHCP、“网络警察”
第一台服务器的设置就完成了,我们转到另一台虚拟的2008上,这个是我们这次测试的重头戏了,这台08将要担负起“网络警察”的重任,所以在设置方面比较多。首先还是要为其指定“角色”,将它添加到nap.org这个域中,装上DHCP Server、Network Policy and Access Services和Web Server。
我们要停掉路由器的DHCP服务,然后由这台服务器来完成这份工作,这也是实现最简单NAP的一个必需步骤。
既然要用DHCP强制的方式划分安全和不安全的客户端接入网络,那我们就要划分一个IP地址范围:
设置完成之后可以看到,我们采用了nap.org和unsafe.nap.org两个“域”,经检测安全的客户端,就会出现在nap.org这个域里,而不安全的客户端,则是在unsafe.nap.org里。
启动Network Policy and Access Services,实现NAP,就靠它了。
下面要设置System Health Validators,这个工具的作用就是检测连接到网络中的计算机哪些是不安全的,安全条件用户可以在里面设置,比如防火墙关闭就认为不安全、没安装杀毒软件就是不安全的计算机等等。
查看属性,下面的那些下拉列表可以根据不同需求设置更加严格或是忽略。我们这里由于只是测试,把它们都改为准许通过,然后点击Configure进入详细的设置界面。
这里可以针对Vista或XP进行几个项目的设置,有防火墙、杀毒软件、木马防御、自动升级等选项,勾选了,就表示服务器需要对客户端上的这些防护措施进行检查,符合所有条件的,才准许进入网络。
可以看到,设置完成之后,在Health Policies里,自动生成了NAP DHCP Compliant和NAP DHCP Noncompliant两个证书模板,分别对应安全和不安全的设置。
最后再点击Network Policies,里面有三个证书,NAP DHCP Complinat、NAP DHCP Noncompliant和NAP DHCP Non NAP-Capable,分别颁发给安全、不安全的客户端和没有NAP功能的客户端。
在NAP Enforcement可以设置对符合该证书的客户端的处理方式,比如安全的客户端,就让它正常接入网络,而不安全的客户端,就只能连接到特定的网络上。
当然,NAP这个功能并不是只拒绝不安全的客户端,我们可以增加一个修补服务器或是一个url,让不安全的客户端到其上面安装所需的安全防护软件,然后就可以正常接入网络了。
NAP实战检验
是时候检验一下NAP的效果了。我们采用的是一台安装了Vista的笔记本电脑,其实Vista作为与server 2008同出一胎的产品,自然也内置了对NAP的支持服务,只不过在一般情况下用不到,所以默认是没有启动的,我们必须到计算机管理中将该服务启动,名称为:Network Access Protection Agent。
紧接着打开MMC,会发现里面多了一个“NAP Client Configure”,将其添加到控制列表中:
这里出现了多达五种的NAP强制模式,我们只需启动其中的第一项,即DHCP QQuarantine Enforcement Client。大功告成!
第一个连接时,我们先把Vista里的防火墙、升级等通通关掉,直接连入网络。会发现上不了网。
再回到DHCP服务器上查看:下面那台10.0.10.8就是Vista,看其在域中的计算机名“pconline-PC.unsafe nap.org”,显然已经被“网络警察”认定为不符合安全条件的接入者。
于是,我们再到Vista上,将防火墙和自动升级打开,尝试连接多一次。
显示发生了变化,名称变成了pconline-PC.nap.org,也就是说它已经通过“体检”,可以正常上网了。
总结:
与其说Windows Server 2008的NAP,是一个为接入网络的客户端进行体检的医生,还不如说它是检查防疫情况并负责打预防针的护士。因为实际上,NAP并没有抵抗入侵或病毒的能力,而是防范于未然,保证网络内的客户端都具有自己的一套防御工具,如果你没穿上防火墙、杀毒软件等盔甲,“对不起,你不能上战场,会容易负伤并连累到战友的,请跟我到军需库领取一套。”这个平台的特点在于第一次设置时稍显麻烦,要采用两台服务器,不过在设置完成之后,人工干预很少,基于活动目录下的规则更改也很方便。软件成本方面,由于是集成在Windows Server 2008中的默认功能,所以无需另外购买,而Vista和XP平台的客户端程序也是本来就有的或是提供免费下载的。总的来说,NAP并不能取代传统的硬件防火墙等设施,但是可以作为一个补强的门禁系统,让你的企业网络更加健康安全。