

正如我在以前的文章中所解释的,IPSec协议帮助你加密流经网络的数据,但它并没有得到普遍支持。在这篇文章中,我将略述一些实现IPSec的最佳实践,这些实践能够帮助你在不损害兼容性的情况下获得最大保密度的好处。
IPSec是如何工作的
在我向你展示实施IPSec策略的最佳方法之前,你必须理解两件事情。第一,IPSec实施在组策略级别。组策略是分级的,并且多种组策略要素可以被结合来创造整体系统策略。这意味着你可以针对多种形势建立多种IPSec策略,而不是整个系统拥有一个空的策略。
第二,IPSec并不普遍兼容。微软首先在Windows 2000种引进了IPSec,因此运行Windows 2000,XP和2003中的系统可以使用IPSec。然而,运行Windows ME,98或95系统却不能使用IPSec。此外,运行非微软操作系统(如Linux,Unix或NetWare)的系统不支持IPSec。
牢记这些,有效配置IPSec的技巧就是建立一系列组策略元素。目标是让Windows在支持时使用IPSec,并且在不支持的地方不需要IPSec。这并不像听起来那么难,因为Windows有三种内置的IPSec策略。
Windows内置的IPSec策略
内置的IPSec策略是服务器,客户端和安全服务器,但是命名模式有点使人误解。例如,服务器策略并不一定非得用在服务器上,它也可以用在客户端上。这些策略包含的内容才是重要的。
服务器策略:这是一个请求安全策略。任何应用这种策略的系统都要求对所有这台机器和其它计算机之间的通信会话进行IPSec加密。如果另一台计算机不支持IPSec加密,会话允许不加密。
客户端策略:这是一个仅用于响应的策略。它从不请求IPSec加密。然而,如果另一个计算机请求IPSec加密,使用Client策略的系统将允许会话被加密。
安全服务器策略:这种策略要求IPSec加密。它不支持任何不加密的会话。
实施IPSec策略
既然你知道了可用的各种类型的IPSec策略,那就让我们来看看如何把所有这些放在一起。合适的方法取决于构成你的网络的系统类型。鉴于此文,我假设你拥有Windows 2000和Windows 2003服务器并和运行各种操作系统的工作站在一起。
对于这样的设置,你可以在机构中所有的机器上应用服务器 IPSec策略。那样的话,能够运行IPSec的所有主机之间的每个会话都需要IPSec加密。记住,尽管如此,服务器策略并不提供任何保证。如果一个计算机拒绝使用IPSec加密,那么会话将不被加密。有一些保证当然是好的。
我建议设置组策略使得所有服务器之间的通信都需要IPSec加密。那样的话,你知道服务器之间的通信将是安全的。你然后可以为其他的使用可选择的加密。
建立这种策略的步骤相当的简单明了。活动目录已经有了服务器,域控制器和计算机的容器对象。仅仅创建两个不同的组策略对象,一个基于安全服务器策略,另一个基于服务器策略。基于服务器策略对象的组策略对象不经修改就可以用于计算机容器。
然而,基于安全服务器策略的策略对象不能按照原样使用。如果你按照当前的形式使用这种策略,所有的服务器通信都将被加密。相反,你一定得使用策略对象的过滤器功能来创建一个过滤器,这个过滤器将过滤服务器之间所有需要IPSec加密的通信。为了做到这一点,将过滤器构建在IP地址和网段之上。你还应该为所有没在过滤列表中但又安全要求的通信设计策略。然后服务器之间的通信的加密得到了保证,并且服务器和工作站之间的通信的加密也可以请求(而非要求)。
对更多的关于IPSec最佳实践的信息来说,在微软公司的网站检查信息。