| 简介 | |
| Windows Server 2003站点到站点VPN的组件 | |
| 部署基于PPTP的站点到站点VPN连接 | |
| 部署基于L2TP/IPSec的站点到站点VPN连接 | |
| 附录A:配置防火墙和Windows Server 2003 VPN路由器 | |
| 附录B:候补配置 | |
| 附录C:故障诊断 | |
| 总结 | |
| 相关链接 |
虚拟专用网(VPN)是专用网络的扩展,它跨越共享或公共网络(例如 Internet)建立链接。通过VPN,您可以跨越一个共享或公共网络,以模拟点到点专用链接(例如基于电信运营商的长距离广域网[WAN]链接)的方式在两台计算机间传输数据。创建和配置一个虚拟专用网络的具体行动被称为虚拟专用网链接。
为了模拟点到点链接,需要使用一个带有路由信息的数据报头对数据进行封装,以便允许数据通过共享或公共网络到达其目的地。为了模拟一条专用链接,出于安全性考虑,数据将进行加密。如果没有密钥,即使在共享或公共网络截取到数据包也无法对其进行解读。对专有数据进行封装和加密的逻辑链接便是一个 VPN 链接。
图1展示了 VPN 连接的逻辑示意。

图1:VPN 连接的逻辑示意图
现在,在家中或旅途中工作的用户可以通过公共网络(例如 Internet)所提供的基础构架,使用 VPN 连接与企业服务器建立远程访问连接。从用户的角度来看,VPN 连接是一个计算机(VPN 客户端)和企业服务器(VPN 服务器)之间的点到点连接。对他们来说,并不关注共享或公共网络的确切基础构架,因为数据似乎是通过一个专门的专用链接来进行传输的。
企业也可以使用 VPN 连接来建立跨越公共网络(例如 Internet)的站点到站点连接,将位置分散的办公室或其他公司连接在一起,并同时保证安全的通讯。从逻辑上来看,站点到站点 VPN 连接将作为一个专门的 WAN 链接进行运作。
通过远程访问和站点到站点连接,企业就可以使用 VPN 连接与 Internet 服务提供商(ISP)进行交易,将远程拨号或租用线路转换为本地拨号或租用线路。
在 Windows Server 2003 操作系统中,有两种类型的基于 PPP 的站点到站点 VPN 技术:
1. | 点到点隧道协议(PPTP) PPTP 利用用户级别的点到点协议(PPP)身份验证方式和 Microsoft 点到点加密(MPPE)进行数据加密。 |
2. | 具有 Internet 协议安全(IPSec)的第二层隧道协议(L2TP) 具有 IPSec 的 L2TP (L2TP/IPSec) 利用用户级别的 PPP 身份验证方式和 IPSec 来实现使用证书的计算机身份验证,并确保数据的身份验证、完整性和加密。 |
注意: 在采用 IPSec 隧道模式实现站点到站点 VPN 连接时,可以使用运行 Windows Server 2003 的计算机。由于 IPSec 隧道并不是数据包转发和接收的逻辑接口,因此无法在 IPSec 隧道上运行路由协议。用于站点到站点 VPN 连接的 IPSec 隧道配置有着很大的差别,我们将不在本文中进行讨论。详细信息,请参阅Microsoft 知识库中的252735-"如何在 Windows 2000 中配置 IPSec 隧道
对于加密,您可以选择链接加密,或者在链接加密以外再进行端到端加密:
| • | 链接加密只针对路由器之间链接上的数据。对于PPTP连接而言,您在使用 MPPE 时必须结合 MS-CHAP、MS-CHAP v2 或 EAP-TLS 身份验证。而对于L2TP/IPSec 连接,则由 IPSec 为路由器之间的链接提供加密。 |
| • | 端到端加密对数据源主机和最终目的地之间的数据进行加密。在建立了站点到站点的 VPN 连接后,您可以使用IPSec来对从数据源主机发送到目标主机的数据进行加密。 |
Windows Server 2003 路由和远程(Routing and Remote Access)服务支持通过拨号连接(例如模拟电话线路或 ISDN)、VPN 连接和 PPP over Ethernet (PPPoE) 连接的请求拨号路由(也称为“按需拨号路由”)。请求拨号路由是跨越点到点协议(PPP)链接的数据包转发。在Windows Server 2003 路由和远程访问服务中,这种 PPP 链接将作为请求拨号的接口,用来创建跨越拨号、非永久或永久媒介的请求连接。请求拨号连接允许您在低流量情况下使用拨号电话线路,而不是采用租用线路;并利用 Internet 的连通性,通过 VPN 连接将各分公司连接在一起。
请求拨号路由与远程访问不同。远程访问将一台单独的计算机连接到网络中;而请求拨号则连接整个网络。但是,它们都使用 PPP 作为基本协议,通过这个协议进行连接的协商和身份验证,并对其中发送的数据进行封装。在 Windows Server 2003 路由和远程访问服务中,可以单独启用远程访问和请求拨号。但是,它们仍然共享下列内容:
| • | 用户帐户的拨号属性行为。 |
| • | 安全性(身份验证协议和加密)。 |
| • | 使用远程访问策略。 |
| • | 使用Windows 或远程身份验证拨号用户服务(Remote Authentication Dial-In User Service,RADIUS)——用于身份验证,授权和记帐。 |
| • | IP地址分配和配置。 |
| • | 使用PPP 特性,例如微软点到点压缩(Microsoft Point-to-Point Compression,MPPC)、多链接PPP和带宽分配协议(Bandwidth Allocation Protocol,BAP)。 |
| • | 故障诊断工具,包括事件日志、Windows或RADIUS身份验证和记帐日志,以及跟踪。 |
虽然请求拨号路由的概念十分简单,但其配置却要相对复杂的多。配置的这种复杂性源于下面几个因素:
| • | 连接端点寻址。连接必须通过公共数据网络,例如模拟电话系统或 Internet。连接的端点必须通过拨号连接的电话号码或 VPN 连接的完全合格主机名称或 IP 地址来进行识别。 |
| • | 呼叫者的身份验证和授权。 所有呼叫路由器的用户都必须经过身份验证和授权。身份验证是基于呼叫者的证书集的,在连接建立过程中呼叫者将提交证书。这些证书必须是对应于一个帐户的。授权则根据帐户和远程访问策略的拨号属性进行分配。 |
| • | 远程访问客户端和呼叫路由器之间的差异。 路由和远程访问服务共同存在于运行 Windows Server 2003 的计算机中。而远程访问客户端和请求拨号路由器又都可以初始化一个连接。因此,运行 Windows Server 2003 的计算机在对连接尝试做出响应时,必须能够区分远程访问客户端和请求拨号路由器。 在初始化这个连接的路由器(呼叫路由器)所发送的身份验证证书中包含有一个用户名;同时,响应这个连接尝试的 Windows Server 2003(响应路由器)的请求拨号接口也拥有一个名称。如果这两个名称相一致,那么这个连接就是请求拨号连接。否则,这个传入的连接就是远程访问连接。 |
| • | 连接两端的配置。 连接的两端都必须进行配置,即使只由连接的其中一端初始化请求拨号连接。如果仅配置连接的其中一端,那么数据包只能朝一个方向进行成功的路由。而通讯通常要求双方向的信息传递。 |
| • | 静态路由的配置。 在临时的请求拨号连接上,您不应该使用动态路由协议。因此,必须在请求拨号路由器的路由表中添加可以跨越请求拨号接口的网络 ID 路由,例如静态路由。您可以手动地添加静态路由,也可以使用自动静态更新进行添加。 |
请求拨号路由更新
当通过请求拨号路由来节约连接成本时,典型的路由协议总依赖于周期性公布过程与路由信息进行通讯。例如,RIP-for-IP 每隔 30 秒钟公布一次其所有接口上的路由表的内容。此操作对永久性连接的 LAN 或 WAN 线路不成问题。对于敏感用途的拨号 WAN 线路,此周期性的操作类型可能导致路由器每隔 30 秒钟就呼叫其他路由器,这会导致预料之外的电话费用。因此,不应该运行通过临时拨号 WAN 线路的路由协议。
如果不使用路由协议更新路由表,那么必须输入路由作为静态路由。手动或自动输入与通过接口可获得的网络ID对应的静态路由。请求拨号接口静态路由的自动输入称为自动静态更新,运行“路由和远程访问”的服务器支持该功能。RIP-for-IP 支持自动静态更新,但 OSPF 不支持。
在执行过程中,对自动静态更新配置的请求拨号接口将通过活动连接发送请求,以获取连接的另外一端路由器中的所有路由。在响应请求时,将请求的路由器的所有路由自动输入为请求路由器路由表中的静态路由。静态路由也是永久的;它们将保留在路由表中,即使接口断开或重新启动路由器。自动静态更新是路由信息的一次性单向交换。
您可以将更新作为计划任务执行,这样就可以自动化并计划执行自动静态更新。详细信息,请参阅Windows Server 2000帮助和支持中的“计划自动静态更新”。
注意: 自动静态中的“自动”是指将请求路由自动添加为路由表中的静态路由。通过明确的操作执行发送路由请求:当请求拨号接口处于连接状态时,通过“路由和远程访问”或 Netsh 实用程序。每次进行请求拨号连接时,不会自动执行自动静态更新。
站点到站点 VPN 连接是一种请求拨号连接,它使用VPN隧道协议(例如PPTP或L2TP/IPSec)来连接专用网络的两个部分。每个VPN路由器都提供一个与VPN路由器所属网络的路由连接。在站点到站点VPN连接中,任何一个路由器通过VPN连接发送的数据包通常都不在路由器上初始化。
呼叫路由器(VPN 客户端)初始化这个连接。应答路由器(VPN 服务器)侦听连接请求,接收来自呼叫路由器的连接请求,并根据请求建立连接。呼叫路由器向应答路由器证明自己的身份。在使用共有身份验证协议(例如 MS-CHAP v2 或 EAP-TLS)时,应答路由器也向呼叫路由器证明自己身份。
表1列出了与站点到站点 VPN 兼容的 Microsoft 操作系统。
表1 与站点到站点 VPN 兼容的 Microsoft 操作系统
| VPN 隧道协议 | Microsoft 操作系统 |
PPTP | Windows Server 2003, Windows 2000 Server, 具有路由和远程访问服务(RRAS)的Windows NT version 4.0 |
L2TP/IPSec | Windows Server 2003, Windows 2000 Server |
VPN 路由器可以是任何计算机,只要它能够创建使用MPPE的路由PPTP连接,或创建使用IPSec加密的路由L2TP连接。
请求连接与永久连接
站点到站点 VPN 连接可以是请求连接,也可以是永久连接:
| • | 请求的站点到站点连接是在流量必须通过该连接转发时所建立的连接。首先建立连接,接着转发流量,然后在所配置的空闲时间过后中断这个连接。您可以为应答路由器配置空闲断开行为:在用于这个站点到站点VPN的远程访问协议的配置文件属性拨号限制选项卡中进行设置。 您也可以为呼叫路由器配置空闲断开行为:在路由和远程访问嵌入式管理单元中的请求拨号接口属性的选项选项卡中设置。 |
| • | 永久的站点到站点连接总处于连接状态。如果这个连接出现了故障,会立即重试。要为应答路由器配置永久连接,请在用于站点到站点连接的远程访问策略的配置文件属性中,清除拨号限制选项卡中的 在连接前可保持空闲的分钟数和客户端可以被连接的分钟数复选框(这些设置是默认禁用的)。要为呼叫路由器配置永久连接,请在请求拨号接口属性的选项选项卡中选中永久连接。 |
如果呼叫路由器使用拨号链接(例如模拟电话线路或ISDN)连接到Internet,那么您需要配置一个拨号请求的站点到站点VPN连接,由应答路由器中的一个请求拨号接口和呼叫路由器中的两个请求拨号接口组成:一个用于连接到本地Internet服务提供商(ISP),另一个用于这个站点到站点VPN连接。拨号请求的站点到站点VPN连接还需要呼叫路由器IP路由表中的一个额外的主机路由。详细信息,请参阅Windows Server 2003帮助和支持中的“拨号路由器到路由器VPN连接”。
不论是请求的或永久的站点到站点VPN连接,应答路由器总是一直连接到Internet的。
限制请求拨号连接的初始化
为了避免呼叫路由器建立不需要的连接,您可以按照下列的几种方式来限制呼叫路由器建立请求的站点到站点VPN连接:
| • | 请求拨号筛选。 您可以使用请求拨号筛选来决定哪种类型的IP流量不能导致请求拨号连接的建立,也可以配置哪种类型的IP流量可以导致建立连接。配置请求拨号筛选的方法是:在路由和远程访问嵌入式管理单元的网络接口节点的请求拨号接口上点击右键,然后点击设置IP请求拨号筛选器。 |
| • | 拨出时间。 您可以使用拨出时间来配置允许或禁止呼叫路由器建立站点到站点VPN连接的时间段。配置拨出时间的方法是:在路由和远程访问嵌入式管理单元的网络接口节点的请求拨号接口上点击右键,然后点击拨出时间。 |
您可以使用远程访问策略来配置允许传入请求拨号路由连接的时间。
单向和双向初始化的连接
在使用单向初始化的连接时,一台VPN路由器总是呼叫路由器,而另一台VPN路由器总是应答路由器。单向初始连接很适合分散和集中拓扑,在这种结构中,分公司的路由器是唯一初始化连接的路由器。单向初始化的连接需要满足下列条件:
| • | 应答路由器被配置为LAN和请求拨号路由器。 |
| • | 为应答路由器访问和验证的呼叫路由器的身份验证凭据添加用户帐户 |
| • | 在应答路由器上配置了请求拨号接口,并且其名称与呼叫路由器所使用的用户帐户名称相同。这个请求拨号接口不是用于拨号的,因此它并没有配置呼叫路由器的主机名或IP地址,也没有配置有效的用户证书。 |
在使用双向初始化的连接时,每个VPN路由器既可以是呼叫路由器,也可以是应答路由器,这取决于哪个路由器初始化的这个连接。两个VPN路由器都必须配置为初始化和接受站点到站点VPN连接。当站点到站点VPN连接不是24小时都处于活动状态时,您可以使用双向初始化的连接,每个路由器的流量都可以用来创建请求连接。双向初始化的站点到站点VPN连接需要满足下列条件:
| • | 两个路由器都通过永久的WAN链接连接到Internet。 |
| • | 两个路由器都被配置为LAN和请求拨号路由器。 |
| • | 在两个路由器中都添加了用户帐户,这样应答路由器可以访问和检验呼叫路由器的身份验证证书。 |
| • | 必须在两个路由器上都完全配置请求拨号接口,并使用与呼叫路由器所使用的用户帐户相同的名称,还包括配置应答路由器的主机名称或IP地址以及用户帐户证书。 |
表2给出了在路由器1(在西雅图站点中的请求拨号路由器)和路由器2(在纽约站点中的请求拨号路由器)之间建立双向初始化的请求拨号路由的正确配置示例。
表2 双向初始化的请求拨号路由的正确示例配置
| 路由器 | 请求拨号接口名称 | 用户证书中的用户帐户名称 |
路由器 1 | DD_NewYork | DD_Seattle |
路由器 2 | DD_Seattle | DD_NewYork |
请留意在一个路由器的请求拨号接口证书中的用户帐户名称是如何与另一个路由器的请求拨号接口名称相匹配的。
图2给出了Windows Server 2003站点到站点虚拟专用网络的组件。
主要组件包括:
| • | VPN路由器 |
| • | Internet基础构架 |
| • | 内部网络基础构架 |
| • | 身份验证,授权和记帐(AAA)基础构架 |
| • | 证书基础构架 |
VPN路由器可以初始化或接受VPN请求拨号连接,由下列组件组成:
| • | 路由和远程访问服务。 呼叫和应答路由器上的路由和远程访问服务都通过路由和远程访问服务器安装向导来进行配置。 | ||||
| • | 端口。 端口是能够支持单个PPP连接的逻辑或物理通道。物理端口基于安装在VPN路由器上的设备。虚拟专用网络(VPN)端口是逻辑端口。 | ||||
| • | 请求拨号接口。 配置在呼叫路由器上的请求拨号接口代表了PPP连接,并包含有使用的端口类型、用于创建连接的地址(IP地址或域名)、身份验证方式、加密要求以及身份验证证书等配置信息。 对于双向初始化的连接而言,配置在应答路由器上的请求拨号接口代表了连向呼叫路由器的PPP连接。而对于单向初始化的连接而言,它使用呼叫路由器用户帐户上的静态路由,不需要在应答路由器上配置请求拨号接口。 | ||||
| • | 用户帐户。 为了对呼叫路由器进行身份验证,呼叫路由器的证书必须通过相应用户帐户的属性进行检验。如果将应答路由器配置为Windows身份验证,那么呼叫路由器身份验证证书中的用户帐户必须可以使用Windows安全性进行检验。如果应答路由器配置为RADIUS身份验证,那么RADIUS必须能够访问呼叫路由器身份验证证书的用户帐户。 这个用户帐户必须具有下列设置:
对于单向初始化的连接而言,您可以在拨号选项卡中配置静态IP路由,该IP路由将在请求拨号连接建立时被添加到应答路由器的路由表中。 | ||||
| • | 路由。 要通过站点到站点VPN连接转发流量,VPN路由器路由表中的IP路由必须被配置为使用正确的请求拨号接口。 对于单向初始化的连接,请按常规方法配置呼叫路由器。而对于应答路由器,您可以配置呼叫路由器身份验证证书中所指定的用户帐户以及静态IP路由。 | ||||
| • | 远程访问策略。 在应答路由器或Internet身份验证服务(IAS)服务器(作为应答路由器的RADIUS服务器)上,要指定用于请求拨号连接的连接参数,请创建一个包括所有呼叫路由器用户帐户的用户组,然后创建一个单独的远程访问策略,在这个组上使用Windows-Groups属性集。对于请求拨号连接,不需要创建单独的远程访问策略。 |
呼叫路由器完成下列工作:
| • | 根据管理员行为,或在被转发的数据包符合使用VPN请求拨号接口的路由时,初始化VPN连接。 |
| • | 在转发数据包之前等待身份验证和授权。 |
| • | 作为其站点中的节点和应答路由器之间的路由器转发数据包。 |
| • | 作为VPN连接的端点。 |
应答路由器完成下列工作:
| • | 侦听VPN连接尝试。 |
| • | 在允许数据转发之前,对VPN连接进行身份验证和授权。 |
| • | 作为其站点中的节点和呼叫路由器之间的路由器转发数据包。 |
| • | 作为VPN连接的端点。 |
VPN路由器通常安装有两个网络适配器:其中一个网络适配器连接到Internet,而另一个网络适配器连接到内部网络。
在您配置和启用路由和远程访问服务时,路由和远程访问服务器安装向导将提示您选择该计算机所扮演的角色。对于VPN路由器,您应该选择远程访问(拨号或VPN)选项。在选择了远程访问(拨号或VPN)选项后,路由和远程访问服务器将作为VPN服务器运行,同时支持远程访问和站点到站点的VPN连接。为了实现远程访问VPN连接,用户可以运行VPN客户端软件,并初始化一个连接到VPN服务器的远程访问连接。为了实现站点到站点VPN连接,路由器将初始化一个连接到VPN服务器的VPN连接。然后,VPN服务器可以初始化一个连接到另一个VPN路由器的VPN连接。
注意: Microsoft推荐在路由和远程访问服务器安装向导中选择远程访问(拨号或VPN),而不是两个专用网络间的安全连接,这是因为两个专用网络间的安全连接选项不会提示您选择用于自动配置数据包筛选器的Internet接口,也不会提示您配置RADIUS服务器,它只会创建5个PPTP和5个L2TP端口。
当您在路由和远程访问服务器安装向导中选择远程访问(拨号或VPN)时:
1. | 首先它会提示您指定是否需要VPN、拨号或同时需要两种访问类型。 |
2. | 然后,提示您选择连接到Internet的接口。您所选择的接口将自动地配置有数据包筛选器,只允许PPTP或L2TP相关的流量(除非您清除通过设置静态数据包筛选器,启用所选接口的安全性复选框)。所有其他流量都被无声地禁止了。例如,您将无法再ping到VPN服务器的Internet接口。如果您希望将这个VPN服务器计算机作为网络地址转换器(NAT)、Web服务器或其他功能,请参阅附录B。 |
3. | 接着,如果您拥有多个连接到内部网络的网络适配器,那么将提示您选择通过哪个接口获得DHCP、DNS和WINS配置。 |
4. | 然后,提示您确定您是否希望使用DHCP获得IP地址,或通过指定的地址范围为远程访问客户端进行IP分配。如果您选择指定的地址范围,那么将提示您添加一个或多个地址范围。 |
5. | 然后,提示您指定是否希望使用RADIUS作为您的身份验证提供者。如果您选择了RADIUS,那么将提示您配置主要和预备RADIUS服务器以及共享的密钥。 |
当您在路由和远程访问服务器安装向导中选择远程访问(拨号或VPN)时,其结果将是:
1. | 启用路由和远程访问服务器,同时作为远程访问服务器以及LAN和请求拨号路由器,并采用Windows作为身份验证和记帐提供者(除非选择和配置了RADIUS)。如果只有一个网络适配器连接到内部网络,那么这个网络适配器将自动地被选为IP接口,从这个接口处获取DHCP、DNS和WINS配置。否则,将选择向导中指定的网络适配器来获得DHCP、DNS和WINS配置。在指定情况下,将配置静态IP地址范围。 |
2. | 创建128个PPTP和128个L2TP端口。所有这些端口都可以用于入站远程访问连接和出站请求拨号连接。 |
3. | 选定的Internet接口将配置有入站和出站IP数据包筛选器,仅允许通过PPTP和L2TP/IPSec流量。 |
4. | 在内部接口中添加DHCP Relay Agent组件。如果在运行向导时,VPN服务器是一个DHCP客户端,那么DHCP Relay Agent 将被自动地配置为DHCP服务器的IP地址。否则,您必须手动地使用您内部网络中DHCP服务器的IP地址来配置DHCP Relay Agent的属性。DHCP Relay Agent将在VPN远程访问客户端和内部网DHCP服务器之间转发DHCPInform数据包。 |
5. | 添加IGMP组件。内部接口被配置为IGMP路由器模式。所有其他LAN 接口被配置为IGMP代理模式。这使得VPN远程访问客户端可以发送和接收IP多播流量。 |
在Windows Server 2003 Web Edition和Windows Server 2003 Standard Edition中,您可以创建最多1,000个点到点隧道协议(PPTP)端口,并能创建最多1,000 个第二层隧道协议(L2TP)端口。但是,Windows Server 2003 Web Edition在一次只能接受一个虚拟专用网络(VPN)连接。而Windows Server 2003 Standard Edition可以接受最多1,000个并发VPN连接。如果已经连接了1,000个VPN客户端,那么在连接数低于1,000之前,会禁止所有的其他连接尝试。
在VPN路由器上安装证书
如果VPN路由器建立了L2TP/IPSec连接或使用EAP-TLS身份验证,那么必须在VPN路由器计算机上安装证书。对于L2TP/IPSec连接,必须同时在呼叫和应答路由器计算机上安装计算机证书,从而为建立IPSec会话提供身份验证。对于EAP-TLS身份验证,必须在身份验证服务器(应答路由器或RADIUS服务器)上安装计算机证书,并且必须在呼叫路由器上安装用户证书。
更多有关在呼叫路由器、应答路由器以及身份验证服务器计算机上安装证书的信息,请参阅本文的证书基础构架部分。
设计点:配置VPN路由器
在运行路由和远程访问服务器安装向导之前,请考虑下列问题:
| • | 哪些VPN路由器的连接应该连接到Internet? 通常连接到Internet的VPN路由器至少拥有两个LAN连接:一个连接到Internet(直接连接或连接到周边网络),另一个连接到站点。为了使得路由和远程访问服务器安装向导能够轻松地分辨出这些LAN连接,请使用网络连接根据用途或角色对这些连接进行重命名。例如,将连接到Internet的连接(默认名为局域网连接 2)的名称更改为Internet。 | ||||
| • | VPN路由器可以是DHCP客户端吗? VPN路由器必须为其Internet接口手动配置TCP/IP。虽然在技术上可能实现,但我们不建议将VPN路由器作为其内部网接口的DHCP客户端。介于VPN路由器的路由需求,手动配置IP地址、子网掩码、DNS服务器和WINS服务器,但是不要配置默认网关。 请注意,VPN路由器可以拥有手动TCP/IP配置,并仍用DHCP为远程访问VPN客户端和其他呼叫路由器获得IP地址。 | ||||
| • | 如果将IP地址分配给远程访问VPN客户端和其他呼叫路由器? VPN路由器可以被配置为从DHCP,或者从手动配置的地址范围中获得IP地址。使用DHCP来获得IP地址能够简化配置过程,但是您必须确信为呼叫路由器的站点连接所附属的子网所分配的DHCP范围具有足够多的地址,能够满足物理连接到子网的所有计算机以及最大数量的PPTP和L2TP端口。例如,如果这个VPN路由器站点连接所附属的子网拥有50个DHCP客户端,那么为了满足VPN路由器的默认配置,这个地址范围应该包含至少307个地址(50个计算机 + 128个PPTP客户端 + 128个L2TP客户端 + 1个用于VPN路由器的地址)。如果在这个范围中没有足够的IP地址,那么在所有的地址都被分配后,远程访问VPN客户端和连接的呼叫路由器将采用自动专用IP寻址(APIPA)段中的地址169.254.0.0/16。 如果您配置了一个静态地址池,请确保这个池拥有足够的地址能够分配给您的PPTP和L2TP端口,并需要为VPN路由器提供一个地址。如果在静态池中没有足够的地址,远程访问VPN客户端和Windows NT 4.0 RRAS呼叫路由器将无法进行连接。但是,Windows Server 2003呼叫路由器仍然可以进行连接。Windows Server 2003呼叫和应答路由器在建立连接的过程中,仍然需要请求对方的IP地址。但是,如果其中一个路由器没有分配到地址,两个路由器仍然将继续连接建立过程。点到点连接上的逻辑接口没有指定的IP地址。这也被称为无编号连接。虽然Windows Server 2003 VPN路由器支持无编号连接,但Windows Server 2003中所包含的路由协议无法在无编号连接上进行工作。 如果您正在配置一个静态地址池,可能还有一些其他的路由考虑事项。详细信息,请参阅本文的站点网络基础构架。 | ||||
| • | 什么是身份验证和记帐提供者? VPN路由器可将Windows或RADIUS作为其身份验证或记帐提供者。 当采用Windows作为身份验证和记帐提供者时,VPN路由器使用Windows安全性来检验呼叫路由器的证书,并访问呼叫路由器的用户帐户拨号属性。本地配置的远程访问策略对VPN连接进行授权,本地记录的帐户日志文件记录下VPN连接帐户信息。 当采用RADIUS作为身份验证和记帐提供者时,VPN路由器使用配置的RADIUS 服务器来检验呼叫路由器的证书,授权连接尝试,并存储VPN连接帐户信息。 | ||||
| • | 您是否建立L2TP/IPSec连接? 如果是,您必须同时在呼叫路由器和应答路由器计算机上安装计算机证书。 | ||||
| • | 您是否使用具有EAP-TLS的用户级证书身份验证? 如果是,您必须在呼叫路由器计算机上安装用户证书,必须在身份验证服务器(应答路由器计算机[如果应答路由器被配置为Windows身份验证提供者]或RADIUS服务器[如果应答路由器被配置为RADIUS身份验证提供者])上安装计算机证书。如果身份验证服务器是Windows Server 2003 VPN路由器或Windows Server 2003 Internet 身份验证服务(IAS)服务器,那么只有在身份验证服务器是Active Directory服务域成员时,才能使用EAP-TLS。 | ||||
| • | 对于请求连接,您是否需要避免在某个时间段内同时建立多个连接,或避免某些类型的流量同时建立多个连接? 如果是,请在呼叫路由器的请求拨号接口上配置拨出时间或请求拨号筛选器。 | ||||
| • | 您是否希望使您的IP数据包筛选器与请求拨号筛选器相一致? 请求拨号筛选器将在连接建立之前加以应用。而IP数据包筛选器则在连接建立之后加以应用。为了避免为IP数据包筛选器所禁止的流量建立请求拨号连接,您需要:
|
在为站点到站点VPN连接更改VPN路由器的默认配置时,请考虑下列问题:
| • | 您是否希望支持远程访问VPN连接? 在默认情况下,所有的PPTP和L2TP都被配置为同时允许远程访问连接(仅限入站的)和请求拨号路由连接(入站的和出站的)。为了禁用远程访问连接,创建一个专门的站点到站点VPN连接服务器,请在路由和远程访问嵌入式管理单元的端口对象中,清除WAN小端口(PPTP)和WAN小端口(L2TP)设备属性中的远程访问连接(仅限入站的)复选框。或者,您也可以清除VPN服务器属性中常规选项卡的远程访问服务器复选框。 |
| • | 您是否需要安装计算机证书? 如果VPN路由器支持L2TP/IPSec连接,使用EAP-TLS身份验证协议来对连接进行身份验证,或配置为使用Windows身份验证提供者,那么您必须安装计算机证书。如果VPN路由器是使用EAP-TLS身份验证协议的呼叫路由器,那么您必须安装用户证书。详细信息,请参阅本文的“证书基础构架”部分。 |
| • | 您是否需要为VPN连接定制远程访问策略? 如果您为Windows身份验证或为RADIUS身份验证(同时RADIUS服务器是IAS服务器)配置了VPN路由器,那么默认的远程访问策略将拒绝所有类型的连接尝试,除非用户帐户拨号属性的远程访问权限被设置为允许访问。如果您希望通过组或连接类型来管理授权和连接参数,您必须配置其他的远程访问策略。详细信息,请参考本文的远程访问策略部分。 |
| • | 您是否需要独立的身份验证和记帐提供者? 路由和远程访问服务器安装向导将身份验证和记帐提供者配置为同一个。在向导完成之后,您可以单独地配置身份验证和记帐提供者(例如,您希望使用Windows身份验证和RADIUS记帐)。您可以在路由和远程访问嵌入式管理单元的VPN路由器属性的身份验证选项卡中配置身份验证和记帐提供者。 |
在配置了VPN路由器后,您可以使用路由和远程访问嵌入式管理单元,开始创建请求拨号接口,配置路由。详细信息,请参阅本文的“部署基于PPTP的站点到站点VPN连接”和“部署基于L2TP/IPSec的站点到站点的VPN连接”。
要创建一个跨越Internet的站点到站点的VPN连接连接到应答路由器:
| • | 这个应答路由器的名称必须是可解析的。 |
| • | 这个应答路由器必须是可达到的。 |
| • | 必须允许从这个应答路由器进出的VPN流量。 |
应答路由器名称解析性
虽然可以使用连接建立的应答路由器的名称来配置请求拨号接口,但是我们推荐您使用IP地址,而不是名称。如果您使用名称,那么它将被解析为应答路由器的公共IP地址,发送到VPN路由器上所运行服务的流量将以纯文本形式在Internet中传送。
应答路由器可到达性
为了能够到达,必须为应答路由器分配公共IP地址,使数据包能够通过Internet的路由基础构架进行转发。如果您已经为其分配了来自ISP或Internet注册机构的静态公共IP地址,通常不会有任何问题。在一些配置中,应答路由器实际上被配置为专用IP地址,而仅具有一个发布的静态IP地址,通过这个地址来让Internet的用户进行访问。Internet和应答路由器之间的设备将对进出应答路由器的数据包中的发布的 和真实的IP地址进行转换。
虽然路由基础构架可能有效,但是应答路由器仍然可能无法达到,可能是由于防火墙、数据包筛选路由器、网络地址转换器、安全性网关,或者其他类型的阻止应答路由器计算机发送或接受数据包的设备。
VPN路由器和防火墙配置
VPN路由器和防火墙的配合使用有两种方法:
1. | VPN路由器直接连接到Internet,而防火墙位于VPN路由器和站点之间。 在这种配置中,您必须使用数据包筛选器来配置这个VPN路由器,仅允许VPN 流量从它的Internet接口进出。防火墙可以配置为允许特定类型的站点内流量。 |
2. | 防火墙连接到Internet,而VPN路由器位于防火墙和站点之间。 在这种配置中,防火墙和VPN路由器都连接到一个被称为周边网络(也被称为隔离区域[DMZ]或被屏蔽的子网)的网络上。防火墙和VPN路由器都必须使用数据包筛选器进行配置,仅允许VPN流量进出Internet。图2显示了这种配置。 |
有关在这两种配置中为VPN和防火墙配置数据包筛选器的详细信息,请参阅附录A。
设计点:应答路由器的Internet可访问性
在为站点到站点VPN连接配置您的Internet基础构架时,请考虑下列问题:
| • | 在任何可能的情况下,请使用应答路由器的IP地址来配置您的请求拨号接口。如果您使用名称,那么请确保您应答路由器的DNS名称可以进行解析,可以在您的Internet DNS服务器或ISP的DNS服务器中添加合适的DNS记录。使用ping工具来ping每个应答路由器的名称,检查名称的可解析性。由于数据包筛选,ping命令的结果可能是"Request timed out",但请检查指定的名称被ping工具解析为正确的IP地址。 |
| • | 确保您应答路由器的IP地址可以从Internet到达,您可以使用ping工具来ping应答路由器的名称或地址,并在直接连接到Internet时将timeout设置为5秒(使用-w命令行选项)。如果您获得一个"Destination unreachable"错误信息,那么表示这个应答路由器是无法到达的。 |
| • | 在连接到Internet和周边网络的防火墙及应答路由器接口上配置数据包筛选,针对PPTP流量、L2TP/IPSec流量或两者皆有。您可以通过路由和远程访问服务器安装向导来自动地配置正确的数据包筛选器,您可以选择远程访问(拨号或VPN)配置。详细信息,请参阅附录A。 |
为了对尝试创建PPP连接的呼叫路由器进行身份验证,Windows Server 2003支持了大量不同的PPP身份验证协议,包括:
| • | 密码身份验证协议(PAP) |
| • | Shiva密码身份验证协议(SPAP) |
| • | 质询握手身份验证协议(CHAP) |
| • | Microsoft质询握手身份验证协议(MS-CHAP) |
| • | MS-CHAP版本2 (MS-CHAP v2) |
| • | 可扩展身份验证协议-消息摘要 5 (EAP-MD5) |
| • | 可扩展身份验证协议-传输层协议(EAP-TLS) |
对于PPTP连接,您必须使用MS-CHAP、MS-CHAP v2或EAP-TLS。只有这三种身份验证协议才能同时在呼叫路由器和应答路由器上生成相同的加密密钥。MPPE使用这个加密密钥对所有VPN连接上发送的PPTP数据进行加密。MS-CHAP和MS-CHAP v2是基于密码的身份验证协议。
在不使用用户证书时,强烈推荐使用MS-CHAP v2。因为它是比MS-CHAP更强大的身份验证协议,能够提供共有的身份验证。通过共有身份验证,应答路由器和呼叫路由器能够进行相互的身份验证。
注意: 如果您必须使用一个基于密码的身份验证协议,那么请在网络中强制使用强健的密码。强健的密码是长密码(多于8个字符),由大小写字母、数字和符号随机的组成。例如f3L*02~>xR3w#4o就是一个强健的密码。
EAP-TLS的使用是于证书基础构架以及用户证书相结合的。通过EAP-TLS,呼叫路由器发送用户证书用于身份验证,身份验证服务器(应答路由器或RADIUS服务器)发送计算机证书用于身份验证。这是最强健的身份验证方式,它不依赖于密码。如果身份验证服务器是Windows Server 2003 VPN路由器或IAS服务器,EAP-TLS只有在该身份验证服务器是Active Directory域成员时才能使用。
注意: 您可以使用第三方CA作为EAP-TLS证书。详细信息,请参阅白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
对于L2TP/IPSec连接,您可以使用所有的PPP身份验证协议,因为用户身份验证是在呼叫路由器和应答路由器已经建立安全的通讯通道(被称为IPSec安全关联[SA])之后进行的。但是,我们还是推荐使用MS-CHAP v2 或EAP-TLS。
设计点:使用哪种身份验证协议?
在为VPN连接选择身份验证协议时,请考虑下列内容:
| • | 如果您使用签署用户证书的证书基本构架,那么请为PPTP和L2TP连接使用EAP-TLS身份验证协议。Windows NT 4.0 RRAS路由器不支持EAP-TLS。 |
| • | 如果您必须使用一个基于密码的身份验证协议,则请使用MS-CHAP v2,并通过组策略强制采用强健的密码。运行Windows Server 2003、Windows 2000和Windows NT 4.0(具有RRAS和Service Pack4及更新版本)的计算机支持MS-CHAP v2。 |
Windows Server 2003支持两种基于PPP的站点到站点VPN协议:
1. | 点到点隧道协议 |
2. | 具有IPsec的第二层隧道协议 |
点到点隧道协议
PPTP最初在Windows NT 4.0中引入,它利用点到点协议(PPP)用户身份验证和微软点到点加密(MPPE)来对IP流量进行封装和加密。当使用MS-CHAP v2并具有强健的密码时,PPTP是一种安全的VPN技术。对于非基于密码的身份验证,可以在Windows Server 2003中使用EAP-TLS来支持用户证书。PPTP是被广泛支持的,并且能方便地部署,它可以用来跨越大部分的网络地址转换器(NAT)。
具有IPSec的第二层隧道协议
L2TP利用PPP用户身份验证和IPSec封装式安全措施负载 (ESP)传输模式来封装和加密IP流量。这种组合(被称为L2TP/IPSec)使用基于证书的计算机身份验证,它不仅创建基于PPP的用户身份验证,而且还创建IPSec安全关联。L2TP/IPSec为每个数据包提供了数据完整性和数据身份验证。但是,L2TP/IPSec需要一个证书基础构架来分配计算机证书,Windows Server 2003 VPN路由器和其他第三方VPN路由器支持这种协议。
设计点:PPTP或L2TP?
在为站点到站点VPN连接选择PPTP还是L2TP时,请考虑下列内容:
| • | PPTP可以于Windows Server 2003、Windows 2000以及具有RRAS的Windows NT version 4.0一起使用。PPTP不需要一个证书基础构架来签署计算机证书。 |
| • | 基于PPTP的VPN连接提供了数据保密性(被截获的数据包在没有加密密钥的情况下是无法解读的)。但是,PPTP VPN连接无法提供数据完整性(证明数据在传输过程中没有被改变)或数据身份验证(证明数据由授权的计算机发送)。 |
| • | 基于PPTP的呼叫路由器可以位于NAT的后面,因为大部分NAT都包括一个NAT编辑器,知道如何正确的转换PPTP隧道数据。例如,拨号连接的Internet连接共享(ICS)特性和Windows Server 2003路由和远程访问服务的NAT/Basic Firewall路由协议组件包括一个NAT编辑器,它能够转换来自该NAT后PPTP客户端的PPTP流量。如果只有一个公共地址,如果NAT被配置为将PPTP隧道数据转换并转发到这个VPN路由器,应答路由器不能位于NAT的后面。除非拥有多个公共IP地址,并且公共IP地址与应答路由器专用IP地址一一对应,应答路由器才能位于NAT之后。大部分只具有一个公共IP地址的NAT(包括ICS和NAT路由协议组件)可以被配置为根据IP地址以及TCP和UDP端口来允许入站流量。但是,PPTP隧道数据不使用TCP或UDP报头。因此在使用单个IP地址时,应答路由器无法位于使用ICS或NAT路由协议组件的计算机之后。 |
| • | 基于L2TP/IPSec的VPN路由器不能位于NAT之后,除非呼叫路由器和应答路由器都支持IPSec NAT Traversal (NAT-T)。只有Windows Server 2003才支持用于站点到站点VPN连接的IPSec NAT-T。 |
| • | L2TP/IPSec只能与Windows Server 2003、Windows 2000和第三方VPN路由器一同使用,并将计算机证书作为IPSec的默认身份验证方式。计算机证书身份验证需要一个证书基础构架,为应答路由器计算机和所有呼叫路由器计算机签署计算机证书。 |
| • | 通过IPSec,基于L2TP的VPN连接提供了数据保密性、数据完整性、数据身份验证以及回放保护。 |
| • | PPTP和L2TP并不是一个二选一的选择。在默认情况下,Windows Server 2003 VPN路由器同时支持PPTP和L2TP连接。您可以对于某些站点到站点VPN连接(来自运行Windows Server 2003、Windows 2000或具有RRAS的Windows NT 4.0,但没有安装计算机证书的呼叫路由器)使用PPTP,而对于其他站点到站点VPN连接(来自运行Windows Server 2003或Windows 2000并安装了计算机证书的呼叫路由器)使用L2TP。 |
| • | 如果您同时使用PPTP和L2TP,您可以创建单独的远程访问策略,为PPTP和L2TP连接定义不同的连接参数。 |
针对的网络基础构架是VPN设计的重要组成部分。如果设计不正确,呼叫路由器将无法获得正确的IP地址,并且将无法在不同站点的计算机之间交换数据包。
名称解析
如果使用域名系统(DNS)或Windows Internet名称服务(WINS)服务器的IP地址来配置呼叫路由器,那么在PPP连接协商过程中,应答路由器将不再请求DNS和WINS服务器的IP地址。如果没有使用DNS和WINS服务器的IP地址来配置呼叫路由器,那么将请求DNS 和WINS服务器。应答路由器不会从呼叫路由器请求DNS和WINS服务器IP地址。
与Windows Server 2003、Windows 2000以及Windows XP远程访问客户端不同,呼叫路由器不会向应答路由器发送DHCPInform消息,以获得其他TCP/IP配置信息。
在默认情况下,呼叫路由器并不在应答路由器的DNS或WINS服务器中注册自己。要改变这种行为,请将注册表值HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman \PPP\ControlProtocols\BuiltIn\RegisterRoutersWithNameServers设置为1。
路由
每个VPN路由器都是一个IP路由器,因此必须正确地配置路由集,使得所有的位置都可以到达。每个VPN路由器尤其需要包含下列内容:
| • | 需要一个默认路由,指向防火墙,或指向直接连接到Internet的路由器。 这个路由使得在Internet中的所有位置都可以到达。 |
| • | 对于指向相邻站点路由器的VPN路由器而言,需要一个或多个路由来总结这个路由器的站点中所使用的地址。 这些路由使得可以从该VPN路由器到达该路由器站点中的所有位置。如果没有这些路由,站点中那些与VPN路由器没有连接同一个子网的主机都是无法到达的。 |
要添加指向Internet的默认路由,请配置具有默认网关的Internet接口,然后手动地配置没有默认网关的站点接口。
要在每个VPN路由器的路由表中添加站点路由,您可以:
| • | 使用路由和远程访问嵌入式管理单元来添加静态路由。您不需要为站点中的每个子网都添加一个路由。在最少操作时,您只需要添加总结所有站点中可能地址的路由。例如,如果您的站点使用部分专用地址空间10.0.0.0/8来对您的子网和主机进行编号,那么您不需要为每个子网都添加一个路由。您只需要为10.0.0.0添加一个具有子网掩码255.0.0的路由,指向您的VPN路由器所属站点子网的相邻路由器。 |
| • | 如果您在站点中使用路由信息协议(Routing Information Protocol,RIP)或开放式最短路径优先(Open Shortest Path First,OSPF)路由协议,那么您可以添加和配置路由和远程访问服务的RIP或OSPF路由协议组件,这样VPN路由器将作为动态路由器参与到路由信息的传播工作中。 |
如果您的站点只有一个子网,那么不需要进一步的配置。
在建立站点到站点VPN连接后,每个路由器都将使用对应于该连接PPTP或L2TP端口的逻辑接口来发送流量。在PPP协商过程中,可能会为这些逻辑接口分配IP地址。VPN路由器逻辑接口的可达到性取决于您如何配置每个VPN路由器,从而为远程访问客户端和呼叫路由器获得IP地址。在连接过程中分配给VPN路由器的IP地址可以来自于:
| • | 子网内地址范围,这是VPN路由器所属站点子网的地址范围。 当VPN路由器被配置为使用DHCP来获取IP地址,或手动配置的IP地址池在所属子网地址范围以内的时候,将使用子网内地址范围。 |
| • | 子网外地址范围,这是不同于VPN路由器逻辑所属子网的另一个子网的地址范围。 当VPN路由器被手动地配置为另一个子网的IP地址池时,将使用子网外地址范围。 |
子网内地址范围
如果您正在使用一个子网内地址范围,那么不需要其他的路由配置,因为VPN路由器将作为所有指向其他连接VPN路由器逻辑接口的数据包的代理。VPN路由器子网中的路由器和主机将指向连接VPN路由器逻辑接口的数据包转发这个VPN路由器,然后由这个路由器将它们传递到合适的连接VPN路由器。
子网外地址范围
如果您正在使用一个子网外地址范围,那么您必须在站点路由基础构架中添加总结这个子网外地址范围的路由,这样指向连接VPN路由器逻辑接口的流量才能够被转发到这个VPN路由器,然后由该VPN路由器发送给合适的连接VPN路由器。为了给路由提供最佳的地址范围总结,请选择可以用一个前缀和子网掩码表示的地址范围。详细信息,请参阅Windows Server 2003帮助和支持的“用掩码表示IP地址范围”。
您可以通过下面的方法,在站点的路由基础构架中添加总结子网外地址范围的路由:
| • | 为子网外地址范围,在指向VPN路由器站点接口的相邻路由器中添加静态路由。配置这个相邻路由器使用您站点中的动态路由协议,将这个静态路由传播给站点中的其他路由器。 |
| • | 如果这个VPN路由器使用OSPF作为动态路由器,那么这个VPN路由器必须被配置为自治系统边界路由器(ASBR),这样子网外地址范围的静态路由将被传播给站点中的其他OSPF路由器。 |
如果您的站点由一个单独的子网组成,那么您必须为子网外地址访问的永久路由对每个站点主机进行配置,使这些永久路由指向VPN路由器站点接口,或者将VPN路由器作为默认网关对每个站点主机进行配置。由于子网外地址范围的路由需要额外的主机配置,因此我们建议您在使用由单个子网组成的小型办公或家庭办公(SOHO)网络时,使用子网内地址池。
设计点:路由基础构架
在配置用于站点到站点VPN连接的路由基础构架时,请考虑下列内容:
| • | 使用默认网关配置VPN路由器的Internet接口。不要使用默认网关配置VPN路由器的站点接口。 |
| • | 在VPN路由器中添加总结VPN路由器所属站点所用全部地址的静态IP路由。或者,如果您使用RIP或OSPF作为您的动态路由协议,那么请在这个VPN路由器上配置并启用RIP或OSPF。如果您使用RIP或OSPF以外的其他路由协议(例如,内部网关路由协议 [Interior Gateway Routing Protocol,IGRP]),那么请在连接到VPN路由器所属子网的接口上对相邻路由器配置RIP或OSPF,然后在所有其他接口上配置IGRP。 |
| • | 通过使用DHCP获得IP地址,或手动地配置子网内地址池,使用子网内地址范围对VPN路由器进行配置。 |
身份验证、授权和记帐(AAA)基础构架用于:
| • | 对呼叫路由器的证书进行身份验证。 |
| • | 授权VPN连接。 |
| • | 记录VPN连接的创建和中断,用于帐户记录。 |
AAA基础构架包括:
| • | 应答路由器计算机 |
| • | RADIUS服务器计算机 |
| • | 域控制器 |
正如前面所提到的,Windows Server 2003应答路由器可以被配置为使用Windows或RADIUS作为它的身份验证和记帐提供者。在您拥有多个应答路由器和远程访问VPN服务器时,或者不同的拨号和VPN设备时,RADIUS能提供集中的AAA服务。
当您将Windows配置为身份验证提供者时,应答路由器将使用安全的远程过程调用(RPC)通道与域控制器进行通讯,从而执行VPN的身份验证。它还会通过用户帐户的拨号属性和本地配置的远程访问策略来执行连接尝试的授权。
如果您将RADIUS配置为身份验证提供者,应答路由器将依赖RADIUS服务器来执行身份验证和授权。当尝试建立一个VPN连接时,应答路由器将在RADIUS Access-Request消息中把呼叫路由器证书和其他连接参数发送给配置的RADIUS服务器。如果这个连接尝试通过了身份验证和授权,那么RADIUS服务器将返回一个RADIUS Access-Accept消息。如果这个连接尝试没有通过身份验证或授权,那么RADIUS服务器将返回一个RADIUS Access-Reject消息。
当您将Windows配置为记帐提供者时,那么应答路由器将根据路由和远程访问嵌入式管理单元远程访问日志文件夹本地文件对象属性的设置选项卡中的设置,在本地日志文件(默认为SystemRoot\System32\Logfiles\Logfile.log)中记录VPN连接信息。在默认情况下,所有类型的日志都是被禁用的。Windows Server 2003也支持将连接帐户信息发送给结构化查询语言(SQL)服务器。
如果您将RADIUS配置为记帐提供者,那么应答路由器将为RADIUS服务器上的VPN连接发送RADIUS消息,在其中记录了帐户信息。
如果您使用RADIUS和Windows域作为用户帐户数据库,用于检验证书和获得拨号属性,那么Microsoft建议您使用Internet身份验证服务(IAS),它是Windows Server 2003和Windows 2000 Server的一个可选网络组件。IAS是一个全功能的RADIUS服务器,与Active Directory以及路由和远程访问服务紧密地集成。
在将IAS作为RADIUS服务器时:
| • | IAS使用安全的RPC通道与域控制器进行通讯,进而执行VPN连接的身份验证。IAS通过用户帐户的拨号属性以及在IAS服务器上配置的远程访问策略来执行对连接尝试的授权。 |
| • | IAS根据Internet身份验证服务嵌入式管理单元远程访问日志文件夹本地对象属性的配置,在本地日志文件中(默认为SystemRoot\System32\Logfiles\Logfile.log)记录所有RADIUS帐户信息。 Windows Server 2003中的IAS还支持将连接帐户信息发送给SQL服务器。 |
Windows Server 2003的IAS也可以用作RADIUS代理。详细信息,请参阅Windows Server 2003帮助和支持。
远程访问策略
远程访问策略是一组有序的规则,定义了如何接受和拒绝条件。对于接受的连接而言,远程访问策略还可以定义连接限制。每个规则拥有一个或多个条件,一系列配置文件,以及一个远程访问权限设置。连接尝试将根据远程访问策略依次地进行审核,试图确定该连接尝试是否满足每个策略的所有条件。如果连接尝试没有满足每个策略的所有条件,那么这个连接尝试将被拒绝。
如果连接满足远程访问策略的所有条件,并被授予远程访问权限,那么这个远程访问策略文件将指定一系列连接限制。用户帐户的拨号属性也会提供一些限制。在可以应用的时候,用户帐户的连接限制将替代远程访问策略连接限制。
远程访问策略由下列元素组成:
| • | 条件 |
| • | 权限 |
| • | 配置文件 |
条件
远程访问策略条件是与连接尝试设置相对比的一个或多个属性。如果有多个条件,那么所有条件都必须与连接尝试的设置匹配,以使连接尝试与策略匹配。对于VPN连接,您通常使用下列条件:
| • | NAS 端口类型。 通过将NAS端口类型条件设置为虚拟 (VPN),您可以指定所有VPN连接。 |
| • | 隧道类型。 通过将隧道类型设定为点到点隧道协议(PPTP)或第二层隧道协议(L2TP),您可以为PPTP和L2TP连接执行不同的策略。 |
| • | Windows组。 通过将Windows组设置为合适的组,您可以根据组成员资格指定连接参数。 |
权限
当用户帐户上的远程访问权限被设置为通过远程访问策略控制访问时,您可以使用权限设置来授予或拒绝连接尝试的远程访问。否则,将由用户帐户上的远程访问权限设置来确定远程访问权限。
配置文件
远程访问策略配置文件是当授权连接时应用于连接的一组属性。对于VPN连接,您可以使用下列配置文件设置:
| • | 拨号限制,用来定义连接可以存在的时间长度,以及应答路由器中断连接之前可以保持空闲的时间长度。 |
| • | 身份验证设置,用来定义在发送证书和EAP类型配置(例如EAP-TLS)时,呼叫路由器使用哪个身份验证协议。 |
| • | 加密设置,可以定义是否需要机密以及加密强度。对于加密强度而言,Windows Server 2003支持基本 (对于PPTP使用40位的MPPE,对于L2TP使用56位的数据加密标准[DES])、强(对于PPTP使用56位MPPE,对于L2TP使用56位DES)以及最强(对于PPTP使用128位MPPE,对于L2TP使用3DES)。 |
例如,您可以创建一个命名为“VPNRouters”的Windows组,并将所有呼叫路由器的用户帐户作为这个组的成员。然后,您可以使用新建远程访问策略向导来创建一个策略,指定VPN连接使用VPNRouters组。通过这个向导,您还可以选择一个特定的身份验证方式和加密强度。
注意: 远程访问策略配置文件IP选项卡中的IP数据包筛选器只应用在远程访问VPN连接上。它们对请求拨号连接没有影响。
Windows域用户帐户和组
Windows NT version 4.0域、混合模式Active Directory域以及本机模式域中包含了用户帐户和组,路由和远程访问服务使用这些用户帐户和组来对VPN连接尝试进行身份验证和授权。
用户帐户包含用户名和某种形式的用户密钥,它们可以用来检验呼叫路由器的用户证书。其他帐户属性确定是否启用或禁用、锁定这个用户帐户,或仅在指定时间段内允许登录。如果一个用户帐户被禁用、锁定或在VPN连接期间无法登录,那么这个站点到站点VPN连接将被拒绝。而且,如果呼叫路由器的用户帐户被配置为在下次登录时更改密码,那么这个站点到站点VPN连接也将失败,因为在尝试建立连接的同时更改密码是一个交换的过程。请求拨号路由器不需要能够在没有用户干预的情况下建立连接。因此,呼叫路由器的所有用户帐户都必须清除用户在下次登录时须更改密码复选框,并选中密码永不过期复选框。您可以在用户帐户属性的帐户选项卡的帐户选项中找到这些复选框。当您使用请求拨号接口向导创建拨号帐户时,这些帐户设置将被自动地配置。
您应该为每个包含呼叫路由器的站点使用不同的用户帐户。每个用户帐户应该具有与应答路由器上所配置的请求拨号接口相一致的名称。当您使用请求拨号接口向导创建拨号帐户时,这种不同站点呼叫路由器所使用的用户帐户和请求拨号接口之间的一一对应关系将自动地创建。
用户帐户还包含拨号设置。与VPN连接关系最紧密的拨号设置是远程访问权限设置,它包括下列值:
| • | 允许访问 |
| • | 拒绝访问 |
| • | 通过远程访问策略控制访问 |
允许访问和拒绝访问设置明确地允许或拒绝远程访问,它们等同于Windows NT 4.0域帐户的远程访问权限设置。当您使用通过远程访问策略控制访问设置时,远程访问权限由符合远程访问策略的远程访问权限设置来确定。如果用户帐户在一个混合模式域中,那么将无法使用通过远程访问策略控制访问设置,您必须根据每个用户来管理远程访问权限。如果用户帐户在本机模式域中,那么则可以使用通过远程访问策略控制访问设置,您可以根据用户或使用组来管理远程访问权限。当使用请求拨号接口向导创建拨号帐户时,远程访问权限将被设置为允许访问。
当使用组来管理访问时,您可以使用您现有的组,然后创建远程访问策略,根据组名称来允许、拒绝或限制访问。例如,Employees组没有VPN远程访问限制,而Contractors组只能在上班时间建立VPN连接。或者,您可以根据所建立的连接类型来创建组。例如,您可以创建一个VPNRouters组,将所有被允许创建VPN连接的用户帐户都添加为这个组的成员。
用户帐户的单向初始化的连接和静态路由
在使用单向初始化的连接时,一个路由器总是应答路由器,而另一个路由器总是呼叫路由器。应答路由器接受连接,而呼叫路由器初始化这个连接。单向初始化的连接很适合分散和集中拓扑,在这种结构中,分公司的路由器是唯一初始化连接的路由器在单向初始化的连接中。
为了简化单向初始化连接的配置,单机Windows Server 2003或本机模式Active Directory域中的用户帐户支持静态路由的配置。在使用这个用户帐户的VPN连接建立的时候,这个静态路由将自动地被添加到VPN路由器的路由表中。如果这个VPN路由器参与站点的动态路由,那么这些路由将通过RIP和OSPF等协议传播给站点中的其他站点。用户帐户的静态路由的配置方法是:在用户帐户属性的拨号选项卡中选中应用静态路由复选框,然后添加静态路由。
要使用用户帐户中的静态路由,请按照一般的方法配置呼叫路由器。在应答路由器上,您所需要做的就是创建一个呼叫路由器使用的用户帐户,并配置对应于呼叫路由器站点的静态路由。由于在应答路由器上没有与呼叫路由器用户帐户同名的请求拨号接口,因此传入VPN连接被确定为远程访问连接。呼叫路由器用户帐户的静态路由被添加到这个VPN路由器的路由表中,所有指向静态路由所暗示位置的流量都通过逻辑远程访问连接发送到呼叫路由器。
注意: 只有在传入连接是远程访问VPN连接(呼叫路由器证书中的用户名与应答路由器请求拨号接口的名称不一致)时,用户帐户上的静态路由才应用在应答路由器上。当传入连接是请求拨号连接是,用户帐户上的静态路由将不被应用。
设计点:AAA基础构架
在为站点到站点VPN连接配置AAA基础构架时,请考虑下列内容:
| • | 如果您拥有多个VPN路由器,并且希望集中AAA服务或异类拨号和VPN设备的混合,请使用RADIUS服务器,并将VPN配置为RADIUS身份验证和记帐提供者。 |
| • | 如果您的用户帐户数据库是一个Windows域,请使用IAS作为您的RADIUS服务器。如果您使用IAS,请在域控制器上安装IAS,以获得最佳性能。并安装至少两个IAS服务器,用于AAA服务的故障转移和容错。 |
| • | 不论本地配置还是在IAS服务器上配置,请使用远程访问策略来授权VPN连接以及指定连接限制。例如,使用远程访问策略来根据组成员资格授予访问权限,强制使用加密以及指定的加密强度,或指定使用EAP-TLS。 |
| • | 对于单向初始化的连接,您可以安装常规方法配置呼叫路由器,然后使用包含呼叫路由器所属站点的静态路由的用户帐户来配置应答路由器。 |
| • | 请使用配置在VPN路由器和RADIUS服务器上的RADIUS共享密钥来加密用户密码和加密密钥等敏感的RADIUS消息字段。尽可能使这个共享密钥足够长(22个字符以上),随机排列字符、数字和符号,并经常进行更改,从而有效地保护您的RADIUS流量。例如,8d#>9fq4bV)H7%a3@dW9.>就是一个强健的共享密钥。为了进一步保护RADIUS流量,请使用IPSec策略来保护所有使用RADIUS UPD端口(用于RADIUS身份验证流量的1812和1645,以及用于RADIUS帐户流量的1813和1646)的流量的数据保密性 。 |
为了对L2TP连接执行基于证书的身份验证,并为使用EAP-TLS的站点到站点VPN连接执行基于用户证书的身份验证,必须建立一个证书基础构架用来签署用于身份验证的合适证书,并对提交的证书进行检验。
用于L2TP/IPSec的计算机证书
如果您为Windows Server 2003中IPSec策略规则手动地配置证书身份验证方法,那么您可以指定一个根证书颁发机构(CA)列表,接受来自这些CA的证书用于身份验证。对于L2TP连接,用于L2TP流量的IPSec规则是自动配置的,因此无法配置这个根CA的列表。相反,L2TP连接中的每个计算机都向其IPSec对发送一个根CA列表,接受来自这些CA的证书用于身份验证。这个列表中的根CA对应于那些签署证书并将它们存储在计算机证书存储库中的根CA。例如,如果计算机A由CA CertAuth1和CertAuth2签署了计算机证书,那么在主模式协商过程中,计算机A将提醒它的IPSec对:它只接受来自CertAuth1和CertAuth2的证书进行身份验证。如果这个IPSec对(计算机B)在其计算机证书库中没有CertAuth1或CertAuth2签署的有效证书,那么这次IPSec安全性协商将失败。
请在尝试建立L2TP连接之前,确保满足下列条件之一:
1. | 呼叫路由器和应答路由器由同一个CA签署计算机证书。 |
2. | 为呼叫路由器和应答路由器签署计算机证书的CA能够沿着一个有效的证书链追溯到同一个根CA。 |
一般情况下,呼叫路由器必须安装有一个由CA签署的有效计算机证书,并且这个CA必须能够沿着有效的证书链追溯到应答路由器信任的根CA。另外,应答路由器也必须安装有一个由CA签署的有效计算机证书,并且这个CA必须能够沿着有效的证书链追溯到呼叫路由器信任的根CA。
通常,由单独的一个CA向公司内所有的计算机签署证书。因此,公司中的所有计算机都拥有来自于同一CA的计算机证书,并且从同一个CA请求用于身份验证的证书。
有关为L2TP连接在VPN路由器上安装计算机证书的信息,请参阅"部署基于L2TP/IPSec的站点到站点VPN连接。"
注意: Windows Server 2003路由和远程访问服务支持预共享密钥,用于L2TP/IPSec连接的IPSec身份验证。要配置应答路由器,请在路由和远程访问嵌入式管理单元VPN路由器属性的安全性选项卡中选择允许为L2TP连接定制IPSec策略,然后输入这个预共享的密钥。要配置呼叫路由器,请在请求拨号接口属性的安全性选项卡中点击IPSec设置,然后输入这个预共享的密钥。但是,用于L2TP/IPSec连接的预共享密钥身份验证并不是安全的,因此我们并不推荐采用这个方式。除非在部署证书基础构架过程中,或连接到不支持证书身份验证的第三方VPN路由器时,将其作为过渡方法。
用于EAP-TLS身份验证的用户和计算机证书
要为Windows Server 2003的站点到站点VPN连接执行EAP-TLS身份验证:
| • | 呼叫路由器必须配置有用户证书,并在EAP-TLS身份验证过程中提供。 |
| • | 身份验证服务器必须配置有计算机证书,并在EAP-TLS身份验证过程中提供。这个身份验证服务器可以是应答路由器(如果应答路由器被配置为使用Windows身份验证提供者),或是RADIUS服务器(如果应答路由器被配置为使用RADIUS身份验证提供者)。 |
当满足下列条件时,EAP-TLS身份验证就能够成功通过:
| • | 呼叫路由器提供有效的用户证书,签署该证书的CA能够沿着一个有效的证书链追溯到应答路由器信息的根CA。 |
| • | 身份验证服务器提供有效的计算机证书,签署该证书的CA能够沿着一个有效的证书链追溯到呼叫路由器信息的根CA。 |
| • | 呼叫路由器的用户证书包含客户端身份验证(Client Authentication)增强的密钥使用(OID "1.3.6.1.5.5.7.3.2")。 |
| • | 应答路由器的计算机证书包含服务器身份验证(Server Authentication)增强的密钥使用(OID "1.3.6.1.5.5.7.3.1")。 |
对于一个Windows Server 2003 CA而言,将创建一个用于请求拨号连接的特殊类型用户证书——路由器(离线请求)证书,并映射到一个Active Directory用户帐户。当呼叫路由器尝试建立VPN连接时,将在连接协商过程中发送这个路由器(离线请求)证书。如果这个路由器(离线请求)证书有效,那么它将用来确定从哪个合适的用户帐户获得拨号属性。
有关为EAP-TLS身份验证配置用户和计算机证书的信息,请参阅"配置基于PPTP的站点到站点VPN连接"和"部署基于L2TP的站点到站点VPN连接。"
设计点:证书基础构架
在为站点到站点VPN连接配置证书基础构架时,请考虑下面内容:
| • | 为了使用用于IPSec的计算机证书来创建L2TP/IPSec站点到站点VPN连接,您必须在呼叫路由器和应答路由器的计算机证书存储库中安装一个证书。 |
| • | 为了使用EAP-TLS对VPN连接进行身份验证,呼叫路由器必须安装有一个用户证书,身份验证服务器(应答路由器或RADIUS服务器)必须安装有一个计算机证书。 |
| • | 要在跨越Internet的计算机上安装一个计算机或用户证书,请使用基于密码的身份验证协议(例如MS-CHAP v2)建立一个PPTP连接。在连接建立后,使用证书管理器嵌入式管理单元或Internet Explorer来请求合适的证书。一旦安装了这些证书后,立即中断原有连接,然后重新使用合适的VPN协议和身份验证方法来建立连接。例如,当未安装证书的远程办公室需要建立L2TP/IPSec或EAP-TLS身份验证的连接时,就是这样一种情况。 |
使用Windows Server 2003部署基于PPTP站点到站点VPN连接的过程由下列几个步骤组成:
| • | 部署证书基础构架 |
| • | 部署Internet基础构架 |
| • | 部署应答路由器 |
| • | 部署呼叫路由器 |
| • | 部署AAA基础构架 |
| • | 部署站点网络基础构架 |
| • | 部署站点间网络基础构架 |
为了实现基于PPTP的VPN连接,只有在使用EAP-TLS身份验证时才需要证书基础构架。如果您只使用基于密码的身份验证协议(例如MS-CHAP v2),那么不需要证书基础构架,而且也不将证书基础构架用于VPN连接的身份验证。
要对站点到站点VPN连接使用EAP-TLS身份验证,您必须:
| • | 在每个呼叫路由器计算机上安装一个用户证书。 |
| • | 在呼叫路由器上配置EAP-TLS。 |
| • | 在身份验证服务器(应答路由器或RADIUS服务器)上安装一个计算机证书。 |
| • | 在应答路由器上配置EAP-TLS,并为站点到站点连接配置远程访问策略。 |
在呼叫路由器上安装用户证书
如果您使用Windows Server 2003 CA,那么将创建一个路由器(离线请求)证书,并映射到一个Active Directory用户帐户。要为呼叫路由器部署路由器(离线请求)证书,网络管理员必须:
1. | 配置Windows Server 2003 CA来签署路由器(离线请求)证书。 |
2. | 请求一个路由器(离线请求)证书。 |
3. | 导出这个路由器(离线请求)证书。 |
4. | 将这个证书映射到合适的用户帐户。 |
5. | 将这个路由器(离线请求)证书发送给呼叫路由器的网络管理员。 |
6. | 将路由器(离线请求)证书导入到呼叫路由器中。 |
更多有关为请求拨号路由部署路由器(离线请求)证书的信息,请参阅Windows Server 2003帮助和支持中的“分公司办公室请求拨号连接”。
对于第三方CA,请参阅CA软件的文档资料,了解如何创建具有客户端身份验证增强的密钥使用(OID "1.3.6.1.5.5.7.3.2")的用户证书以及导出证书,并使其能够映射到Active Directory用户帐户,以及发送给呼叫路由器的网络管理员。您还必须导出根CA证书、签署CA的证书以及所有中间CA的证书,并使用证书管理器嵌入式管理单元将它们保存在应答路由器的计算机证书存储库中正确的文件夹下。详细信息,请参考Microsoft白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
在呼叫路由器上配置EAP-TLS
要在呼叫路由器上为用户证书配置EAP-TLS:
| • | 请求拨号接口必须被配置为使用具有智能卡或其他证书EAP类型的EAP,您可以通过在请求拨号接口属性的安全性选项卡中配置高级设置来完成。对于智能卡或其他证书EAP类型的属性,请选择使用本机中的证书。如果您希望验证VPN或IAS服务器的计算机证书,请选择检验服务器证书。如果您希望配置身份验证服务器的名称,请选择连接到这些服务器,然后输入服务器名称。如果需要由指定的信任根CA签署服务器计算机证书,请在信任的根证书颁发机构列表中选择这个CA。 |
| • | 在请求拨号接口上点击右键,然后点击设置凭证。在连接对话框中,在证书中用户名 中选择正确的用户或路由器(离线请求)证书,然后点击确定。 |
在身份验证服务器上安装计算机证书
要安装计算机证书,必须拥有一个签署证书的证书颁发机构。如果这个CA是一个Windows Server 2003 CA,而身份验证服务器是应答路由器或Windows Server 2003 Internet身份验证服务(IAS)RADIUS服务器,那么您通过下面几种不同的方法,在身份验证服务器的计算机证书存储库中安装证书:
1. | 配置自动地将计算机证书分配给Active Directory域中的计算机。 这种方法允许整个域的单点配置。域中所有成员自动地通过组策略获得计算机证书。 |
2. | 使用证书管理器嵌入式管理单元来请求证书,并存储在证书(本地计算机)\个人文件夹中。 在这种方法中,每个计算机必须单独地从CA请求计算机证书。您必须拥有管理员权限来使用证书管理器嵌入式管理单元安装证书。 |
3. | 使用Internet Explorer和web注册来请求证书,并存储在本地机器存储库中。 在这种方法中,每个计算机必须单独地从CA请求计算机证书。您必须具有管理员权限来使用web注册来安装证书。 |
根据您公司中的证书策略,您只需要采用其中的一种方式。
更多有关使用Windows Server 2003 CA获取计算机证书的信息,请参考Windows Server 2003帮助和支持中的"用于L2TP/IPSec VPN连接的计算机证书"和"通过Web提交高级证书请求"。
对于第三方CA,请参阅CA软件的文档资料,了解如何创建具有服务器身份验证增强的密钥使用(OID "1.3.6.1.5.5.7.3.1")的用户证书以及导出证书,并使其能够由应答路由器的管理员来通过证书管理器嵌入式管理单元导入。另外,您还必须在呼叫路由器上导出和导入根CA证书、签署CA的证书以及所有中间CA的证书。详细信息,请参考Microsoft白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
在应答路由器和远程访问策略中配置EAP-TLS
要在应答路由器上配置EAP-TLS身份验证:
| • | 您必须使用路由和远程访问嵌入式管理单元,在应答路由器属性的安全性选项卡中,将EAP选择为身份验证方法对话框中的一个身份验证类型。 |
要为应答路由器或IAS服务器在远程访问策略中配置EAP-TLS身份验证:
| • | 在用于站点到站点VPN连接的远程访问策略中,必须在策略配置文件的身份验证选项卡中将智能卡或其他证书EAP类型添加为所选EAP方法。如果这个远程访问策略所配置的计算机安装有所个计算机证书,那么请配置智能卡或其他证书EAP类型的属性,在EAP-TLS身份验证过程中提交正确的计算机证书。 |
如果您使用第三方RADIUS服务器,请参阅RADIUS服务器的文档,了解如何启用EAP-TLS,以及如何配置EAP-TLS使用正确的计算机证书。
部署站点到站点VPN连接的Internet基础构架包括下列几个步骤:
| • | 将VPN路由器放置在周边网络或Internet中。 |
| • | 在VPN路由器计算机上安装Windows Server 2003,并配置Internet接口。 |
将VPN路由器放置在周边网络或Internet中
确定如何根据您的Internet防火墙来放置VPN路由器。在大部分常规配置中,VPN路由器都被放置在您站点和Internet间的周边网络中,位于防火墙之后。如果这样,请在防火墙上配置数据包筛选器,允许所有进出VPN路由器周边网络接口的PPTP流量。详细信息,请参阅附录A。
在VPN路由器上安装Windows Server 2003,并配置Internet接口
在VPN路由器计算机上安装Windows Server 2003,并将它的一个网络适配器连接到Internet或周边网络,将另一个网络适配器连接到站点。如果不运行路由和远程访问服务器安装向导,VPN路由器计算机将不会在Internet和站点之间转发IP数据包。对于连接到Internet或周边网络的连接,请配置TCP/IP协议,使其具有防火墙(如果路由器连接到周边网络)或 ISP路由器(如果路由器直接连接到Internet)的公共IP地址、子网掩码和默认网关。不要使用DNS服务器或WINS服务器IP地址来配置这个连接。
为站点到站点VPN连接部署应答路由器包括下列几个步骤:
| • | 配置连接到站点的应答路由器连接。 |
| • | 运行路由和远程访问服务器安装向导。 |
| • | 配置请求拨号接口。 |
配置连接到站点的应答路由器连接
使用手动的TCP/IP配置来配置连接到站点的连接,其中包括IP地址、子网掩码、站点DNS服务器和站点WINS服务器。注意,您不能在这个站点连接上配置默认网关,避免默认路由与指向Internet的默认路由相冲突。
运行路由和远程访问服务器安装向导
运行路由和远程访问服务器安装向导来配置Windows Server 2003应答路由器,步骤如下:
1. | 点击开始,指向程序,指向管理工具,然后点击路由和远程访问。 | ||
2. | 在应答路由器名称上点击右键,然后点击配置和启用路由和远程访问。点击下一步。 | ||
3. | 在配置中,点击远程访问(拨号或VPN),然后点击下一步。如果您还希望将应答路由器作为网络地址转换器(NAT)、Web服务器或其他功能,请参阅附录B。 | ||
4. | 在路由访问中,选择VPN。如果您还希望这个应答路由器支持拨号站点到站点连接,请点击拨号。点击下一步。 | ||
5. | 在VPN连接中,点击对应于连接到Internet或周边网络的接口的连接,然后点击下一步。 | ||
6. | 在IP地址分配中,如果应答路由器使用DHCP为远程访问VPN客户端和呼叫路由器获得IP地址,则点击自动。否则,请点击从指定的地址范围,使用一个或多个静态的地址范围。如果其中有的静态地址范围是子网外地址范围,则必须在路由基础构架中添加路由,使得能够到达呼叫路由器的虚拟接口。在完成IP地址分配后,点击下一步。 | ||
7. | 在管理多种远程访问服务器中,如果您将RADIUS用于身份验证和授权,那么请点击是的,设置这个服务器与RADIUS服务器协同工作,然后点击下一步。
| ||
8. | 点击完成。 |
在默认情况下,只在WAN小端口(PPTP)设备上配置有128个PPTP端口。如果您需要更多的PPTP端口,请在路由和远程访问嵌入式管理单元端口对象的属性中,配置WAN小端口 (PPTP)设备。在默认情况下,也只配置128个L2TP端口。
在默认情况下,启用MS-CHAP、MS-CHAP v2和EAP身份验证方式。
配置请求拨号接口
在应答路由器的路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,右键点击网络接口,然后点击新建请求拨号接口。 |
2. | 在欢迎请求拨号接口向导页中,点击下一步。 |
3. | 在接口名称页中,输入请求拨号接口的名称,然后点击下一步。 |
4. | 在连接类型页中,点击使用虚拟专用网络(VPN)连接,然后点击下一步。 |
5. | 在VPN类型页中,点击点到点隧道协议(PPTP),然后点击下一步。 |
6. | 在目标地址页中,输入呼叫路由器的IP地址。 对于双向初始化的路由器到路由器VPN连接,请配置呼叫路由器的IP地址。对于单向初始化的站点到站点VPN连接,您可以跳过这一步,因为应答路由器不会使用这个接口来初始化一个到呼叫路由器的连接。 |
7. | 在协议和安全性页中,选中在这个接口上路由IP数据包和添加一个远程路由器可以拨号的用户帐户复选框,然后点击下一步。 |
8. | 在用于远程网络的静态路由页中,点击添加,添加分配给请求拨号接口的静态路由(如果需要)。 |
9. | 在拨入凭证页中,在密码和确认密码中输入呼叫路由器所用用户帐户的密码,然后点击下一步。 这一步将自动地创建一个与所创建的请求拨号接口同名的用户帐户。这样做使得在呼叫路由器初始化一个到应答路由器的连接时,它所使用的用户帐户名称与请求拨号接口相一致。因此,应答路由器可以确定来自呼叫路由器的传入连接是请求拨号连接,而不是远程访问连接。 |
10. | 在拨出凭证页中,在用户名中输入用户名,在域中输入用户帐户域名,在密码和确认密码中输入用户帐户密码。 对于双向初始化的路由器到路由器VPN连接,请在路由器作为呼叫路由器时配置名称、域名和密码。对于单向初始化的站点到站点VPN连接,您可以在用户名中输入任意名称,然后跳过剩下的字段,因为这个路由器不会使用这个接口来初始化一个到呼叫路由器的连接。 |
11. | 在完成请求拨号接口向导页中,点击完成。 |
这种配置的结果是建立了一个基于PPTP的请求拨号接口,并在这个接口上启用了IP路由。会自动地添加与请求拨号接口同名的用户帐户,并具有正确的帐号和拨入设置。
为站点到站点VPN连接部署呼叫路由器包括下列步骤:
| • | 配置连接到站点的呼叫路由器连接。 |
| • | 运行路由和远程访问服务器安装向导。 |
| • | 配置请求拨号接口。 |
配置连接到站点的呼叫路由器连接
使用手动的TCP/IP配置来配置连接到站点的连接,其中包括IP地址、子网掩码、站点DNS服务器和站点WINS服务器。注意,您不能在这个站点连接上配置默认网关,避免默认路由与指向Internet的默认路由相冲突。
运行路由和远程访问服务器安装向导
运行路由和远程访问服务器安装向导来配置Windows Server 2003呼叫路由器,步骤如下:
1. | 点击开始,指向程序,指向管理工具,然后点击 路由和远程访问。 | ||
2. | 在服务器名称上点击右键,然后点击配置和启用路由和远程访问。 点击下一步。 | ||
3. | 在配置中,点击远程访问(拨号或VPN),然后点击下一步。如果您还希望将应答路由器作为网络地址转换器(NAT)、Web服务器或其他功能,请参阅附录B。 | ||
4. | 在远程访问中,选择VPN。如果您还希望这个应答路由器支持拨号站点到站点连接,请点击拨号。点击下一步。 | ||
5. | 在VPN连接中,点击对应于连接到Internet或周边网络的接口的连接,然后点击下一步。 | ||
6. | 在IP地址分配中,如果呼叫路由器在作为应答路由器时,使用DHCP为其他呼叫路由器获得IP地址,则点击自动。或者点击从指定的地址范围,使用一个或多个静态的地址范围。如果其中有的静态地址范围是子网外地址范围,则必须在路由基础构架中添加路由,使得能够到达呼叫路由器的虚拟接口。在完成IP地址分配后,点击下一步。 | ||
7. | 在管理多种远程访问服务器如果您将RADIUS用于身份验证和授权,那么请点击是的,设置这个服务器与RADIUS服务器协同工作,然后点击下一步。
| ||
8. | 点击完成。 |
配置请求拨号接口
在呼叫路由器的路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,右键点击网络接口,然后点击新建请求拨号接口。 |
2. | 在欢迎请求拨号接口向导页中, 点击下一步。 |
3. | 在接口名称页中,输入请求拨号接口的名称。对于双向初始化的连接而言,在应答路由器作为呼叫路由器时,这个名称应该与应答路由器所用的用户凭证中的用户名相一致。点击下一步。 |
4. | 在连接类型页中,点击使用虚拟专用网络(VPN)连接,然后点击下一步。 |
5. | 在VPN类型页中,点击点到点隧道协议(PPTP),然后点击下一步。 |
6. | 在目标地址页中,输入应答路由器的IP地址。 |
7. | 在协议和安全性页中,选中在这个接口上路由IP数据包复选框。对于双向初始化的连接,请选择添加一个远程路由器可以拨号的用户帐户复选框。点击下一步。 |
8. | 在用于远程网络的静态路由页中,点击添加,添加分配给请求拨号接口的静态路由(如果需要)。 |
9. | 对于双向初始化的连接,请在拨入凭证页,在密码和确认密码中输入应答路由器作为呼叫路由器时所使用的用户帐户的密码,然后点击下一步。这一步将自动地创建一个与所创建的请求拨号接口同名的用户帐户。这样做使得在呼叫路由器初始化一个到应答路由器的连接时,它所使用的用户帐户名称与请求拨号接口相一致。因此,应答路由器可以确定来自呼叫路由器的传入连接是请求拨号连接,而不是远程访问连接。 |
10. | 在拨出凭证页,在用户名中输入用户名,在域中输入用户帐户域名,并在密码和确认密码中输入用户帐户密码。 |
11. | 在完成请求拨号接口向导页中,点击完成。 |
这种配置的结果是建立了一个基于PPTP的请求拨号接口,并在这个接口上启用了IP路由。会自动地添加与请求拨号接口同名的用户帐户,并具有正确的帐号和拨入设置(如果需要)。
为站点到站点VPN连接部署AAA基础构架包括下列步骤:
| • | 为用户帐户和组配置Active Directory。 |
| • | 在域控制器上配置主IAS服务器。 |
| • | 在另一个域控制器上配置第二个IAS服务器。 |
这个配置必须在每个包含应答路由器的站点上进行。对于具有少量计算机和单个应答路由器的分公司办公室来说,配置路由和远程访问服务,使其使用Windows身份验证和本地配置的远程策略,这样比配置一个单独的IAS服务器计算机要更方便一些。
为用户帐户和组配置Active Directory
要为用户帐户和组配置Active Directory,请执行下列操作:
1. | 确信所有呼叫路由器拥有相对应的用户帐户,并具有正确的帐户和拨入设置。这里包括所有用于分公司办公室和商业合作伙伴的呼叫路由器。在您使用请求拨号接口向导,在协议和安全性页面中选中添加一个远程路由器可以拨号的用户帐户复选框时,会自动地创建具有正确帐户和拨入设置的用户帐户。 |
2. | 根据呼叫路由器,将用户帐户组织到合适的通用组和嵌套组中,充分发挥基于组的远程访问策略的作用。详细信息,请参阅Windows Server 2003帮助和支持的"嵌套组"。 |
在域控制器上配置主IAS服务器
要在域控制器上配置主IAS服务器,请执行下列操作:
1. | 在域控制器上,将IAS作为可选网络组件安装。详细信息,请参阅Windows Server 2003帮助和支持中的"安装IAS"。 |
2. | 将IAS服务器计算机(域控制器)配置为读取域中帐户用户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。 |
3. | 如果IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,请检验这些域与IAS服务器计算机所属域具有双向信任关系。然后,将这个IAS服务器计算机配置为读取其他域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。更多有关信任关系的信息,请参阅Windows Server 2003帮助和支持的"理解域和森林"。 如果IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,但这些域与IAS服务器计算机所属域没有双向信任关系,那么您必须在这两个不信任域之间配置一个RADIUS代理。 |
4. | 启动帐户和身份验证事件的文件日志。详细信息,请参阅Windows Server 2003帮助和支持的"配置日志文件属性"。 |
5. | 添加VPN路由器,作为IAS服务器的RADIUS客户端。详细信息,请参阅Windows Server 2003帮助和支持的"添加RADIUS客户端"。对于每个VPN路由器的IP地址,请使用分配给VPN路由器的站点IP地址。如果您使用名称,那么请使用VPN路由器的内部名称。并使用强健的共享密钥。 |
6. | 创建能够反应您远程访问使用情况的远程访问策略。 例如,如果要为VPNRouters组的成员配置一个需要基于PPTP站点到站点VPN连接的远程访问策略,使其使用MS-CHAP v2身份验证和128位加密,则请使用新建远程访问策略向导来创建一个具有下列设置的典型远程访问策略: 策略名称:站点到站点VPN连接(示例) 访问方法:VPN 访问组:VPNRouters组(示例) 身份验证方法:仅启用微软加密身份验证第二版(MS-CHAP v2) 策略加密级别:仅选择最强加密 |
如果IAS没有被安装在域控制器上,那么您必须配置这个主IAS服务器计算机来读取域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。
在另一个域控制器上配置第二个IAS服务器
要在另一个域控制器上配置第二个IAS服务器,请执行下列操作:
1. | 在另一个域控制器上,将IAS作为可选网络组件安装。详细信息,请参阅Windows Server 2003帮助和支持中的"安装IAS"。 |
2. | 将第二个IAS服务器计算机(另一个域控制器)配置为读取域中帐户用户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。 |
3. | 如果第二个IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,请检验这些域与IAS服务器计算机所属域具有双向信任关系。然后,将第二个IAS服务器计算机配置为读取其他域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。更多有关信任关系的信息,请参阅Windows Server 2003帮助和支持的"理解域和森林"。 如果第二个IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,但这些域与第二个IAS服务器计算机所属域没有双向信任关系,那么您必须在这两个不信任域之间配置一个RADIUS代理。 |
4. | 要将主IAS服务器上的配置复制到第二个IAS服务器上,请在主IAS服务器的命令行提示符中输入 netsh aaaa show config >path\file.txt。它将在一个文本文件中存储各种配置设置,包括注册表设置。这个路径可以是相对的、绝对的或是一个网络路径。 |
5. | 将在步骤4中创建的文件复制到第二个IAS服务器中。在第二个IAS服务器的命令行提示符中,输入netsh execpath\file.txt。这个操作将把主IAS服务器中的所有设置导入到第二个IAS服务器中。 |
如果IAS没有被安装在域控制器上,那么您必须配置第二个IAS服务器计算机来读取域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。
为站点到站点VPN连接部署站点的网络基础构架包括下列步骤:
| • | 在VPN路由器上配置路由。 |
| • | 检验从每个VPN路由器的可到达性。 |
| • | 为子网外地址池配置路由。 |
在VPN路由器上配置路由
为了使您的VPN路由器能够正确地将流量转发到它们所处的位置,您必须使用总结了站点内所有可能使用的地址的静态路由进行配置,或者使用路由协议进行配置,这样VPN路由器将可以作为一个动态路由器,自动地将站点子网的路由添加到它的路由表中。
要添加静态路由,请参阅Windows Server 2003帮助和支持的"添加静态路由"。要将VPN路由器部署为RIP路由器,请参阅"配置RIP for IP"。要将VPN路由器部署为OSPF路由器,请参阅Windows Server 2003帮助和支持中的"OSPF设计考虑事项"和"配置OSPF"。
检验从每个VPN路由器的可到达性
从每个VPN路由器,检验这个VPN路由器计算机能够解析名称,并成功地与WPN路由器所属站点中的资源进行通讯,检验的方法包括使用Ping命令、Internet Explorer以及创建站点中已知服务器的驱动器和打印机连接。
为子网外地址池配置路由
如果您使用静态地址池来配置VPN路由器,而在这些地址范围中有子网外范围,那么您必须确认在您的站点路由基础构架中拥有代表这些子网外地址范围的路由,使得能够达到呼叫路由器的虚拟接口。为了确保这一点,您可以将代表这些子网外地址范围的静态路由作为静态路由添加在VPN路由器的相邻路由器上,然后使用您站点的路由协议来将这些路由传播到其他路由器。在您添加这些静态路由时,您必须指定网关或下一个跳接地址为这个VPN路由器的站点接口。
或者,如果您使用RIP或OSPF,那么您可以将使用子网外地址池的VPN路由器配置为RIP或OSPF路由器。针对OSPF,您必须将这个VPN路由器配置为自治系统边界路由器(ASBR)。详细信息,请参阅Windows Server 2003帮助和支持的"OSPF设计考虑事项"。
部署站点间网络基础构架包括部署每个VPN路由器,使它们具有其他站点可以使用的子网路由(跨越每个站点到站点VPN连接)。这个部署工作可以通过下列几种方式来完成:
| • | 在每个VPN路由器上手动配置静态路由。 |
| • | 在每个VPN路由器上执行自动静态更新。 |
| • | 配置路由策略,在站点到站点VPN连接上运作。 |
在每个VPN路由器上手动配置静态路由
在路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,点击IP路由,然后点击静态路由。 |
2. | 右键点击静态路由,然后点击新建静态路由。 |
3. | 在静态路由对话框中,选择合适的请求拨号接口名称,然后输入目标、网络掩码和规格。 |
4. | 点击确定,添加这个路由。 |
5. | 为添加其他路由,请返回步骤2。 |
注意: 由于请求拨号连接使一个点到点连接,因此无法配置网关IP地址字段。您也可以在使用新建请求拨号接口向导创建请求拨号接口的过程中添加静态路由。
在每个VPN路由器上执行自动静态更新
如果在两个VPN路由器的请求拨号接口上都启动了RIP for IP,那么您将可以在VPN连接处于连接状态时,使用自动静态更新来自动地配置静态路由。为自动静态更新所配置的请求拨号端口将通过活动的连接发送一个请求,向连接另一端的路由器请求所有路由。在响应请求时,将请求的路由器的所有路由自动输入为请求路由器路由表中的静态路由。
在VPN路由器的路由和远程访问嵌入式管理单元中(假定站点到站点VPN连接是活动的),执行下列步骤:
1. | 在控制台树中,点击IP路由,然后点击常规。 |
2. | 在详细窗格中,右键点击合适的请求拨号接口,然后点击更新路由。 |
您也可以使用 netsh interface set interface命令来执行自动静态更新。详细信息,请参阅Windows Server 2000帮助和支持中的“计划自动静态更新”。
配置路由协议
如果站点到站点VPN连接是永久的(总处于活动状态),那么您也可以配置IP路由协议来在这个VPN连接上运作,例如路由信息协议(RIP)或开放式最短路径优先(OSPF)。详细信息,请参阅Windows Server 2003帮助和支持中的"设置RIP-for-IP路由的网络"和"设置OSPF路由的网络"。
使用Windows Server 2003部署基于L2TP/IPSec的站点到站点VPN连接的过程由下列几个步骤组成:
| • | 部署证书基础构架 |
| • | 部署Internet基础构架 |
| • | 部署应答路由器 |
| • | 部署呼叫路由器 |
| • | 部署AAA基础构架 |
| • | 部署站点网络基础构架 |
| • | 部署站点间网络基础构架 |
对于基于L2TP的VPN连接,需要一个证书基础构架来签署执行IPSec身份验证所需的证书。另外,在使用EAP-TLS身份验证时,也需要一个证书基础构架。
用于L2TP连接的证书
要安装计算机证书,必须拥有一个签署证书的证书颁发机构(CA)。如果这个CA是一个Windows Server 2003 CA,那么您通过下面几种不同的方法,在身份验证服务器的计算机证书存储库中安装证书:
1. | 配置自动地将计算机证书分配给Active Directory域中的计算机。 这种方法允许整个域的单点配置。域中所有成员自动地通过组策略获得计算机证书。 |
2. | 使用证书管理器嵌入式管理单元来请求证书,并存储在证书(本地计算机)\个人文件夹中。 在这种方法中,每个计算机必须单独地从CA请求计算机证书。您必须拥有管理员权限来使用证书管理器嵌入式管理单元安装证书。 |
3. | 使用Internet Explorer和web注册来请求证书,并存储在本地机器存储库中。 在这种方法中,每个计算机必须单独地从CA请求计算机证书。您必须具有管理员权限来使用web注册来安装证书。 |
根据您公司中的证书策略,您只需要采用其中的一种方式。
更多有关使用Windows Server 2003 CA获取计算机证书的信息,请参考Windows Server 2003帮助和支持中的"用于L2TP/IPSec VPN连接的计算机证书"和"通过Web提交高级证书请求"。
对于第三方CA,请参阅CA软件的文档资料,了解如何创建用户证书并导出,以及如何使呼叫路由器和应答路由器的管理员能够通过证书管理器嵌入式管理单元将证书导入到计算机证书存储库中。另外,您还必须在呼叫路由器和应答路由器上导出和导入根CA证书、签署CA的证书以及所有中间CA的证书。详细信息,请参考Microsoft白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
用于EAP-TLS身份验证的证书
要对站点到站点VPN连接使用EAP-TLS身份验证,您必须:
| • | 在每个呼叫路由器计算机上安装一个用户证书。 |
| • | 在呼叫路由器上配置EAP-TLS。 |
| • | 在身份验证服务器(应答路由器或RADIUS服务器)上安装一个计算机证书。 |
| • | 在应答路由器和远程访问策略中配置EAP-TLS。 |
在呼叫路由器上安装用户证书
如果您使用Windows Server 2003 CA,那么将创建一个路由器(离线请求)证书(一种用于请求拨号连接的特殊用户证书),并映射到一个Active Directory用户帐户。要为呼叫路由器部署路由器(离线请求)证书,网络管理员必须:
1. | 配置Windows Server 2003 CA来签署路由器(离线请求)证书。 |
2. | 请求一个路由器(离线请求)证书。 |
3. | 导出这个路由器(离线请求)证书。 |
4. | 将这个证书映射到合适的用户帐户。 |
5. | 将这个路由器(离线请求)证书发送给呼叫路由器的网络管理员。 |
6. | 将路由器(离线请求)证书导入到呼叫路由器中。 |
更多有关为请求拨号路由部署路由器(离线请求)证书的信息,请参阅Windows Server 2003帮助和支持中的“分公司办公室请求拨号连接”。
对于第三方CA,请参阅CA软件的文档资料,了解如何创建具有客户端身份验证增强的密钥使用(OID "1.3.6.1.5.5.7.3.2")的用户证书以及导出证书,并使其能够映射到Active Directory用户帐户,以及发送给呼叫路由器的网络管理员。您还必须导出根CA证书、签署CA的证书以及所有中间CA的证书,并使用证书管理器嵌入式管理单元将它们保存在应答路由器的计算机证书存储库中正确的文件夹下。详细信息,请参考Microsoft白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
在呼叫路由器上配置EAP-TLS
要在呼叫路由器上为用户证书配置EAP-TLS:
| • | 请求拨号接口必须被配置为使用具有智能卡或其他证书 EAP类型的EAP,您可以通过在请求拨号接口属性的安全性选项卡中配置高级设置来完成。对于智能卡或其他证书EAP类型的属性,请选择使用本机中的证书。如果您希望验证VPN或IAS服务器的计算机证书,请选择 检验服务器证书。如果您希望配置身份验证服务器的名称,请选择连接到这些服务器,然后输入服务器名称。如果需要由指定的信任根CA签署服务器计算机证书,请在信任的根证书颁发机构列表中选择这个CA。 |
| • | 在请求拨号接口上点击右键,然后点击设置凭证。在连接对话框中,在证书中用户名中选择正确的用户或路由器(离线请求)证书,然后点击确定。 |
在身份验证服务器上安装计算机证书
如果您的身份验证服务器是应答路由器,您可以使用安装的同一个计算机证书来为EAP-TLS身份验证对L2TP连接进行身份验证,证书中包含有服务器身份验证增强密钥使用(OID "1.3.6.1.5.5.7.3.1")。如果不是应答路由器,那么您必须安装另一个包含服务器身份验证增强密钥使用的计算机证书。如果身份验证服务器是一个IAS服务器,您必须安装一个包含服务器身份验证增强密钥使用的计算机证书。
如果这个CA是一个Windows Server 2003 CA,而身份验证服务器是应答路由器或Windows Server 2003 Internet身份验证服务(IAS)RADIUS服务器,您可以使用本文"用于L2TP连接的证书"中所介绍的方法来在身份验证服务器的计算机证书存储库中安装证书。
对于第三方CA,请参阅CA软件的文档资料,了解如何创建具有服务器身份验证增强的密钥使用(OID "1.3.6.1.5.5.7.3.1")的用户证书以及导出证书,并使其能够由应答路由器的管理员来通过证书管理器嵌入式管理单元导入。另外,您还必须在呼叫路由器上导出和导入根CA证书、签署CA的证书以及所有中间CA的证书。详细信息,请参考Microsoft白皮书“虚拟专用网络和Windows Server 2003:部署远程访问VPN”的附录E。
在应答路由器和远程访问策略中配置EAP-TLS
要在应答路由器上配置EAP-TLS身份验证:
| • | 您必须使用路由和远程访问嵌入式管理单元,在应答路由器属性的安全性选项卡中,将EAP选择为身份验证方法对话框中的一个身份验证类型。 |
要为应答路由器或IAS服务器在远程访问策略中配置EAP-TLS身份验证:
| • | 在用于站点到站点VPN连接的远程访问策略中,必须在策略配置文件的身份验证选项卡中将智能卡或其他证书EAP类型添加为所选EAP方法。如果这个远程访问策略所配置的计算机安装有所个计算机证书,那么请配置智能卡或其他证书 EAP类型的属性,在EAP-TLS身份验证过程中提交正确的计算机证书。 |
如果您使用第三方RADIUS服务器,请参阅RADIUS服务器的文档,了解如何启用EAP-TLS,以及如何配置EAP-TLS使用正确的计算机证书。
部署站点到站点VPN连接的Internet基础构架包括下列几个步骤:
| • | 将VPN路由器放置在周边网络或Internet中。 |
| • | 在VPN路由器计算机上安装Windows Server 2003,并配置Internet接口。 |
将VPN路由器放置在周边网络或Internet中
确定如何根据您的Internet防火墙来放置VPN路由器。在大部分常规配置中,VPN路由器都被放置在您站点和Internet间的周边网络中,位于防火墙之后。如果这样,请在防火墙上配置数据包筛选器,允许所有进出VPN路由器周边网络接口IP地址的L2TP/IPSec流量。详细信息,请参阅附录A。
在VPN路由器上安装Windows Server 2003,并配置Internet接口
在VPN路由器计算机上安装Windows Server 2003,并将它的一个网络适配器连接到Internet或周边网络,将另一个网络适配器连接到站点。如果不运行路由和远程访问服务器安装向导,VPN路由器计算机将不会在Internet和站点之间转发IP数据包。对于连接到Internet或周边网络的连接,请配置TCP/IP协议,使其具有防火墙(如果路由器连接到周边网络)或 ISP路由器(如果路由器直接连接到Internet)的公共IP地址、子网掩码和默认网关。不要使用DNS服务器或WINS服务器IP地址来配置这个连接。
为站点到站点VPN连接部署应答路由器包括下列几个步骤:
| • | 配置连接到站点的应答路由器连接。 |
| • | 运行路由和远程访问服务器安装向导。 |
| • | 配置请求拨号接口。 |
配置连接到站点的应答路由器连接
使用手动的TCP/IP配置来配置连接到站点的连接,其中包括IP地址、子网掩码、站点DNS服务器和站点WINS服务器。注意,您不能在这个站点连接上配置默认网关,避免默认路由与指向Internet的默认路由相冲突。
运行路由和远程访问服务器安装向导
运行路由和远程访问服务器安装向导来配置Windows Server 2003应答路由器,步骤如下:
1. | 点击开始,指向程序,指向管理工具,然后点击路由和远程访问。 | ||
2. | 在应答路由器名称上点击右键,然后点击配置和启用路由和远程访问。点击下一步。 | ||
3. | 在配置中,点击远程访问(拨号或VPN),然后点击下一步。如果您还希望将应答路由器作为网络地址转换器(NAT)、Web服务器或其他功能,请参阅附录B。 | ||
4. | 在路由访问中,选择VPN。如果您还希望这个应答路由器支持拨号站点到站点连接,请点击拨号。点击下一步 。 | ||
5. | 在VPN连接中,点击对应于连接到Internet或周边网络的接口的连接,然后点击下一步。 | ||
6. | 在IP地址分配中,如果应答路由器使用DHCP为远程访问VPN客户端和呼叫路由器获得IP地址,则点击自动。否则,请点击从指定的地址范围,使用一个或多个静态的地址范围。如果其中有的静态地址范围是子网外地址范围,则必须在路由基础构架中添加路由,使得能够到达呼叫路由器的虚拟接口。在完成IP地址分配后,点击下一步 。 | ||
7. | 在管理多种远程访问服务器中,如果您将RADIUS用于身份验证和授权,那么请点击是的,设置这个服务器与RADIUS服务器协同工作,然后点击下一步。
| ||
8. | 点击完成。 |
在默认情况下,只在WAN小端口(PPTP)设备上配置有128个PPTP端口。如果您需要更多的PPTP端口,请在路由和远程访问嵌入式管理单元端口对象的属性中,配置WAN小端口 (PPTP)设备。在默认情况下,也只配置128个L2TP端口。
在默认情况下,启用MS-CHAP、MS-CHAP v2和EAP身份验证方式。
配置请求拨号接口
在应答路由器的路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,右键点击网络接口,然后点击新建请求拨号接口。 |
2. | 在欢迎请求拨号接口向导页中, 点击下一步。 |
3. | 在接口名称页中,输入请求拨号接口的名称,然后点击下一步。 |
4. | 在连接类型页中,点击使用虚拟专用网络(VPN)连接,然后点击下一步。 |
5. | 在VPN类型页中,点击第二层隧道协议(L2TP),然后点击下一步。 |
6. | 在目标地址页中,输入呼叫路由器的IP地址。 对于双向初始化的路由器到路由器VPN连接,请配置呼叫路由器的IP地址。对于单向初始化的站点到站点VPN连接,您可以跳过这一步,因为应答路由器不会使用这个接口来初始化一个到呼叫路由器的连接。 |
7. | 在协议和安全性页中,选中在这个接口上路由IP数据包和添加一个远程路由器可以拨号的用户帐户复选框,然后点击下一步。 |
8. | 在用于远程网络的静态路由页中,点击添加 ,添加分配给请求拨号接口的静态路由(如果需要)。 |
9. | 在拨入凭证页中,在密码和确认密码中输入呼叫路由器所用用户帐户的密码,然后点击下一步。这一步将自动地创建一个与所创建的请求拨号接口同名的用户帐户。这样做使得在呼叫路由器初始化一个到应答路由器的连接时,它所使用的用户帐户名称与请求拨号接口相一致。因此,应答路由器可以确定来自呼叫路由器的传入连接是请求拨号连接,而不是远程访问连接。 |
10. | 在拨出凭证页中,在用户名中输入用户名,在域中输入用户帐户域名,在密码和确认密码中输入用户帐户密码。 对于双向初始化的路由器到路由器VPN连接,请在路由器作为呼叫路由器时配置名称、域名和密码。对于单向初始化的站点到站点VPN连接,您可以在用户名中输入任意名称,然后跳过剩下的字段,因为这个路由器不会使用这个接口来初始化一个到呼叫路由器的连接。 |
11. | 在完成请求拨号接口向导页中,点击完成。 |
这种配置的结果是建立了一个基于PPTP的请求拨号接口,并在这个接口上启用了IP路由。会自动地添加与请求拨号接口同名的用户帐户,并具有正确的帐号和拨入设置。
为站点到站点VPN连接部署呼叫路由器包括下列步骤:
| • | 配置连接到站点的呼叫路由器连接。 |
| • | 运行路由和远程访问服务器安装向导。 |
| • | 配置请求拨号接口。 |
配置连接到站点的呼叫路由器连接
使用手动的TCP/IP配置来配置连接到站点的连接,其中包括IP地址、子网掩码、站点DNS服务器和站点WINS服务器。注意,您不能在这个站点连接上配置默认网关,避免默认路由与指向Internet的默认路由相冲突。
运行路由和远程访问服务器安装向导
运行路由和远程访问服务器安装向导来配置Windows Server 2003呼叫路由器,步骤如下:
1. | 点击开始,指向程序,指向管理工具,然后点击路由和远程访问。 | ||
2. | 在服务器名称上点击右键,然后点击配置和启用路由和远程访问。 点击下一步。 | ||
3. | 在配置中,点击远程访问(拨号或VPN),然后点击下一步。如果您还希望将应答路由器作为网络地址转换器(NAT)、Web服务器或其他功能,请参阅附录B。 | ||
4. | 在远程访问中,选择VPN。如果您还希望这个应答路由器支持拨号站点到站点连接,请点击拨号。点击下一步。 | ||
5. | 在VPN连接中,点击对应于连接到Internet或周边网络的接口的连接,然后点击下一步。 | ||
6. | 在IP地址分配中,如果呼叫路由器在作为应答路由器时,使用DHCP为其他呼叫路由器获得IP地址,则点击自动。或者点击从指定的地址范围,使用一个或多个静态的地址范围。如果其中有的静态地址范围是子网外地址范围,则必须在路由基础构架中添加路由,使得能够到达呼叫路由器的虚拟接口。在完成IP地址分配后,点击下一步。 | ||
7. | 在管理多种远程访问服务器如果您将RADIUS用于身份验证和授权,那么请点击是的,设置这个服务器与RADIUS服务器协同工作,然后点击下一步。
| ||
8. | 点击完成。 |
配置请求拨号接口
在呼叫路由器的路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,右键点击网络接口,然后点击新建请求拨号接口。 |
2. | 在欢迎请求拨号接口向导页中, 点击下一步。 |
3. | 在接口名称页中,输入请求拨号接口的名称。对于双向初始化的连接而言,在应答路由器作为呼叫路由器时,这个名称应该与应答路由器所用的用户凭证中的用户名相一致。点击下一步。 |
4. | 在连接类型页中,点击使用虚拟专用网络(VPN)连接,然后点击下一步。 |
5. | 在VPN类型页中,点击第二层隧道协议(L2TP),然后点击下一步。 |
6. | 在目标地址页中,输入应答路由器的IP地址。 |
7. | 在协议和安全性页中,选中在这个接口上路由IP数据包复选框。对于双向初始化的连接,请选择添加一个远程路由器可以拨号的用户帐户复选框。点击下一步。 |
8. | 在用于远程网络的静态路由页中,点击添加,添加分配给请求拨号接口的静态路由(如果需要)。 |
9. | 对于双向初始化的连接,请在拨入凭证页,在密码和确认密码中输入应答路由器作为呼叫路由器时所使用的用户帐户的密码,然后点击下一步。这一步将自动地创建一个与所创建的请求拨号接口同名的用户帐户。这样做使得在呼叫路由器初始化一个到应答路由器的连接时,它所使用的用户帐户名称与请求拨号接口相一致。因此,应答路由器可以确定来自呼叫路由器的传入连接是请求拨号连接,而不是远程访问连接。 |
10. | 在拨出凭证页,在用户名中输入用户名,在域中输入用户帐户域名,并在密码和确认密码中输入用户帐户密码。 |
11. | 在完成请求拨号接口向导页中,点击完成。 |
这种配置的结果是建立了一个基于PPTP的请求拨号接口,并在这个接口上启用了IP路由。会自动地添加与请求拨号接口同名的用户帐户,并具有正确的帐号和拨入设置。
为站点到站点VPN连接部署AAA基础构架包括下列步骤:
| • | 为用户帐户和组配置Active Directory。 |
| • | 在域控制器上配置主IAS服务器。 |
| • | 在另一个域控制器上配置第二个IAS服务器。 |
这个配置必须在每个包含应答路由器的站点上进行。对于具有少量计算机和单个应答路由器的分公司办公室来说,配置路由和远程访问服务,使其使用Windows身份验证和本地配置的远程策略,这样比配置一个单独的IAS服务器计算机要更方便一些。
为用户帐户和组配置Active Directory
要为用户帐户和组配置Active Directory,请执行下列操作:
1. | 确信所有呼叫路由器拥有相对应的用户帐户,并具有正确的帐户和拨入设置。这里包括所有用于分公司办公室和商业合作伙伴的呼叫路由器。在您使用请求拨号接口向导,在协议和安全性页面中选中添加一个远程路由器可以拨号的用户帐户复选框时,会自动地创建具有正确帐户和拨入设置的用户帐户。 |
2. | 根据呼叫路由器,将用户帐户组织到合适的通用组和嵌套组中,充分发挥基于组的远程访问策略的作用。详细信息,请参阅Windows Server 2003帮助和支持的"嵌套组"。 |
在域控制器上配置主IAS服务器
要在域控制器上配置主IAS服务器,请执行下列操作:
1. | 在域控制器上,将IAS作为可选网络组件安装。详细信息,请参阅Windows Server 2003帮助和支持中的"安装IAS"。 |
2. | 将IAS服务器计算机(域控制器)配置为读取域中帐户用户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。 |
3. | 如果IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,请检验这些域与IAS服务器计算机所属域具有双向信任关系。然后,将这个IAS服务器计算机配置为读取其他域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。更多有关信任关系的信息,请参阅Windows Server 2003帮助和支持的"理解域和森林"。 如果IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,但这些域与IAS服务器计算机所属域没有双向信任关系,那么您必须在这两个不信任域之间配置一个RADIUS代理。 |
4. | 启动帐户和身份验证事件的文件日志。详细信息,请参阅Windows Server 2003帮助和支持的"配置日志文件属性"。 |
5. | 添加VPN路由器,作为IAS服务器的RADIUS客户端。详细信息,请参阅Windows Server 2003帮助和支持的"添加RADIUS客户端"。对于每个VPN路由器的IP地址,请使用分配给VPN路由器的站点IP地址。如果您使用名称,那么请使用VPN路由器的内部名称。并使用强健的共享密钥。 |
6. | 创建能够反应您远程访问使用情况的远程访问策略。 例如,如果要为VPNRouters组的成员配置一个需要基于L2TP的站点到站点VPN连接的远程访问策略,使其使用MS-CHAP v2身份验证和128位加密,则请使用新建远程访问策略向导来创建一个具有下列设置的典型远程访问策略: 策略名称:站点到站点VPN连接(示例) 访问方法:VPN 访问组:VPNRouters组(示例) 身份验证方法:仅启用微软加密身份验证第二版(MS-CHAP v2) 策略加密级别:仅选择最强加密 |
如果IAS没有被安装在域控制器上,那么您必须配置这个主IAS服务器计算机来读取域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。
在另一个域控制器上配置第二个IAS服务器
要在另一个域控制器上配置第二个IAS服务器,请执行下列操作:
1. | 在另一个域控制器上,将IAS作为可选网络组件安装。详细信息,请参阅Windows Server 2003帮助和支持中的"安装IAS"。 |
2. | 将第二个IAS服务器计算机(另一个域控制器)配置为读取域中帐户用户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。 |
3. | 如果第二个IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,请检验这些域与IAS服务器计算机所属域具有双向信任关系。然后,将第二个IAS服务器计算机配置为读取其他域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。更多有关信任关系的信息,请参阅Windows Server 2003帮助和支持的"理解域和森林"。 如果第二个IAS服务器要对来自其他域的用户帐户的连接尝试进行身份验证,但这些域与第二个IAS服务器计算机所属域没有双向信任关系,那么您必须在这两个不信任域之间配置一个RADIUS代理。 |
4. | 要将主IAS服务器上的配置复制到第二个IAS服务器上,请在主IAS服务器的命令行提示符中输入 netsh aaaa show config >path\file.txt 。它将在一个文本文件中存储各种配置设置,包括注册表设置。这个路径可以是相对的、绝对的或是一个网络路径。 |
5. | 将在步骤4中创建的文件复制到第二个IAS服务器中。在第二个IAS服务器的命令行提示符中,输入netsh execpath\file.txt。这个操作将把主IAS服务器中的所有设置导入到第二个IAS服务器中。 |
如果IAS没有被安装在域控制器上,那么您必须配置第二个IAS服务器计算机来读取域中用户帐户的属性。详细信息,请参阅Windows Server 2003帮助和支持的"启用IAS服务器来读取Active Directory中的用户对象"。
为站点到站点VPN连接部署站点的网络基础构架包括下列步骤:
| • | 在VPN路由器上配置路由。 |
| • | 检验从每个VPN路由器的可到达性. |
| • | 为子网外地址池配置路由。 |
在VPN路由器上配置路由
为了使您的VPN路由器能够正确地将流量转发到它们所处的位置,您必须使用总结了站点内所有可能使用的地址的静态路由进行配置,或者使用路由协议进行配置,这样VPN路由器将可以作为一个动态路由器,自动地将站点子网的路由添加到它的路由表中。
要添加静态路由,请参阅Windows Server 2003帮助和支持的"添加静态路由"。要将VPN路由器部署为RIP路由器,请参阅"为IP配置RIP"。要将VPN路由器部署为OSPF路由器,请参阅Windows Server 2003帮助和支持中的"OSPF设计考虑事项"和"配置OSPF"。
检验从每个VPN路由器的可到达性
从每个VPN路由器,检验这个VPN路由器计算机能够解析名称,并成功地与WPN路由器所属站点中的资源进行通讯,检验的方法包括使用Ping命令、Internet Explorer以及创建站点中已知服务器的驱动器和打印机连接。
为子网外地址池配置路由
如果您使用静态地址池来配置VPN路由器,而在这些地址范围中有子网外范围,那么您必须确认在您的站点路由基础构架中拥有代表这些子网外地址范围的路由,使得能够达到呼叫路由器的虚拟接口。为了确保这一点,您可以将代表这些子网外地址范围的静态路由作为静态路由添加在VPN路由器的相邻路由器上,然后使用您站点的路由协议来将这些路由传播到其他路由器。在您添加这些静态路由时,您必须指定网关或下一个跳接地址为这个VPN路由器的站点接口。
或者,如果您使用RIP或OSPF,那么您可以将使用子网外地址池的VPN路由器配置为RIP或OSPF路由器。针对OSPF,您必须将这个VPN路由器配置为自治系统边界路由器(ASBR)。详细信息,请参阅Windows Server 2003帮助和支持的"OSPF设计考虑事项"。
部署站点间网络基础构架包括部署每个VPN路由器,使它们具有其他站点可以使用的子网路由(跨越每个站点到站点VPN连接)。这个部署工作可以通过下列几种方式来完成:
| • | 在每个VPN路由器上手动配置静态路由。 |
| • | 在每个VPN路由器上执行自动静态更新。 |
| • | 配置路由策略,在站点到站点VPN连接上运作。 |
在每个VPN路由器上手动配置静态路由
在路由和远程访问嵌入式管理单元中,执行下列步骤:
1. | 在控制台树中,点击IP路由,然后点击静态路由。 |
2. | 右键点击静态路由,然后点击新建静态路由。 |
3. | 在静态路由对话框中,选择合适的请求拨号接口名称,然后输入目标、网络掩码和规格。 |
4. | 点击确定,添加这个路由。 |
5. | 为添加其他路由,请返回步骤2。 |
注意: 由于请求拨号连接使一个点到点连接,因此无法配置网关IP地址 字段。您也可以在使用新建请求拨号接口向导创建请求拨号接口的过程中添加静态路由。
在每个VPN路由器上执行自动静态更新
如果在两个VPN路由器的请求拨号接口上都启动了RIP for IP,那么您将可以在VPN连接处于连接状态时,使用自动静态更新来自动地配置静态路由。为自动静态更新所配置的请求拨号端口将通过活动的连接发送一个请求,向连接另一端的路由器请求所有路由。在响应请求时,将请求的路由器的所有路由自动输入为请求路由器路由表中的静态路由。
在VPN路由器的路由和远程访问嵌入式管理单元中(假定站点到站点VPN连接是活动的),执行下列步骤:
1. | 在控制台树中,点击IP路由,然后点击常规。 |
2. | 在详细窗格中,右键点击合适的请求拨号接口,然后点击更新路由。 |
您也可以使用netsh命令来执行自动静态更新。详细信息,请参阅Windows Server 2000帮助和支持中的“计划自动静态更新”。
配置路由协议
如果站点到站点VPN连接是永久的(总处于活动状态),那么您也可以配置IP路由协议来在这个VPN连接上运作,例如路由信息协议(RIP)或开放式最短路径优先(OSPF)。详细信息,请参阅Windows Server 2003帮助和支持中的"设置RIP-for-IP路由的网络"和"设置OSPF路由的网络"。
下面是具有VPN路由器的防火墙的几种基本配置:
| • | VPN路由器连接到Internet,防火墙位于VPN路由器和站点之间。 |
| • | 防火墙连接到Internet,VPN路由器位于防火墙和站点之间。 |
| • | 使用两个防火墙,一个在VPN路由器和站点之间,另一个在VPN路由器和Internet之间。 |
为了防止VPN在其Internet接口上发送或接受除了VPN流量以外的其他流量,您需要在这个接口上配置PPTP或L2TP/IPSec输入和出站筛选器,对应于到Internet的连接。由于在这个Internet接口上启用了IP路由,因此如果没有在Internet接口上配置PPTP或L2TP/IPSec筛选器,那么在这个Internet接口上接受到的所有流量都将被路由,这样可能会将不需要的Internet流量转发给您的站点。
当VPN路由器位于防火墙之前,直接连接到Internet时,您需要在这个Internet接口上添加数据包筛选器,仅允许VPN流量进出VPN路由器的Internet接口。
对于入站流量,在隧道数据由VPN路由器进行解密后,它将被转发给防火墙。这种配置下的防火墙将作为站点流量的一个筛选器,它能够避免特定的资源被访问,能够对数据进行扫描以查找病毒,能够执行入侵侦测等等多种功能。
由于站点中所允许的Internet流量都必须通过这个VPN路由器,因此这种方法也能够避免非VPN Internet用户的文件传输协议(FTP)或Web站点资源共享。
图3现实了在防火墙前的VPN路由器。

