文章编号: 816514 - 最后修改: 2007年12月3日 - 修订: 6.2 HOW TO:如何在 Windows Server 2003 中配置 IPSec 隧道
有关本文的 Microsoft Windows 2000 版本,请参阅 252735?
(http://support.microsoft.com/kb/252735/ZH-CN/
)
。
本页概要 您可以在隧道模式中使用“IP 安全”(IPSec) 来封装“Internet 协议”(IP) 数据包,而且可以选择将它们加密。在 Windows Server 2003 中使用 IPSec 隧道模式(有时称为“纯 IPSec 隧道”)的主要原因是为了能够与那些不支持“第 2 层隧道协议”(L2TP)/IPSec 或 PPTP 虚拟专用网络 (VPN) 隧道技术的非 Microsoft 路由器或网关进行互操作。 返回页首 Windows Server 2003 在隧道的两个终结点都有静态 IP 地址的情况下支持 IPSec 隧道。这主要适用于网关到网关的情形。不过,它也可以在网关或路由器与服务器之间的专用网络安全方案中使用。(例如,一个 Windows Server 2003 路由器,它从其外部接口将通信流路由到一台基于 Windows Server 2003 的内部计算机,该计算机通过建立一条到为外部客户端提供服务的内部服务器的 IPSec 隧道来保护内部路径的安全)。 不支持将 Windows Server 2003 IPSec 隧道用于客户端远程访问 VPN,因为目前“Internet 工程任务组 (IETF) IPSec 请求注释 (RFC)”没有在“Internet 密钥交换”(IKE) 协议中为客户端到网关的连接提供远程访问解决方案。IETF RFC 2661“第 2 层隧道协议”(L2TP) 是由 Cisco、Microsoft 和其他公司为提供客户端远程访问 VPN 连接而专门开发的。在 Windows Server 2003 中,使用自动生成的 IPSec 策略来保护客户端远程访问 VPN 连接,此策略在 L2TP 隧道类型被选中时使用 IPSec 传输模式(不是隧道模式)。 Windows Server 2003 IPSec 隧道也不支持协议和端口特定的隧道。虽然 Microsoft 管理控制台 (MMC) IPSec 策略管理单元十分通用,并且允许您将任何类型的筛选器与隧道关联,但您还是要确保在为隧道规则指定筛选器时只使用地址信息。 有关 IPSec 和 IKE 协议如何工作的更多信息,请参阅 Microsoft Windows Server 2003 Resource Kit。 本文介绍了如何在 Windows Server 2003 网关上配置 IPSec 隧道。由于 IPSec 隧道只保护在您配置的 IPSec 筛选器中指定的通信流,所以本文还介绍了如何在“路由和远程访问”服务中配置筛选器以防止接收或转发隧道外的通信流。为便于按配置步骤进行操作,本文使用以下方案: 收起该表格
NetA 是 Windows Server 2003 网关内部网络的网络 ID。 WIN2003intIP 是分配给 Windows Server 2003 网关内部网络适配器的 IP 地址。 WIN2003extIP 是分配给 Windows Server 2003 网关外部网络适配器的 IP 地址。 3rdExtIP 是分配给非 Microsoft 网关外部网络适配器的 IP 地址。 3rdIntIP 是分配给非 Microsoft 网关内部网络适配器的 IP 地址。 NetB 是非 Microsoft 网关内部网络的网络 ID。 目标是在来自 NetA 的通信流需要路由到 NetB 或者来自 NetB 的通信流需要路由到 NetA 时,让 Windows Server 2003 网关和非 Microsoft 网关建立一条 IPSec 隧道,以便通过安全的会话来路由通信流。 如果要配置一个 IPSec 策略,您必须建立两个筛选器:一个用于匹配从 NetA 到 NetB(隧道 1)的数据包,另一个用于匹配从 NetB 到 NetA(隧道 2)的数据包。您必须配置筛选器操作以指定如何保护隧道安全(隧道由规则表示,因此要创建两个规则)。 返回页首 创建 IPSec 策略通常,Windows Server 2003 网关不是域成员,因此需要创建本地 IPSec 策略。如果 Windows Server 2003 网关是域成员,该域默认会将 IPSec 策略应用到域内的所有成员,这样,Windows Server 2003 网关就不能有本地 IPSec 策略。在此情况下,您可以在 Active Directory 中创建一个组织单位,使 Windows Server 2003 网关成为该组织单位的成员,并将 IPSec 策略指派到该组织单位的“组策略对象”(GPO)。有关更多信息,请参阅 Windows Server 2003 联机帮助的“创建、修改和指派 IPSec 策略”部分。
返回页首 建立从 NetA 到 NetB 的筛选器列表
建立从 NetB 到 NetA 的筛选器列表
为 NetA 到 NetB 隧道配置规则
为 NetB 到 NetA 隧道配置规则
将新的 IPSec 策略指派到 Windows Server 2003 网关在“本地计算机 MMC”管理单元上的“IP 安全策略”中,右键单击您的新策略,然后单击“指定”。该策略旁边的文件夹图标中将出现一个绿色箭头。在指派完策略之后,您就有了两个附加的活动筛选器(“路由和远程访问”自动创建用于 L2TP 通信流的 IPSec 筛选器)。要查看活动筛选器,请在命令提示符下键入以下命令: netdiag /test:ipsec /debug 您可以选择将此命令的输出重定向到文本文件,以便通过键入以下命令使用文本编辑器(例如记事本)来查看它:netdiag /test:ipsec /debug > 文件名.txt 安装 Microsoft Windows Server 2003“支持工具”后即可使用“netdiag”命令。要安装“支持工具”,请定位到 Windows Server 2003 CD-ROM 上的 Support\Tools 文件夹,右键单击 Suptools.msi 文件,然后单击“安装”。安装之后,您可能需要从 %SystemRoot%\Program Files\Support Tools 文件夹(其中 %SystemRoot% 是安装 Windows Server 2003 的驱动器)运行“netdiag”命令。隧道筛选器类似于下面的示例:
Local IPSec Policy Active:'IPSec tunnel with {tunnel endpoint}' IP Security Policy Path:
SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local\ipsecPolicy{-longnumber-}
There are two filters
From NetA to NetB
Filter ID:{-long number-}
Policy ID:{-long number-}
IPSEC_POLICY PolicyId = {-long number-}
Flags:0x0
Tunnel Addr: 0.0.0.0
PHASE 2 OFFERS Count = 1
Offer #0:
ESP[ DES MD5 HMAC]
Rekey:0 seconds / 0 bytes.
AUTHENTICATION INFO Count = 1
Method = Preshared key:-actual key-
Src Addr:NetA Src Mask:-subnet mask-
Dest Addr:NetB Dest Mask:-subnet mask-
Tunnel Addr:3rdExtIP Src Port:0 Dest Port: 0
Protocol:0 TunnelFilter:Yes
Flags :Outbound
From NetB to NetA
Filter ID:{-long number-}
Policy ID:{-long number-}
IPSEC_POLICY PolicyId = {-long number-}
Flags:0x0
Tunnel Addr: 0.0.0.0
PHASE 2 OFFERS Count = 1
Offer #0:
ESP[ DES MD5 HMAC]
Rekey:0 seconds / 0 bytes.
AUTHENTICATION INFO Count = 1
Method = Preshared key:-actual key-
Src Addr:NetB Src Mask:-subnet mask-
Dest Addr:NetA Dest Mask:-subnet mask-
Tunnel Addr:W2KextIP Src Port:0 Dest Port: 0
Protocol:0 TunnelFilter:Yes
Flags:Inbound配置路由和远程访问筛选如果您要阻止源或目标地址与 NetA 或 NetB 不匹配的通信流,则在“路由和远程访问 MMC”中为外部接口创建一个输出筛选器,它将保留从 NetA 到 NetB 的数据包,但丢弃所有其他通信流。另外再创建一个输入筛选器,它将保留从 NetB 到 NetA 的数据包,但丢弃所有其他通信流。您还必须允许发往/来自 WIN2003extIP 和 3rdExtIP 的通信流,以允许在创建隧道时执行 IKE 协商。“路由和远程访问”筛选是在 IPSec 之上执行的。您不必特别允许 IPSec 协议,因为它从不到达 IP 数据包筛选器层。以下示例是 Windows Server 2003 TCP/IP 结构非常简单的表现形式:应用程序层 传输层 (TCP|UDP|ICMP|RAW) ---- 网络层开始 ---- IP 数据包筛选器(执行“NAT/路由和远程访问”筛选) IPSec(实现 IPSec 筛选器) 碎片处理/重新汇编 ---- 网络层结束 ------ NDIS 接口 数据链接层 物理层
在路由和远程访问中配置静态路由Windows Server 2003 网关在其 NetB 路由表中必须有一个路由。要配置此路由,请在“路由和远程访问 MMC”中添加静态路由。如果 Windows Server 2003 网关是一个多主网关,即在同一外部网络(或两个或更多个可到达目标隧道 IP 3rdExtIP 的网络)上有两个或更多个网络适配器,则存在以下可能性:
测试 IPSec 隧道您可以这样来启动隧道:从 NetA 上的计算机向 NetB 上的计算机(或从 NetB 向 NetA)发出 ping 命令。如果您正确地创建了筛选器并指派了正确的策略,这两个网关将建立一条 IPSec 隧道,以便通过 ping 命令以加密格式发送 ICMP 通信流。即使 ping 命令能够执行,您也应当确认 ICMP 通信流在这两个网关之间是否以加密格式发送。您可以使用以下工具实现这一点。返回页首 启用登录事件和对象访问审核这样可以在安全日志中记录事件,让您知道是否尝试进行了 IKE 安全关联协商以及协商是否成功。
IP 安全监视器“IP 安全监视器”控制台显示 IPSec 统计数据和活动的安全关联 (SA)。在尝试使用 ping 命令建立隧道后,您可以查看是否创建了 SA(如果隧道创建成功,则会显示 SA)。如果 ping 命令执行成功但没有出现 SA,则表明 ICMP 通信流不受 IPSec 保护。如果您看到一个以前不存在的“软关联”,则表明 IPSec 同意此通信流以“明文”形式传送(不加密)。 有关“软关联”的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:234580?
(http://support.microsoft.com/kb/234580/EN-US/
)
"Soft Associations" Between IPSec-Enabled and Non-IPSec-Enabled Computers 注意:在 Microsoft Windows XP 和 Windows Server 2003 系列中,“IP 安全监视器”是以 Microsoft Management Console (MMC) 控制台的方式实现的。要添加“IP 安全监视器”管理单元,请按照下列步骤操作:
网络监视器在尝试 ping 计算机时,您可以使用“网络监视器”捕获通过 WIN2003extIP 接口的通信流。如果您在捕获文件中能够看到这样的 ICMP 数据包:它们具有的源 IP 地址和目标 IP 地址对应于您发出 ping 命令的计算机和您 ping 的计算机的 IP 地址,则表明 IPSec 没有保护通信流。如果没有看到此类 ICMP 通信流,而是看到了 ISAKMP 和 ESP 数据包,则表明 IPSec 在保护通信流。如果您只使用“验证头”(AH) IPSec 协议,则会看到 ISAKMP 通信流后面跟着 ICMP 数据包。ISAKMP 数据包是实际发生的 IKE 协商,而 ESP 数据包是由 IPSec 协议加密的负载数据。要安装“网络监视器”,请按照下列步骤操作:
实际测试
参考 有关“路由和远程访问”服务的更多信息,请参阅 Windows Server 2003 联机帮助。 要查看 Windows Server 2003 Resource Kit 及其他技术文档,请访问以下 Microsoft 网站: http://www.microsoft.com/windowsserver2003/default.mspx
(http://www.microsoft.com/windowsserver2003/default.mspx)
有关 IETF 标准方面的信息,请访问以下网站:
这篇文章中的信息适用于:
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。 | 文章翻译
|

回到顶端