图3:防火墙前的VPN路由器
这个防火墙将根据您网络安全性策略,为进出主机的站点流量配置合适的规则。
对于VPN路由器上的Internet接口,请使用路由和远程访问嵌入式管理单元来配置下列入站和出站筛选器。当您运行路由和远程访问服务器安装向导时,这些筛选器将被自动地配置。您所需要做的就是选择远程访问(拨号或VPN)选项,选择正确的接口,然后在VPN连接页中选择通过设置数据包筛选器,启用所选接口上的安全性选项。
针对PPTP的数据包筛选器
配置下列入站筛选器,并将筛选行为设置为丢弃所有的包,满足下面条件的除外:
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及TCP目标端口1723。 这个筛选器允许PPTP隧道维护流量到达VPN路由器。 |
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及IP协议ID 47。 这个筛选器允许PPTP隧道的数据到VPN路由器。 |
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及TCP[建立的]源端口1723。 当VPN路由器作为呼叫路由器时需要这个筛选器。通过这个TCP[建立的]筛选器,只有在这个VPN路由器初始化这个TCP连接时才接受流量。 |
配置下列出站筛选器,并将筛选行为设置为丢弃所有的包,满足下面条件的除外:
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及TCP源端口1723。 这个筛选器允许来自VPN路由器的PPTP隧道维护流量。 |
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及IP协议ID 47。 这个筛选器允许来自VPN路由器的PPTP隧道数据。 |
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及TCP目标端口1723。 当这个VPN路由器作为呼叫路由器时需要这个筛选器。 |
针对L2TP/IPSec的数据包筛选器
配置下列入站筛选器,并将筛选行为设置为丢弃所有的包,满足下面条件的除外:
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及UDP目标端口500。 这个筛选器允许Internet密钥交换(IKE)流量到达VPN路由器。 |
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及UDP目标端口4500。 这个筛选器允许IPSec NAT-T流量到达VPN路由器。 |
| • | VPN路由器Internet接口的目标IP地址、子网掩码255.255.255.255以及UDP目标端口1701。 这个筛选器允许L2TP流量到达VPN路由器。 |
配置下列出站筛选器,并将筛选行为设置为丢弃所有的包,满足下面条件的除外:
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及UDP源端口500。 这个筛选器将允许来自VPN路由器的IKE流量。 |
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及UDP源端口5500。 这个筛选器允许来自VPN路由器的IPSec NAT-T流量。 |
| • | VPN路由器Internet接口的源IP地址、子网掩码255.255.255.255以及UDP源端口1701。 这个筛选器允许来自VPN路由器的L2TP流量。 |
不需要为IP协议50的IPSec封装安全协议(ESP)流量配置筛选器。路由和远程访问服务筛选器将在IPSec组件删除ESP报头后应用。
在更常见的配置中,防火墙直接连接到Internet,而VPN路由器作为站点资源连接到周边网络(也被称为隔离区域[DMZ]或被屏蔽的子网)。周边网络是包含Internet用户可以访问的IP网络区段,例如Web和FTP服务器。VPN路由器在周边网络和站点上都具有接口。在这种方法中,防火墙必须在其Internet接口上配置入站和出站筛选器,允许隧道维护流量和隧道数据通过防火墙达到VPN路由器。也可以配置其他筛选器来允许流量通过防火墙到达周边网络中的Web、FTP和其他类型的服务器。为了增加一个安全层,也可以在VPN路由器的周边网络接口上配置PPTP或L2TP/IPSec数据包筛选器。
在这种配置中,防火墙作为Internet流量的筛选器,可以限制传入和传出流量达到周边网络中的特定资源上,可以执行入侵尝试侦测,避免服务拒绝攻击以及其他功能。
由于防火墙并不拥有每个VPN连接的加密密钥,因此它只能根据隧道数据的纯文本报头来进行筛选。也就是说,所有隧道数据都能够通过防火墙。但是这不会成为一个安全问题,因为VPN连接需要身份验证过程,这样能够避免非授权的访问越过VPN路由器。
图4现实了VPN路由器在周边网络中,位于防火墙之后。
对于防火墙的Internet和周边网络接口,请使用防火墙配置软件配置下列入站和出站筛选器。
针对PPTP的数据包筛选器
可以在Internet接口和周边网络接口上配置不同的入站和出站数据包筛选器。
在Internet接口上的筛选器
在防火墙的Internet接口上配置下列数据包筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的目标IP地址以及TCP目标端口1723 (0x6BB)。 这个筛选器允许PPTP隧道维护流量到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址以及IP协议ID 47 (0x2F)。 这个筛选器允许PPTP隧道数据到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址以及TCP源端口1723 (0x6BB)。 当VPN路由器作为呼叫路由器时需要这个筛选器。这个筛选器应该只与“VPN路由器在防火墙之前”中所描述的PPTP数据包筛选器一起使用,而且它应该配置在VPN路由器的周边网络接口上。由于允许所有TCP端口1723的流量到达VPN路由器,因此来自Internet的攻击可能使用这个端口。 |
在防火墙Internet接口上配置下列出站筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的源IP地址和TCP源端口1723 (0x6BB)。 这个筛选器允许来自VPN路由器的PPTP隧道维护流量。 |
| • | VPN路由器周边网络接口的源IP地址和IP协议ID 47 (0x2F)。 这个筛选器允许来自VPN路由器的PPTP隧道数据。 |
| • | VPN路由器周边网络接口的源IP地址和TCP目标端口1723 (0x6BB)。 当VPN路由器作为呼叫路由器时需要这个筛选器。这个筛选器应该只与“VPN路由器在防火墙之前”中所描述的PPTP数据包筛选器一起使用,而且它应该配置在VPN路由器的周边网络接口上。由于允许所有来自VPN路由器的流量到达TCP端口1723,因此来自Internet的攻击可能使用这个端口。 |
周边网络接口上的筛选器
在防火墙的周边网络接口上配置下列入站筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的源IP地址和TCP源端口1723(0x6BB)。 这个筛选器允许来自VPN路由器的PPTP隧道维护流量。 |
| • | VPN路由器周边网络接口的源IP地址和IP协议ID 47(0x2F)。 这个筛选器允许来自VPN路由器的PPTP隧道数据。 |
| • | VPN路由器周边网络接口的源IP地址和TCP目标端口1723 (0x6BB)。 当VPN路由器作为呼叫路由器时需要这个筛选器。这个筛选器应该只与“VPN路由器在防火墙之前”中所描述的PPTP数据包筛选器一起使用,而且它应该配置在VPN路由器的周边网络接口上。由于允许所有来自VPN路由器的流量到达TCP端口1723,因此来自Internet的攻击可能使用这个端口。 |
在防火墙周边网络接口上配置下列出站筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的目标IP地址和TCP目标端口1723(0x6BB)。 这个筛选器允许PPTP隧道维护流量到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和IP协议ID 47(0x2F)。 这个筛选器允许PPTP隧道数据到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和TCP源端口1723(0x6BB)。 当VPN路由器作为呼叫路由器时需要这个筛选器。这个筛选器应该只与“VPN路由器在防火墙之前”中所描述的PPTP数据包筛选器一起使用,而且它应该配置在VPN路由器的周边网络接口上。由于允许所有TCP端口1723的流量到达VPN路由器,因此来自Internet的攻击可能使用这个端口。 |
针对L2TP/IPSec的数据包筛选器
您可以在Internet接口和周边网络接口上配置不同的入站和出站数据包筛选器。
Internet接口上的筛选器
在防火墙周边网络接口上配置下列入站筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的目标IP地址和UDP目标端口500(0x1F4)。 这个筛选器允许IKE流量达到VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和UDP目标端口4500(0x1194)。 这个筛选器允许IPSec NAT-T流量到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和IP协议ID 50(0x32)。 这个筛选器允许IPSec ESP流量到达VPN路由器。 |
在防火墙Internet接口上配置下列出站数据包筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的源IP地址和UDP源端口500(0x1F4)。 这个筛选器允许来自VPN路由器的IKE流量。 |
| • | VPN路由器周边网络接口的源IP地址和UDP源端口4500(0x1194)。 这个筛选器允许来自VPN路由器的IPSec NAT-T。 |
| • | VPN路由器周边网络接口的源IP地址和IP协议ID 50(0x32)。 这个筛选器允许来自VPN路由器的IPSec ESP流量。 |
不需要为UDP端口1701上的L2TP流量设置筛选器。所有防火墙上的L2TP流量(包括隧道维护和隧道数据)都被加密为IPSec ESP有效负载。
周边网络接口上的筛选器
在防火墙的周边网络接口上配置下列入站数据包筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的源IP地址和UDP源端口500(0x1F4)。 这个筛选器允许来自VPN路由器的IKE流量。 |
| • | VPN路由器周边网络接口的源IP地址和UDP源端口4500(0x1194)。 这个筛选器允许来自VPN路由器的IPSec NAT-T。 |
| • | VPN路由器周边网络接口的源IP地址和IP协议ID 50(0x32)。 这个筛选器允许来自VPN路由器的IPSec ESP流量。 |
在防火墙的周边网络接口上配置下列出站数据包筛选器,允许下列类型的流量:
| • | VPN路由器周边网络接口的目标IP地址和UDP目标端口500(0x1F4)。 这个筛选器允许IKE流量达到VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和UDP目标端口4500(0x1194)。 这个筛选器允许IPSec NAT-T流量到达VPN路由器。 |
| • | VPN路由器周边网络接口的目标IP地址和IP协议ID 50(0x32)。 这个筛选器允许IPSec ESP流量到达VPN路由器。 |
不需要为UDP端口1701上的L2TP流量设置筛选器。所有防火墙上的L2TP流量(包括隧道维护和隧道数据)都被加密为IPSec ESP有效负载。
另一个配置就是将VPN路由器计算机放置在两个防火墙之间的周边网络中。Internet防火墙(Internet和VPN路由器之间的防火墙)筛选所有来自所有Internet客户端的Internet流量。站点防火墙(VPN路由器和站点之间的防火墙)筛选来自其他站点中主机的站点流量。
图5显示了位于周边网络中两个防火墙之间的VPN路由器。
在这个配置中:
| • | 根据“VPN路由器在防火墙之后”中所介绍的数据包筛选器来配置您的Internet防火墙和VPN路由器。 |
| • | 根据您的网络安全性策略,在站点防火墙上为进出呼叫路由器的站点流量配置合适的规则。 |
这一部分将介绍针对Windows Server 2003 VPN路由器的常用候补配置的相关信息。本文“部署基于PPTP站点到站点VPN连接”和“部署基于L2TP站点到站点VPN连接”中介绍了最常用的配置,主要的特点包括:
| • | VPN路由器拥有多个网络适配器,至少一个连接到站点,至少一个连接到Internet。 |
| • | VPN路由器的Internet接口上分配有静态公共IP地址。 |
| • | VPN路由器仅作为安全网关,提供与站点的路由连接。VPN路由器不驻留任何其他Internet服务,例如NAT或Web服务。 |
另外还有两种最常用的配置,它们是:
1. | VPN路由器执行其他功能,例如网络地址转换或Web托管。 |
2. | VPN路由器计算机具有单个网络适配器,它的公共IP地址由防火墙发布。 |
下面的内容将详细地介绍使VPN路由器符合其他常用配置时所需的更改。
在这个配置中,VPN路由器的主要特点包括:
| • | VPN路由器拥有多个网络适配器,至少一个连接到站点,至少一个连接到Internet。 |
| • | VPN路由器的Internet接口上分配有静态公共IP地址。 |
| • | VPN路由器作为安全网关,提供对站点的远程访问。另外它还驻留其他Internet服务,例如NAT或Web托管。 |
在这个配置中,您可以安装本文“部署基于PPTP的站点到站点VPN连接”和“部署基于L2TP的站点到站点VPN连接”中所介绍的过程进行配置。差别在于,您在运行路由和远程访问服务器安装向导时,在向导VPN连接页中,清除通过设置静态数据包筛选器,启用所选接口的安全性复选框。
在您清除通过设置静态数据包筛选器,启用所选接口的安全性复选框时,则将不在VPN路由器计算机的Internet接口上配置PPTP和L2TP/IPSec数据包筛选器。您是否需要手动配置这些筛选器取决于VPN路由器计算机是否驻留NAT。
| • | 如果需要在VPN路由器上配置NAT,那么不要配置PPTP和L2TP/IPSec数据包筛选器或其他类型流量的数据包筛选器。如果您在Internet接口上配置了PPTP和L2TP/IPSec数据包筛选器,那么NAT将无法工作。即使您没有在VPN路由器计算机Internet接口上配置任何数据包筛选器,NAT的功能也会丢弃任何不对应于站点客户端所请求流量的所有流量。 |
| • | 如果不需要在VPN路由器计算机上配置NAT,那么您可以配置PPTP和L2TP/IPSec数据包筛选器,也可以为VPN路由器计算机上所驻留的其他服务配置其他类型的筛选器。例如,如果VPN路由器计算机还驻留了一个Web站点,那么应该添加筛选器来允许流量进出VPN路由器计算机的公共IP地址和TCP端口80。 |
在这个配置中,VPN路由器计算机只有一个网络适配器,呼叫路由器所属站点中的节点访问驻留在VPN路由器计算机中的服务。如果VPN路由器计算机只有一个网络适配器,并被配置为公共IP地址,那么所有进出VPN路由器计算机所运行服务的流量都将以纯文本格式在VPN隧道外发送。详细信息,请参阅本文的“路由和多用途VPN路由器”。
只有一种情况下单适配器VPN路由器可以正常工作,那就是它位于防火墙后,由防火墙来为这个VPN路由器提供发布和转换服务。这个防火墙为VPN路由器发布(或使Internet知晓)一个静态公共IP地址。当VPN数据数据包被发送到这个发布的IP地址时,防火墙将把这个数据数据包的地址转换成VPN路由器在站点中所用的专用地址或其他公共地址。
图6显示了在这种配置下VPN路由器的发布地址和公共地址的示例。
根据本文“部署基于PPTP的站点到站点VPN连接”配置这个VPN路由器,将其接口作为Internet接口。并将防火墙配置为:
| • | 在Internet上发布VPN路由器名称的公共IP地址。 |
| • | 将发送到VPN路由器公共IP地址的PPTP流量转换到VPN路由器计算机的站点接口。 |
| • | 丢弃除了PPTP流量以外的所有进出VPN路由器计算机的流量。 |
Windows Server 2003提供了下列工具用于VPN连接的故障诊断:
| • | TCP/IP故障诊断工具 |
| • | 身份验证和记帐日志 |
| • | 无法到达的原因 |
| • | 事件日志 |
| • | IAS事件日志 |
| • | PPP日志 |
| • | 跟踪 |
| • | Oakley日志 |
| • | 网络监视器 |
TCP/IP故障诊断工具
Ping、Tracert和Pathping工具使用ICMP Echo和Echo Reply消息来验证连接性、显示到达目标的路径以及检测路径的完整性。route print命令用来显示IP路由表。或者,您也可以使用netsh routing ip show rtmroutes命令或路由和远程访问嵌入式管理单元。
除了一般的TCP/IP工具以外,您还可以使用Netdiag工具来检测和显示您网络的配置。
身份验证和记帐日志
在启用Windows身份验证或Windows记帐时,运行Windows Server 2003的VPN路由器支持VPN连接的身份验证和记帐信息的日志,将这些信息保存在本地日志文件中。这个日志与系统事件日志中记录的事件是不同的。您可以使用这些记录的信息来跟踪站点到站点的连接使用和身份验证尝试。这种身份验证和记帐日志对于远程访问策略问题的故障诊断特别有用。对于每个身份验证尝试,不论是接受还是拒绝这个连接尝试,其远程访问策略的名称都会被记录下来。
您可以在路由和远程访问嵌入式管理单元(如果路由和远程访问服务被配置为Windows身份验证和记帐)或在Internet身份验证服务嵌入式管理单元(如果路由和远程访问服务被配置为RADIUS身份验证,而RADIUS服务器是一个IAS服务器)中的远程访问日志文件夹中,在本地文件对象属性的设置选项卡中启用身份验证和记帐日志。
身份验证和记帐信息将被存储在一个或多个可配置的日志文件中,保存在SystemRoot\System32\LogFiles文件夹中。这些日志文件以Internet身份验证服务(IAS)或数据库兼容的格式保存,这意味着所有数据库程序都可以直接读取日志文件进行分析。
如果VPN路由器被配置为RADIUS身份验证和记帐,而RADIUS服务器是一个运行Windows Server 2003和IAS的计算机,那么身份验证和记帐日志将保存在IAS服务器计算机的SystemRoot\System32\LogFiles文件夹中。
Windows Server 2003的路由和远程访问服务和IAS也可以将身份验证和记帐信息发送到结构化查询语言(SQL)服务器数据库。
无法到达的原因
当请求拨号接口无法建立连接时,接口将处于一种无法到达状态,路由和远程访问服务将记录下导致连接尝试失败的原因。要在路由和远程访问嵌入式管理单元中查看无法到达的原因,请点击网络接口。在细节窗格中,右键点击请求拨号接口,然后点击无法到达的原因。
事件日志
在路由和远程访问嵌入式管理单元中,VPN路由器属性的日志选项卡拥有4种等级的日志。请选择记录所有事件,然后再次尝试连接。在连接失败后,检查系统事件日志,查看在连接过程中所记录的事件。在查看了远程访问事件后,请在日志选项卡中选择记录错误和警告选项,节约系统资源。
IAS事件日志
如果您的VPN路由器被配置为RADIUS身份验证,而您的RADIUS服务器是运行Windows Server 2003和IAS的计算机,那么请查看系统事件日志,了解拒绝或接受连接尝试的IAS事件。IAS系统事件日志条目包括许多关于连接尝试的信息,包括接受或拒绝这个连接尝试的远程访问策略的名称。拒绝或接受连接尝试的事件记录是默认启用的,您可以在Internet身份验证服务嵌入式管理单元的IAS服务器属性中,在服务选项卡上进行配置。
PPP日志
PPP 日志记录记载了在 PPP 连接期间的编程函数系列和 PPP 控制消息,并且在解决 PPP 连接失败问题时,它是很有价值的故障诊断信息来源。要启用 PPP 日志记录,请在远程访问服务器属性的日志选项卡中,选中记录其他路由和远程访问信息选项。
Windows NT 4.0 中的 PPP 日志已经被跟踪功能替换了。要复制 PPP 日志,需要启用对 PPP 项的文件跟踪。在默认情况下,PPP 日志作为 ppp.log 文件存储在SystemRoot\Tracing文件夹中。
跟踪
Windows Server 2003路由和远程访问服务具有广泛的跟踪能力,可用于解决复杂的网络问题。您可以启用Windows Server 2003中的组件,使用Netsh命令或通过注册表将跟踪信息记录到文件中。
使用Netsh启用跟踪
您可以使用Netsh命令来启用和禁用特定组件或所有组件的跟踪。要启用和禁用特定组件的跟踪,请使用下列语法:
netsh ras set tracingComponentenabled|disabled
在这里,Component是在注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Tracing下能够找到的路由和远程访问服务组件列表中的一个组件。例如,要跟踪RASAUTH组件,这个命令将是:
netsh ras set tracing rasauth enabled
要启用对所有组件的跟踪,请使用下面的命令:
netsh ras set tracing * enabled
通过注册表启用跟踪
您还可以通过更改注册表中的下列设置来配置跟踪功能:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Tracing
通过设置在稍后所描述的注册值,您可以启用对每个路由和远程访问服务的跟踪。当路由和远程防务服务正在运行时,您可以启用和禁用对组件的跟踪功能。每个组件都可以使用跟踪功能,并显示为前面的注册表项下的注册表子项
要启用每个路由协议的跟踪功能,您可以对每个协议项都配置下列注册表项:
EnableFileTracing REG_DWORD Flag
通过将EnableFileTracing设置为 1,您可以启用将跟踪信息记录到文件功能。默认值为 0。
FileDirectory REG_EXPAND_SZ Path
通过将FileDirectory设置为您需要的路径,可以更改跟踪文件的默认位置。日志文件的文件名就是启用跟踪功能的组件的名称。默认情况下,日志文件放在SystemRoot\Tracing文件夹中。
FileTracingMask REG_DWORD LevelOfTracingInformationLogged
FileTracingMask决定记录到文件中的跟踪信息量。默认值是 0xFFFF0000。
MaxFileSize REG_DWORD SizeOfLogFile
通过将MaxFileSize设置为不同的值,可以更改日志文件的大小。默认值是0x10000 (64K)。
注意: 跟踪需要占用系统资源,因此应该限制它的使用,只用来帮助标识网络问题。在跟踪被捕获或标识出问题后,您应该立即禁用跟踪。不要在多处理器计算机上长时间启用跟踪。 跟踪信息可能很复杂且极为详细。多数情况下,该信息只对 Microsoft 产品支持服务工程师或对路由和远程访问很熟悉的网络管理员有用。跟踪信息可以被保存为文件,发送给Microsoft支持用于分析。
Oakley日志
您可以使用Oakley日志来查看有关IPSec安全管理(SA)协商过程的详细信息。您可以在注册表中启用Oakley日志。在默认情况下,这个日志不是启用的。要启用Oakley日志,请将HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\PolicyAgent\Oakley\EnableLogging注册表设置设为1。默认情况下,Oakley 项并不存在,必须创建。
在启用Oakley日志后,它将被存储在SystemRoot\Debug文件夹中,记录所有IPSec SA协商。在每次IPSec策略代理启动时,都会创建一个新的Oakley.log文件,以前版本的Oakley.log文件将被保存为Oakley.log.sav。
要在修改EnableLogging注册表设置之后激活新的设置,请先停止然后重新启动IPSec策略代理以及相关的IPSec服务,具体方法为依次运行下列命令:
1. | 使用net stop remoteaccess命令,停止路由和远程访问服务。 |
2. | 使用net stop policyagent命令,停止IPSec服务。 |
3. | 使用net start policyagent命令,启动IPSec服务。 |
4. | 使用net start remoteaccess命令,启动路由和远程访问服务。 |
网络监视器
使用网络监视器(Windows Server 2003提供的数据包获取和分析工具),可以获取和查看在VPN连接过程和数据传输过程中在VPN路由器之间发送的流量。您不能使用网络监视器来截取VPN流量的加密部分。在控制面板-添加或删除程序中选择添加或删除Windows组件时,您可以将网络监视器作为可选的管理和监视工具安装。
使用网络监视器对VPN流量进行正确的解释需要深入的理解PPP、PPTP、IPSec及其他协议。网络监视器截取的信息可以保存为文件,发送给Microsoft支持用作分析。
站点到站点VPN问题通常可以分成下面几类:
| • | 在连接尝试应该被接受时被拒绝。 |
| • | L2TP/IPSec身份验证问题。 |
| • | EAP-TLS身份验证问题。 |
| • | 在连接尝试应该被拒绝是被接受。 |
| • | 无法到达VPN路由器以外的位置。 |
| • | 无法到达VPN路由器的虚拟接口。 |
| • | 无法自动建立请求连接。 |
| • | 无法建立隧道。 |
通过下面的故障诊断技巧,您可以区分导致上述VPN问题的配置或基础构架问题。
在连接尝试应该被接受时被拒绝
| • | 核实呼叫路由器证书正确,包括用户名、密码和域名,并核实应答路由器能够通过该证书。 | ||||||||
| • | 核实呼叫路由器的用户帐户没有发生下列情况:被锁定、过期、被禁用,或建立连接的时间与所配置的登录时间不相符。 | ||||||||
| • | 核实呼叫路由器的用户帐户没有被配置为在下次登录时更改密码,或核实密码是否过期。在连接过程中,呼叫路由器无法更改过期的密码,从而会导致连接尝试被拒绝。 | ||||||||
| • | 核实用户帐户没有远程访问帐户锁定而被锁定。详细信息,请参阅Windows Server 2003帮助和支持的"帐户锁定"。 | ||||||||
| • | 核实在应答路由器上正在运行路由和远程访问服务。 | ||||||||
| • | 核实在路由和远程访问嵌入式管理单元中,从VPN路由器属性的常规选项卡为LAN和请求拨号路由启用了应答路由器。 | ||||||||
| • | 核实在路由和远程访问嵌入式管理单元中,从端口对象的属性中启用了用于请求拨号路由连接(入站的和出站的)的WAN小端口(PPTP)和WAN小端口(L2TP)设备。 | ||||||||
| • | 核实呼叫路由器、应答路由器以及对应于站点到站点VPN连接的远程访问策略被配置为使用至少一种共同的身份验证方式。 | ||||||||
| • | 核实呼叫路由器和对应于站点到站点VPN连接的远程访问策略被配置为使用至少一种共同的加密强度。如果呼叫路由器无法进行128位加密,而在远程访问策略中要求最强加密级别,那么这个连接尝试就会被拒绝。 | ||||||||
| • | 核实连接的参数通过远程访问策略来授权。 为了建立连接,连接尝试的参数必须:
要获得拒绝连接尝试的远程访问策略的名称,请扫描记帐日志,搜索对应于连接尝试的条目以获得策略名称。 | ||||||||
| • | 如果您在运行路由和远程访问服务器安装向导时使用具有域管理员权限的帐户登录,那么它将自动地将RAS和IAS服务器域本地安全组的计算机帐户。这个组的成员关系将允许应答路由器计算机访问用户帐户信息。如果应答路由器无法访问用户帐户信息,请核实:
| ||||||||
| • | 对于使用EAP-TLS和路由器(离线请求)证书的请求拨号连接,请核实正确地配置了呼叫路由器和应答路由器。 在呼叫路由器上,核实在请求拨号接口的高级安全属性中,将EAP配置为身份验证协议。核实智能卡或其他证书(启用加密) EAP类型的属性的设置。核实在配置请求拨号接口的证书时选择了正确的路由器(离线请求)证书。 在应答路由器上,核实在应答路由器上启用了EAP作为身份验证,并在符合的远程访问策略上启用了EAP-TLS。核实在用于站点到站点VPN连接的远程访问策略中,从智能卡或其他证书 EAP类型的配置设置中选择了正确的身份验证服务器(应答路由器或IAS服务器)计算机证书 。 核实为呼叫路由器签署用户证书的CA能够沿着有效的证书链追溯到应答路由器信任的根CA。另外,核实为应答路由器签署计算机证书的CA能够沿着有效的证书链追溯到呼叫路由器信任的根CA。 在默认情况下,在对呼叫路由器进行身份验证时,应答路由器将检查证书撤回列表(CRL)。如果CRL能够在本地获得,那么将对它进行检查。在某些配置中,在连接建立之前是无法对CRL进行检查的。CRL存储在根CA和Active Direcotry(有时)。如果分公司办公室路由器在一个不包含根CA的站点中作为应答路由器使用,那么有两种方法来解决这个问题:
| ||||||||
| • | 当作为混合模式或本机模式域成员的应答路由器被配置为Windows身份验证时,请核实:
| ||||||||
| • | 核实为呼叫路由器和应答路由器上的路由启用了IP。 | ||||||||
| • | 核实呼叫路由器和应答路由器上的所有PPTP或L2TP没有全部被使用。如果需要,请在路由和远程访问嵌入式管理单元的端口对象属性中更改PPTP或L2TP端口的数量,允许更多的同步连接。 | ||||||||
| • | 核实应答路由器支持呼叫路由器的隧道协议。 在默认情况下,具有设置为自动的VPN类型的Windows Server 2003请求拨号接口将尝试首先建立基于PPTP的VPN连接,然后再尝试基于L2TP/IPSec的VPN连接。如果选择了点到点隧道协议(PPTP)或第二层隧道协议(L2TP)服务器类型选项,请核实应答路由器支持所选的隧道协议。 根据您在运行路由和远程防务服务器安装向导所做出的选择,运行路由和远程访问服务的Windows Server 2003计算机将成为拥有5或128个L2TP端口或和5或128个PPTP端口的PPTP和L2TP服务器。要创建一个只拥有PPTP的服务器,请将L2TP端口的数量设置为0。要创建一个只拥有L2TP的服务器,请将PPTP端口的数量设置为1,并在路由和远程访问嵌入式管理单元的端口对象属性中,禁用WAN小端口(PPTP)设备的远程访问入站连接和请求拨号连接。 | ||||||||
| • | 核实身份验证提供者的配置。应答路由器可以被配置为使用Windows和RADIUS来对呼叫路由器的证书进行身份验证。
| ||||||||
| • | 对于使用MS-CHAP、并尝试协商40位MPPE加密的PPTP连接,请核实呼叫路由器的密码长度大约14位。 |
L2TP/IPSec身份验证问题
下面列出了导致站点到站点L2TP/IPSec连接失败的最常见问题:
| • | 无证书 在默认情况下,站点到站点L2TP/IPSec连接要求呼叫路由器和应答路由器交换用于IPSec对身份验证的计算机证书。请使用证书嵌入式管理单元,检查呼叫路由器和应答路由器的本地计算机证书存储库,确定其中拥有合适的证书。 |
| • | 不正确的证书 如果存在证书,那么它们必须是可证实的。与手动配置IPSec规则不同,用于L2TP/IPSec连接的证书授权机构(CA)的列表是不可配置的。相反,L2TP/IPSec连接中的每个路由器都将向它的IPSec对发送一个根CA列表,表明它接受来自这些CA的证书用于身边验证。这个列表中的根CA对应于为计算机签署计算机证书的根CA。例如,如果Router A由根CA CertAuth1和CertAuth2签署计算机证书,那么在主模式协商过程中,它会通知它的IPSec对它只接受来自CertAuth1和CertAuth2的证书用于身份验证。如果这个IPSec对(Router B)没有由CertAuth1或CertAuth2签署的有效的计算机证书,那么IPSec安全协商将会失败。 呼叫路由器必须拥有有效的计算机证书,并且签署这个证书的CA能够沿着有效的证书链追溯到应答路由器信任的根CA。另外,应答路由器必须拥有有效的计算机证书,并且签署这个证书的CA能够沿着有效的证书链追溯到呼叫路由器信任的根CA。 在默认情况下,L2TP/IPSec连接要求呼叫路由器和应答路由器交换用于IPSec对身份验证的计算机证书。请使用证书嵌入式管理单元,检查呼叫路由器和应答路由器的本地计算机证书存储库,确定其中拥有合适的证书。 |
| • | 呼叫路由器和应答路由器之间的NAT 如果呼叫路由器或应答路由器运行Windows 2000 Server,而呼叫路由器和应答路由器之间存在NAT,那么您将无法建立L2TP/IPSec连接。对于站点到站点VPN连接而言,只有Windows Server 2003才支持IPSec NAT-T。Microsoft的Windows 2000 Server不支持IPSec NAT-T。 |
| • | 呼叫路由器和应答路由器之间的防火墙 如果呼叫路由器和应答路由器之间存在防火墙,而您无法建立L2TP/IPSec连接,那么请核实该防火墙允许转发L2TP/IPSec流量。详细信息,请参阅附录A。 |
用于解决IPSec身份验证问题的最佳工具之一就是Oakley日志。详细信息,请参阅本文中的"Oakley 日志"。
EAP-TLS身份验证问题
当将EAP-TLS用于身份验证时,呼叫路由器将提交一个路由器(离线请求)用户证书,而身份验证服务器(应答路由器或RADIUS服务器)将提交一个计算机证书。
为了使身份验证服务器能够证实呼叫路由器的证书,在呼叫路由器所发送的证书链中的每个证书都必须满足下列条件:
| • | 当前的日期必须在证书的有效期内。 在签署证书时,它们具有一个有效期。在有效期之间,它们无法使用,而在有效期过后,它们将被认为是过期的。 |
| • | 证书没有被撤回。 签署的证书可能在任何时候被撤回。每个CA都通过发布最新的证书撤回列表(CRL),来维护一个不再有效的证书列表。在默认情况下,身份验证服务器将检查所有呼叫路由器证书链(从呼叫路由器证书到根CA的一系列证书)中的证书是否被撤回。如果在这个链中的任意证书已经被撤回了,那么这次证书检验将失败。您可以通过注册表设置来更改这种行为,详细内容将在稍后介绍。 要在证书嵌入式管理单元中查看证书的CRL分布点,请获得证书属性,点击细节选项卡,然后点击CRL分布点字段。 证书撤回检验只能在CRL发布和分布式系统中正常工作。如果没有经常更新证书的CRL,那么由于身份验证服务器所检查的公布的CRL已经过时,因此已经被撤回的证书可能仍被认为有效。 |
| • | 证书拥有一个有效的数字签名。 CA在签署证书时会对它们进行数字签名。身份验证服务器将从证书签署CA处获得公共密钥,通过计算检验数字签名,检验证书链中的每个证书(根CA证书除外)。 |
呼叫路由器证书必须还拥有客户端身份验证证书用途(也被称为增强密钥使用[EKU])(OID 1.3.6.1.5.5.7.3.2),而且必须包含有效用户帐户的UPN或有效计算机帐户的FQDN,用于证书的受领方备用名称(Subject Alternative Name)属性。
要在证书嵌入式管理单元中查看证书的EKU,请在内容窗格中双击该证书,点击细节选项卡,然后点击增强密钥使用字段。要在证书嵌入式管理单元中查看证书的受领方备用名称属性,请在内容窗格中双击该证书,点击细节选项卡,然后点击受领方备用名称字段。
最后,为了信任呼叫路由器所提供的证书链,身份验证服务器必须在其信任的根证书颁发机构存储库中安装有签署呼叫路由器证书的CA的根CA证书。
另外,身份验证服务器将核实在EAP-Response/Identity消息中发送的身份与证书受领方备用名称属性的名称相同。这能够避免恶意用户假冒成其他在EAP-Response/Identity消息中指定的用户。
如果身份验证服务器是Windows Server 2003应答路由器或IAS服务器,那么在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\13中的下列注册表设置可以更改在执行证书撤回时EAP-TLS的行为:
| • | IgnoreNoRevocationCheck 在设置为1时,身份验证服务器将允许EAP-TLS客户端进行连接,即使它没有执行或没有完成呼叫路由器证书链(除了根证书)的撤回检查。在通常情况下,撤回检查会因为证书没有包括CRL信息而失败。 在默认情况下,IgnoreNoRevocationCheck被设置为0(禁用)。在身份验证服务器完成客户端证书链(包括根证书)的撤回检查,并证实这些证书都没有被撤回后,EAP-TLS客户端才能进行连接。 您可以使用这个条目,在证书不包含CRL分布点(例如来自于第三方的证书)时对客户端进行身份验证。 |
| • | IgnoreRevocationOffline 当设置为1时,身份验证服务器将允许EAP-TLS客户端进行连接,即使存储CRL的服务器无法在网络中访问。在默认情况下,IgnoreRevocationOffline被设置为0。 在身份验证服务器完成客户端证书链(包括根证书)的撤回检查,并证实这些证书都没有被撤回后,EAP-TLS客户端才能进行连接。当身份验证服务器无法连接到存储撤回列表的服务器时,EAP-TLS将认为证书没有通过撤回检查。 将IgnoreRevocationOffline设置为1,这样能够避免由于差的网络状况阻止撤回检查顺利完成而导致证书验证失败。 |
| • | NoRevocationCheck 当设置为1时,身份验证服务器将阻止EAP-TLS执行呼叫路由器证书的撤回检查。撤回检查能够证实呼叫路由器证书及其证书链中的其他证书都没有被撤回。在默认情况下,NoRevocationCheck被设置为0。 |
| • | NoRootRevocationCheck 当设置为1时,身份验证服务器将阻止EAP-TLS执行路由器根CA证书的撤回检查。在默认情况下,NoRootRevocationCheck被设置为0。这个条目仅排除了对客户端根CA证书的撤回检查。对于呼叫路由器证书链其他证书的撤回检查仍将进行。 您可以使用这个条目,在证书没有包含CRL分布点(例如,来自第三方的证书)时对客户端进行身份验证。同时,这个条目也能够避免在证书撤回列表离线或过期时导致与证书相关的延迟。 |
所有这些注册表设置都必须添加为DWORD类型,它们的有效值是0或1。呼叫路由器不使用这些设置。
为了使呼叫路由器能够为EAP-TLS身份验证证实身份验证服务器的证书,由身份验证服务器发送的证书链中所有证书都必须满足下列条件:
| • | 当前的日期必须在证书的有效期内。 在签署证书时,它们具有一个有效期。在有效期之间,它们无法使用,而在有效期过后,它们将被认为是过期的。 |
| • | 证书拥有一个有效的数字签名。 CA在签署证书时会对它们进行数字签名。呼叫路由器将从证书签署CA处获得公共密钥,通过计算检验数字签名,检验证书链中的每个证书(根CA证书除外)。 |
另外,身份验证服务器证书必须还拥有服务器身份验证EKU(OID 1.3.6.1.5.5.7.3.1)。要在证书嵌入式管理单元中查看证书的EKU,请在内容窗格中双击该证书,点击细节选项卡,然后点击增强密钥使用字段。
最后,为了信任身份验证服务器所提供的证书链,呼叫路由器必须在其信任的根证书颁发机构存储库中安装有签署身份验证服务器证书的CA的根CA证书。
请注意,呼叫路由器并不对身份验证服务器计算机证书的证书链中所有的证书进行撤回检查。这是基于呼叫路由器没有连接到网络的假设,因此可能也无法访问Web页面或其他资源来检查证书的撤回情况。
在连接尝试应该被拒绝是被接受。
| • | 核实用户帐户的远程访问权限设置为拒绝访问或通过远程访问策略来控制访问。如果被设置为后者,请核实第一个符合的远程访问策略的远程访问权限被设置为拒绝远程访问权限。为了获得接受这个连接尝试的远程访问策略的名称,请扫描记帐日志,搜索对应于连接尝试的条目以获得策略名称。 |
| • | 如果您已经创建了一个明确拒绝所有连接的远程访问策略,请核实策略条件、远程访问权限以及配置文件。 |
| • | 对于证书已经被撤回时的基于证书的身份验证,可能还没有发布CA的CRL更改。那么身份验证服务器将使用旧的CRL,没有当前已经撤回的证书。为了缩短证书撤回和身份验证服务器了解到撤回的证书之间的时间,请减少CRL发布时间。在Windows Server 2003 CA中,这个发布时间可以设置为1小时。详细信息,请参阅Windows Server 2003帮助和支持的"撤回证书和发布CRL"。 |
无法到达VPN路由器以外的位置。
| • | 核实启用了IP路由(在VPN路由器的IP选项卡上)。 |
| • | 核实在被路由的协议中添加了合适的请求拨号接口。 |
| • | 核实在呼叫路由器和应答路由器站点的站点路由器中拥有路由,因此双方网络中的位置都可以到达。您可以通过静态路由在每个站点路由器中添加路由,或者通过在呼叫路由器和应答路由器站点接口上启用路由协议来添加路由。 与远程访问连接不同,请求拨号连接不能自动创建默认路由。您需要在请求拨号连接的两端创建路由,使得流量可以被路由进出请求拨号连接的另一端。 您可以手动地将静态路由添加到路由表中,或者通过路由协议来添加静态路由。对于永久请求拨号连接,您可以在请求拨号连接上启用开放式最短路径优先(OSPF)或路由信息协议(RIP)。对于按需请求拨号连接,您可以通过自动静态RIP更新来自动地更新路由。 |
| • | 对于双向初始化的站点到站点VPN连接,请核实应答路由器没有将站点到站点VPN连接错认为远程访问连接。 对于双向初始化的连接,每个路由器都可能是呼叫路由器或应答路由器。用户名和请求拨号接口名称必须正确匹配。例如,在下面的配置中,双向初始化的连接将能够正常工作: Router 1的请求拨号接口名称为NEW-YORK,它被配置为在发送身份验证凭证时使用SEATTLE作为用户名。 Router 2的请求拨号接口名称为SEATTLE,它被配置为在发送身份验证凭证时使用NEW-YORK作为用户名。 在这个例子中,假定Router 2可以验证SEATTLE用户名,Router 1可以验证NEW-YORK用户名。 如果传入呼叫者是一个路由器,接受到这个呼叫的端口状态为活动,相应的请求拨号接口处于连接状态。如果在路由和远程访问嵌入式管理单元中,呼叫路由器凭证的用户帐户名称出现在远程访问客户端中,那么应答路由器将认为这个呼叫路由器是远程访问客户端。 |
| • | 对于单向初始化的请求拨号连接,请核实在呼叫路由器的用户帐户上启用了合适的静态路由,并使用路由协议对应答路由器进行配置。使得在连接建立时,呼叫路由器用户帐户的静态路由能够被广告到相邻路由器上。 |
| • | 核实在呼叫路由器和应答路由器的请求拨号接口上没有IP数据包筛选器阻止TCP/IP的发送和接受。 您可以使用IP入站和出站筛选器来配置每个请求拨号接口,来控制允许进出请求拨号接口的TCP/IP流量的确切特性。 |
无法到达VPN路由器的虚拟接口
| • | 核实呼叫路由器和应答路由器上的IP地址池。 如果VPN路由器被配置为使用静态IP地址池,请核实对于站点的主机和路由器来说,这个静态IP地址池所定义的地址区段的路由是可以到达的。如果不是,那么必须在站点路由器中必须添加由VPN路由器静态地址池所组成的IP路由(由IP地址和区段掩码来定义),或者在VPN路由器的路由基础构架上启用路由协议。如果没有提供到地址池子网的路由,那么呼叫路由器逻辑接口将无法接受来自站点中位置的流量。用于子网的路由可以通过静态路由条目或路由协议(例如开放式最短路径优先[OSPF]或路由信息协议[RIP])来实现。 如果VPN路由器被配置为使用DHCP用于IP地址分配,而又没有可用的DHCP服务器,那么VPN路由器将分配自动专用IP寻址(APIPA)地址范围(从169.254.0.1到169.254.255.254)。只有在VPN路由器所属网络也使用APIPA地址时,为VPN路由器分配APIPA地址才能起作用。 如果在DCHP服务器可用时VPN路由器仍使用APIPA地址,则请核实选择了正确的适配器来获取DHCP分配的IP地址。在默认情况下,VPN路由器根据您在路由和远程访问服务器安装向导中的选择来选择通过DHCP获取IP地址的适配器。您可以在路由和远程访问嵌入式管理单元的VPN路由器属性中,在IP选项卡的适配器列表中手动选择一个LAN适配器。 如果这个静态IP地址池的IP地址范围是VPN路由器所属网络IP地址范围的子网,那么请核实这个静态IP地址池中的IP地址范围没有通过静态配置或DHCP分配给其他TCP/IP节点。 |
无法自动建立请求连接
| • | 核实在呼叫路由器属性的IP选项卡上启用了IP路由。 |
| • | 核实存在正确的静态路由,并且配置有合适的请求拨号接口。 |
| • | 对于使用请求拨号接口的静态路由,核实在请求拨号接口属性中选中了使用这个路由来初始化请求拨号连接。 |
| • | 核实请求拨号接口没有处于禁用状态。 要启用处于禁用状态的请求拨号接口,请在路由和远程访问嵌入式管理单元的网络接口下右键点击请求拨号接口,然后点击启用。 |
| • | 核实呼叫路由器请求拨号接口的拨出时间没有阻止这个连接尝试。 要配置拨出时间,请在路由和远程访问嵌入式管理单元的网络接口下右键点击请求拨号接口,然后点击拨出时间。 |
| • | 核实呼叫路由器请求拨号接口的请求拨号筛选器没有阻止这个连接尝试。 要配置请求拨号筛选器,请在路由和远程访问嵌入式管理单元的网络接口下右键点击请求拨号接口,然后点击设置IP请求拨号筛选器。 |
无法建立隧道
| • | 核实在呼叫路由器和应答路由器之间的路由器接口上的数据包筛选没有阻止隧道协议流量的转发。有关为PPTP和L2TP/IPSec流量必须允许的流量类型的信息,请参阅附录A。 在基于Windows Server 2003的VPN路由器上,可以在高级TCP/IP属性以及路由和远程访问嵌入式管理单元中分别配置IP数据包筛选。请检查这两个地方,查看是否有筛选器可能阻止VPN连接流量。 |
| • | 核实在VPN路由器上没有正在运行Winsock代理客户端。 当Winsock代理客户端处于活动状态时,用于创建隧道和发送隧道数据的Winsock API呼叫将被截取,然后被转发到配置的代理服务器上。 基于代理服务器的计算机允许公司在没有直接连接到Internet的情况下,访问特定类型的Internet资源(通常是Web和FTP)。作为替代,公司可以使用专用IP网络ID(例如10.0.0.0/8、172.16.0.0/12以及192.168.0.0/16)。 在公司中的专用用户需要像直接连接到Internet那样访问公共Internet资源时,通常使用代理服务器。而在授权的公共INternet用户需要像直接连接到专用网络那样访问专用企业资源时,通常使用VPN连接。一个单独的计算机可以既作为代理服务器(用于专用用户),也作为VPN服务器(用于授权Internet用户),从而简化两种信息交换方式。 |
本文详细介绍了基于Windows Server 2003的站点到站点VPN部署的组件及相关设计决策,包括VPN路由器、Internet基础构架、身份验证协议、VPN协议、站点基础构架、AAA基础构架和证书基础构架。本文还包括使用运行Windows Server 2003的计算机来部署PPTP和L2TP/IPSec站点到站点VPN的详细步骤、防火墙配置的详细说明,以及有关VPN故障诊断工具和VPN常见问题及其解决方案的讨论。
参阅下列资源,了解更多信息:
有关Windows Server的最新消息,请参阅Windows Server 2003 Web站点,地址为http://www.microsoft.com/windowsserver2003/default.mspx。