部署拨号和 VPN 远程访问服务器

来源:互联网 发布:地缘政治 知乎 编辑:程序博客网 时间:2024/04/28 20:06
部署拨号和 VPN 远程访问服务器


from:http://www.microsoft.com/china/technet/prodtechnol/windowsnetserver/evaluate/cpp/reskit/netsvc/rkdnsvpn.asp
from:http://blog.csdn.net/clin003
China * 快速链接  | 微软中文主页 | 全球站点   Microsoft TechNet * 在 Microsoft.com 中搜索:
TechNet 中文网站主页 | 中文速递邮件 | 网络广播 | 系列活动 | TechNet 订阅 | 增值服务区 | 技术资源库  
Exchange Server SQL Server Windows Server 2003 Windows XP Windows Vista 更多产品与技术 技术指南 Microsoft IT 展示窗口 中小型 IT 解决方案 更多 IT 解决方案 安全公告 安全通报 安全指南 更多安全 桌面部署 脚本中心 专栏文章 下载中心 虚拟实验室 反馈中心 站点地图      

部署拨号和 VPN 远程访问服务器

为使远程用户能够安全而可靠地访问您的网络资源,请使用 Microsoft Windows .NET Server 2003 标准版、Windows .NET Server 2003 企业版、Windows .NET Server 2003 Datacenter 版和 Windows .NET Server 2003 Web 版(在本章中统称为 Windows .NET Server 2003 系列)中的远程访问和安全技术。Windows .NET Server 2003 Web 版仅限用于使用点对点隧道协议 (PPTP) 和第 2 层隧道协议 (L2TP) 的单个虚拟专用网络 (VPN) 连接。

可以使用“路由和远程访问”来设计和部署拨号解决方案,也可以通过部署 VPN 解决方案来利用 Internet。

资源工具包中的有关信息

  • 有关设计和部署公钥基础结构 (PKI) 的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“设计公钥基础结构”。
  • 有关部署智能卡的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“部署智能卡”。
  • 有关设计和部署 Internet 身份验证服务 (IAS) 的详细信息,请参见本书中的“部署 IAS”。
  • 有关使用连接管理器部署远程访问客户端的详细信息,请参见本书中的“使用连接管理器部署远程访问客户端”。

部署拨号和 VPN 远程访问服务器的概述

为支持远程访问公司网络的用户,您可以部署拨号网络、VPN 或者同时部署这两种网络。用户可通过拨号网络直接拨号进入公司网络中的远程访问服务器。通过部署虚拟专用网络,连接到 Internet 上的远程用户可通过 VPN 连接建立与公司网络中 VPN 服务器的连接。

在确定企业最好使用哪种解决方案时,请考虑每种解决方案的相对成本效率以及它们能在多大程度上满足企业对安全性和可用性方面的要求。

Intranet 的网络基础结构是远程访问服务器设计的重要组成部分。如果设计不当,远程访问客户端就无法获取 IP 地址和解析 Intranet 名称,并且无法在远程访问客户端和 Intranet 资源之间传送数据包。

您可以使用本章中介绍的方法从头开始设计和部署远程访问解决方案,也可以重新检查和改进已有的基础结构。如果企业已经建立了拨号或 VPN 基础结构,则确定是否应该由于以下原因而替换已有的组件:

  • 组件提前报废或发生故障。
  • 现有基础结构的可伸缩性限制。
  • 整个企业的安全要求提高了。

本章中的部署步骤基于以下假定:

  • 企业已经部署了 Active Directory
  • 您已经建立了公钥基础结构。
  • 您已经部署了 IAS 服务器。

部署拨号和 VPN 远程访问服务器的过程

要部署拨号或 VPN 远程访问服务器,您需要根据安全性、可伸缩性和预算要求确定哪种解决方案最适合您的网络环境。图 6.1 显示部署远程访问解决方案的过程。

rksvpn01

图 6.1   部署拨号和 VPN 远程访问服务器的过程

选择拨号网络或虚拟专用网络

在 部署了基于 Windows .NET Server 2003 系列的安全网络体系结构后,下一步是确定是否使用拨号网络、VPN 解决方案或这两者的组合来提供对远程客户端的网络访问。每一种方法都有各自的优缺点,您必须根据企业的需要权衡其利弊。拨号网络解决方案通过线路交换连接 提供安全的数据通路。移动用户可以通过直接拨号连接方便地访问公司的网络。而 VPN 解决方案则部署在 Internet 上。为降低 Internet 的公用性质,VPN 使用包括加密隧道和身份验证在内的多种安全技术。为确保获得 VPN 部署的最高安全级别,请使用第 2 层隧道协议和 Internet 协议安全性 (L2TP/IPSec)。

可以使用 Internet 验证服务 (IAS) 集中管理 VPN 或拨号网络身份验证和帐户,以便提高远程访问服务器解决方案的安全性和易管理性。在 Windows 2000 Server 系列中,IAS 是远程身份验证拨号用户服务 (RADIUS) 服务器的实现;在 Windows .NET Server 2003 系列中,它是 RADIUS 服务器和代理的实现。

拨号网络

在拨号网络解决方案中,远程用户拨号进入公司网络上的远程访问服务器。在本质上,拨号线路比使用公用网络(比如 Internet)的解决方案具有更强的保密性。然而,在部署拨号网络过程中,企业不仅要在初期投入大量的资金,而且还要在解决方案生命周期内继续支付费用。这些支出包括:

  • 硬件采购和安装。 拨号网络要求在初期对调制解调器或其他通信硬件、服务器硬件和电话线安装进行投资。
  • 每月电话费用。 远程访问所使用的每条电话线都会增加拨号网络的成本。如果您使用免费电话号码或回叫功能来承担用户的长途通话费,则这些费用是非常高的。大多数公司可以使用大宗长途通话费率,这比按较昂贵的家用电话费率分别支付用户的费用要便宜得多。
  • 持续支持。 远程访问用户的数量和远程访问设计的复杂程度可以大大影响拨号网络的持续支持成本。支持成本包括为支持和管理部署而设置的网络支持工程师、测试设备、培训和帮助服务台人员。这些成本是公司的最大一部分投资。

图 6.1 显示一个简单拨号网络设计的示例。


如果您的浏览器不支持嵌入式框架,请单击此处在单独的页中查看。

图 6.1   拨号远程访问设计示例

虚拟专用网络 (VPN)

在虚拟专用网络解决方案中,用户通过 Internet 连接到公司网络上。VPN 结合使用隧道、身份验证和加密技术来建立安全的连接。

许多具有多种远程访问要求的企业都在实施虚拟专用网络解决方案。虚拟专用网络通过使用现有的 Internet 基础结构来降低远程访问费用。可以使用 VPN 部分或全部代替集中式的内部拨号远程访问基础结构和原有服务。

VPN 具有两个主要优点:

  • 降低成本。 使用 Internet 作为连接方法不仅可以节省长途电话费用,而且需要的硬件也比拨号网络解决方案少。
  • 足够的安全性。 身份验证可防止未经授权的用户连接到网络上。通过使用强大的加密方法,使黑客难以破解通过 VPN 连接发送的数据。

图 6.2 显示一个简单 VPN 设计的示例。


如果您的浏览器不支持嵌入式框架,请单击此处在单独的页中查看。

图 6.2   VPN 远程访问设计示例

设计远程访问服务器解决方案

在选择要部署的远程访问方法(拨号网络、VPN 或者这两者的组合)后,开始进入设计过程。图 6.4 显示设计远程访问服务器解决方案的过程。

rksvpn04

图 6.4   设计远程访问服务器解决方案的过程

确定硬件要求

为获得最佳性能,请对生产环境中使用的每个设备型号进行实验室测试。确定拨号服务器或 VPN 服务器所需的容量以及所需要的其他硬件(比如拨号网络解决方案的调制解调器组等)。在选择服务器硬件时,请考虑 CPU、RAM 和网络硬件要求。

  • 确定拨号网络的硬件要求
  • 确定 VPN 解决方案的硬件要求

确定拨号网络的硬件要求

在确定拨号网络设计的硬件要求时,请遵循以下准则:

  • 除服务器外,还要考虑其他硬件要求(比如调制解调器组和电话线)。根据同时拨入的拨号远程访问客户端的最大数量,安装满足企业需求的调制解调器组和电话线。
  • 每个服务器端的调制解调器要求在远程服务器上设置一个串行端口。如果有多个端口,调制解调器(调制解调器组)使用多端口串行适配器或高密度组合卡。多端口串行适配器可以将多个模拟调制解调器或 ISDN 调制解调器连接到一个远程访问服务器上。高密度组合卡将多个调制解调器和串行适配器集中在一个设备上。
  • 为获得最佳性能,请考虑使用智能通信适配器(多端口串行板)来承担远程访问服务器的处理负载。

确定 VPN 的硬件要求

在确定 VPN 设计的网络硬件要求时,请遵循以下准则:

  • 对于公用网络上的接口,请使用具有 IPSec 硬件卸载功能的网络适配器。
  • 在采用 10/100 以太网基础结构时,请将所有设备设置为 100 Mbps 全双工。
  • 将专用网络上的接口直接连接到高容量的服务器交换机上,该交换机还连接远程访问客户端经常访问的数据服务器和网关。

CPU 要求

在确定 VPN 设计的 CPU 要求时,请遵循以下准则:

  • 在处理传入和传出数据包时,CPU 周期必须满足一定的要求。通过增加可用的处理能力,您可以提高吞吐量。
  • 将单个处理器的速度提高一倍比将处理器的数量增加一倍更有效。
  • 对于多处理器平台,将一个 CPU 与每个网络适配器绑定在一起可以提高中断处理的效率,它可释放 CPU 周期,并缩小使用大量功能不太强的 CPU 和使用少量速度更快但价格更昂贵的 CPU 之间的性能差距。

RAM 要求

在确定 VPN 服务器所需的 RAM 时,请遵循以下准则:

  • 每个活动连接占用很小一部分不可分页的内存(大约 40 KB)。如果您不需要处理来自远程访问用户的 1,000 个以上的并发呼叫,则 512 MB 的 RAM 就足够了。如果您需要具有处理 1,000 个以上并发呼叫的能力,则使用 1 GB 的 RAM。
  • 对于每 1,000 个并发呼叫,在建议使用的服务器 RAM 容量基础上增加 128 MB 的 RAM,再增加 128 MB 基础容量用于远程访问和有关服务。例如,对于支持多达 1,000 个并发 VPN 呼叫的专用远程访问服务器,如果 Windows .NET Server 2003 系列建议使用的内存为 256 MB,则使用 512 MB 的 RAM(256 MB + 128 MB + 128 MB)。

容量规划

两个最有可能出现的性能瓶颈是同时连接的数量和全部数据吞吐量。VPN 服务器支持的同时连接的数量是由可用的未分页池内存的数量决定的。可以建立的同时连接的数量也是由所使用的选项决定的。例如,压缩导致每个连接使用数量更大的未分页池内存。关闭压缩可以提高性能。

VPN 服务器的处理能力级别决定了该服务器的数据吞吐容量。隧道协议也会影响数据吞吐量。PPTP 连接需要的处理能力级别比 L2TP/IPSec 连接低;但 L2TP/IPSec 连接是最安全的。可以使用 IPSec 硬件卸载功能来降低 L2TP/IPSec 对处理能力级别的影响。

考虑外包方案

通过签署批发合同将部分或全部远程访问解决方案外包给 Internet 服务提供商 (ISP),可以给一些企业节省一大笔费用,这可以最大限度地减少安装和运行的成本。可以签署批发合同向提供保证服务级别的 ISP 外购全部或部分远程访问解决方案。ISP 可以以固定成本向广大地区提供大量的网络连接访问服务。许多 ISP 提供的保证服务级别可与拨号广域网 (WAN) 连接相媲美。

如果您正在部署拨号网络解决方案,请考虑外包您的部署工作,以避免支付可能会持续增长的长途费用。

如果您正在部署 VPN 解决方案,请注意外包具有一个很大的优点,即 ISP 可以提供支持 VPN 访问所需的许多组件,这包括:

  • 给不同地理位置的访问点提供访问的网络访问服务器 (NAS)。
  • 将访问请求安全地传送到企业的 RADIUS 代理服务器。
  • 向企业或直接向客户提供最新访问号码的电话簿支持。

外包 NAS

VPN 用户首先拨号进入 NAS。除非外包协议规定了 Internet 服务提供商 NAS 所需的支持(包括连接速度、设备支持和服务级别),否则 NAS 可能是您的 VPN 解决方案的薄弱环节。如果您将支持服务外包,则确保 ISP 提供的 NAS 满足您的访问要求。

外包身份验证

如果您将 VPN 解决方案外包,则可以与 ISP 签署提供身份验证服务的合同,也可以要求 ISP 使用 RADIUS 代理并将身份验证请求发送到您管理的 RADIUS 服务器。

部署远程访问服务器

在决定在网络的什么位置部署远程访问服务器时,请考虑防火墙和其他网络资源的部署位置。请将远程访问服务器部署到远程访问客户端需要的网络资源附近。这些资源可能包括证书颁发机构 (CA)、RADIUS 服务器、域控制器 (DC) 或文件和应用程序服务器。

在拨号远程访问设计中,服务器通常位于防火墙的后面。因为 VPN 设计包含 Internet 连接,所以服务器与防火墙的相对位置是一个非常重要的问题。

如果您正在设计 VPN 远程访问解决方案,请选择以下任一服务器部署位置选项:

  • VPN 服务器在防火墙后面。 防火墙连接到 Internet 上,VPN 服务器位于防火墙和 Intranet 之间。
  • VPN 服务器在防火墙前面。 VPN 服务器连接到 Internet 上,防火墙位于 VPN 服务器和 Intranet 之间。
  • VPN 服务器在两道防火墙之间。 一道防火墙位于 VPN 服务器和 Intranet 之间,另一道则位于 VPN 服务器和 Internet 之间。这是一个周边网络配置。

每个部署方案都提供不同的设计选项。

VPN 服务器在防火墙后面

VPN 远程访问设计最常见的配置是将 VPN 服务器放在防火墙后面。在这种配置中,防火墙连接到 Internet 上,而 VPN 服务器是连接到周边网络的 Intranet 资源。VPN 服务器在周边网络和 Intranet 上都有一个接口。Internet 防火墙(Internet 和 VPN 服务器之间的防火墙)过滤来自 Internet 客户端的所有通信。Intranet 防火墙(VPN 服务器和 Intranet 之间的防火墙)过滤来自 VPN 客户端的所有 Intranet 通信。

这种部署方案需要使用以下配置:

  • 如果 VPN 服务器位于 Internet 防火墙后面,则给 Internet 防火墙和 VPN 服务器配置相同的数据包过滤器。
  • 在 Intranet 防火墙上,根据网络安全策略配置与 VPN 客户端之间的 Intranet 通信的规则。

要使用这种方法,必须给防火墙上的 Internet 接口配置允许与 VPN 服务器进行通信的输入和输出过滤器。可以指定其他的过滤器以便与周边网络中的 Web 服务器、文件传输协议 (FTP) 服务器和其他类型的服务器进行通信。

为了增加一道安全层,还可以给 VPN 服务器上的周边网络接口配置 PPTP 或 L2TP/IPSec 数据包过滤器。

VPN 服务器在防火墙前面

另一个方案是将 VPN 服务器放在防火墙前面并与 Internet 直接相连。如果您实施这一设计,则必须给 Internet 接口添加数据包过滤器,以便只接收来自 VPN 服务器 Internet 接口 IP 地址的 VPN 通信或者只向该地址发送 VPN 通信。

对于传入通信,VPN 服务器对隧道数据进行解密,然后将其发送到防火墙。防火墙用作 Intranet 通信的过滤器,并且可以禁止访问特定的资源,扫描数据是否有病毒以及执行入侵检测和其他功能。

确定远程访问客户端的路由

因为远程访问客户端一般不支持路由协议(比如 RIP 或 OSPF),所以客户端通常使用一个非常简单的路由表。例如,小型局域网 (LAN) 中的计算机具有一个到其子网的路由,并且可能还有一个到该局域网上网关路由器的默认路由(用于所有其他通信)。如果没有路由协议支持,远程访问客户端就无法确定到达目标的最佳路由。

VPN 远程访问客户端的路由

将 数据包发送到远程网络的首选方法是:在远程访问客户端上创建一个默认路由,然后该客户端将数据包发送到远程网络。在设置此配置后,将任何目标不是中间本地 LAN 网段的数据包发送到远程网络。在连接过程中,所有远程访问客户端在默认情况下将默认路由添加到它们的路由表中,并增加已有默认路由的跃点数,以确保仅使用 最新的默认路由。最新的默认路由指向新的连接,这可确保将任何目标不是 LAN 网段的数据包发送到远程网络。当 VPN 客户端连接并创建新的默认路由时,则无法再访问以前可以访问的 Internet 站点了。对于只需要访问公司网络的 VPN 客户端来说,这是非常正确的行为。但是,对于在连接公司网络的同时必须保持访问 Internet 的客户端来说,并不需要创建新的默认路由,而是必须把特定路由(通过 VPN 连接将数据包发送到公司网络)添加到 VPN 客户端的路由表中。与此同时,通过使用 ISP 连接的已有默认路由来获得 Internet 访问。这种配置称为“拆分隧道”。

配置拆分隧道

VPN 客户端可通过拆分隧道访问远程网络上的位置,同时保持对 Internet 的访问。可以使用几种方法来配置拆分隧道所需的路由:

  • 如 果 VPN 客户端具有配置的连接而没有默认路由,则 VPN 客户端添加从 IP 地址(已将该地址分配给此连接的 VPN 客户端)推导出来的路由。对于简单的目标网络(比如小型办公室网络),要将数据包发送到目标网络,使用这一个路由就足够了。但是,对于复杂网络,需要使用 多个路由才能将数据包成功地发送到远程网络。
  • Windows XP 客户端在建立连接后将使用 DHCPINFORM 消息来获得有关该连接的额外信息,特别是目标网络的一组路由。(仅当将 DHCP 服务器设置为提供该额外信息,并且将网络访问服务器 (NAS) 配置为将 DHCPINFORM 消息传送给 DHCP 服务器后,才会提供此信息。)
  • 如果使用连接管理器来管理远程访问客户端,则网络管理员可以给这些远程访问客户端准备路由表。可以将连接后的自定义操作与每次连接时更新客户端路由表的管理连接关联起来。
  • 除非万不得已(不包括上述情况),最终用户或网络管理员可以编写更新客户端路由表的程序或批处理文件,以便给远程网络添加必要的路由。

拆分隧道安全性注意事项

有些网络管理员认为拆分隧道存在不必要的安全风险。如果攻击者能够利用远程访问客户端在 Internet 和公司网络之间传送通信来破坏公司网络,那么就存在安全隐患。为防止发生这种情况,可以在 VPN 连接的远程访问策略配置文件设置中添加数据包过滤器,以便只允许来自远程访问客户端的传入通信通过。

获得远程访问客户端的 IP 地址

可以使用以下方法来获得给远程访问客户端分配的 IP 地址:

动态主机配置协议 (DHCP)

路由和远程访问服务给远程访问客户端分配 IP 地址。路由和远程访问服务可以从 DHCP 服务器获得 IP 地址。

IP 地址的静态池

可以配置给远程访问客户端分配的 IP 地址的静态池。可以为静态池指定打开子网或关闭子网的 IP 地址范围。

保护虚拟专用网络的安全

VPN 的安全性建立在所使用的隧道、身份验证和加密协议的基础上。为获得最高级别的安全保护,请使用基于 L2TP/IPSec 的远程访问 VPN。如果您决定使用基于 PPTP 的 VPN 解决方案来降低成本和提高易管理性和互操作性,则将 Microsoft 质询握手身份验证协议版本 2 (MS-CHAP v2) 用作身份验证协议。

本节介绍:

  • 选择 VPN 协议
  • 选择身份验证协议
  • 选择加密级别
  • 使用证书基础结构

选择 VPN 协议

在 VPN 设计中,应确定哪一个 VPN 协议最符合您的要求。Windows .NET Server 2003 系列支持两种 VPN 协议:PPTP 和 L2TP/IPSec。

点对点隧道协议 (PPTP)

PPTP 使用点对点协议 (PPP) 用户身份验证和 Microsoft 点对点加密 (MPPE) 来封装和加密 IP 通信。在与 MS-CHAP v2 一起使用以提供基于密码的身份验证和强密码时,PPTP 是一项安全的 VPN 技术。可通过使用智能卡或用户证书、可扩展身份验证协议-传输级别安全性 (EAP-TLS) 以及 PPTP 来实施 PKI。

PPTP 获得了广泛支持并且非常易于部署,可以在大多数的网络地址转换器 (NAT) 上使用它。

使用 NAT

NAT 转换在专用网络和 Internet 之间传送的数据包的 IP 地址和 TCP/UDP 端口号。专用网络上的 NAT 可以向该网络上的其他计算机提供 IP 地址配置信息。NAT 可以用作简化的 DHCP 服务器以分配 IP 地址、子网掩码、默认网关以及 DNS 服务器的 IP 地址。NAT 可以作为专用网络上计算机的 DNS 服务器。当 NAT 收到来自专用网络上计算机的名称解析请求时,它将该请求传送给基于 Internet 的指定 DNS 服务器,并将响应返回到专用网络上发出请求的计算机。

提供 NAT 编辑器

要支持网络地址转换设备 (NAT) 后面的 VPN 客户端,NAT 必须包含一个可以转换 PPTP 通信的 NAT 编辑器。

NAT 编辑器是必不可少的,因为 PPTP 隧道数据使用通用路由封装 (GRE) 报头,而不是使用 TCP 或用户数据协议 (UDP) 报头。NAT 编辑器使用 GRE 报头内的“呼叫 ID”字段来标识 PPTP 数据流,并转换在专用网络和 Internet 之间传送的 PPTP 数据包的 IP 地址和呼叫 ID。路由和远程访问服务的 NAT 路由协议组件包含用于 PPTP 通信的 NAT 编辑器。

IPSec 上的第 2 层隧道协议 (L2TP/IPSec)

最安全的组合 L2TP/IPSec 利用 PPP 用户身份验证和 IPSec 加密来封装和加密 IP 通信。除基于 PPP 的用户身份验证外,该组合使用基于证书的计算机身份验证来创建 IPSec 安全关联。L2TP/IPSec 为每个数据包提供数据完整性、数据来源身份验证、数据保密性和重做保护。

Microsoft Windows .NET Server 2003 系列以及 Microsoft Windows 2000 和 Windows XP 操作系统都提供对 L2TP/IPSec 的支持。要在 Microsoft Windows 98、Windows Me 或 Windows NT Workstation 4.0 版操作系统上使用 L2TP/IPSec,请下载并安装 Microsoft L2TP/IPSec VPN Client (Mls2tp.exe)。有关 Mls2tp.exe 的详细信息,请参见位于以下网址的 Web 资源页中的 Microsoft L2TP/IPSec VPN Client 链接:http://www.microsoft.com/windows/reskits/webresources/default.asp。

支持 IPSec NAT 遍历 (NAT-T)

IPSec NAT 遍历 (NAT-T) 允许 IPSec 客户端和服务器在 NAT 后面工作。要使用 NAT-T,远程访问 VPN 客户端和远程访问服务器都必须支持 IPSec NAT-T。

IPSec NAT-T 提供 IPSec 数据包的 UDP 封装,以便通过 NAT 传送 Internet 密钥交换 (IKE) 和封装安全性负载 (ESP) 保护的通信。IKE 自动检测 NAT 是否存在,并使用用户数据报协议-封装安全性负载 (UDP-ESP) 封装,以便通过该 NAT 传送 ESP 保护的 IPSec 通信。

Windows .NET Server 2003 系列支持 IPSec NAT-T。

表 6.1 总结了使用 PPTP 和 L2TP 协议的有关优点和限制。

表 6.1   PPTP 和 L2TP 协议的有关优点和限制

因素 PPTP 优点和限制 L2TP 优点和限制 客户端操作系统 在运行以下操作系统的客户端上支持 PPTP:Microsoft Windows XP、Windows .NET Server 2003、Windows NT Workstation 4.0 版、Windows Me 和 Windows 98。 •   在运行 Windows XP 或 Windows .NET Server 2003 操作系统的计算机上内在支持 L2TP。

•   安装 Mls2tp.exe 后,在运行 Windows 98、Windows Me 或 Windows NT Workstation 4.0 的计算机上也支持 L2TP。

证书 PPTP 不需要使用证书基础结构来颁发计算机证书。 要向 VPN 服务器和所有 VPN 客户端颁发计算机证书,L2TP/IPSec 需要使用证书基础结构或预共享的密钥 (PSK)。 安全性 PPTP 提供数据保密性(如果没有加密密钥,就无法破译捕获的数据包)。PPTP 不提供数据完整性(表明数据在传输过程中未被修改)或数据身份验证(表明数据是由授权用户发送的)。 L2TP/IPSec 提供数据保密性、数据完整性、数据身份验证和重做保护。 性能 VPN 服务器支持的 PPTP 连接数量多于 L2TP 连接。 IPSec 加密对处理器消耗很大。VPN 服务器支持的 L2TP 连接数量少于 PPTP 连接。可通过增加 CPU 或使用硬件加密卸载 NIC 来提高连接的数量。 NAT 如果 NAT 包含 PPTP 编辑器,则基于 PPTP 的 VPN 客户端可以位于 NAT 后面。请参见本节后面的“NAT 设计注意事项”。

基于 PPTP 的 VPN 客户端可以位于 NAT 后面。请参见本节后面的“NAT 设计注意事项”。

除非 L2TP/IPSec 客户端或服务器都支持 IPSec NAT-T,否则它们不能位于 NAT 后面。

有关部署证书服务以支持 L2TP/IPSec 的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“部署公钥基础结构”。

选择身份验证协议

为了对创建 PPP 连接的用户进行身份验证,Windows .NET Server 2003 提供多种 PPP 身份验证协议,其中包括:

  • 密码身份验证协议 (PAP)
  • 质询握手身份验证协议 (CHAP)
  • Microsoft 质询握手身份验证协议 (MS-CHAP)
  • MS-CHAP v2 (MS-CHAP v2)
  • 可扩展身份验证协议-消息摘要 5 (EAP-MD5)
  • 可扩展身份验证协议-传输级别协议 (EAP-TLS)

PPTP 连接需要使用 MS-CHAP、MS-CHAP v2 或 EAP-TLS。只有这三个身份验证协议提供在 VPN 客户端和 VPN 服务器上生成相同加密密钥的机制。MPPE 使用加密密钥对通过 VPN 连接发送的所有 PPTP 数据进行加密。MS-CHAP 和 MS-CHAP v2 是基于密码的身份验证协议。

在没有用户证书或智能卡的情况下,请使用 MS CHAP v2,这种身份验证协议比提供相互身份验证的 MS CHAP 更强。如果使用相互身份验证,则 VPN 服务器验证 VPN 客户端的身份,VPN 客户端反过来又验证 VPN 服务器的身份。

注意   如果您必须使用基于密码的身份验证协议,则在您的网络上实施强密码。强密码使用长字符(8 个字符以上),并且包含大小写字母、数字和标点符号的随机组合。例如,“f3L*q02~>xR3w#4o”就是一个强密码。在使用 Active Directory 目录服务创建的域中,请使用组策略来实施强用户密码。

EAP-TLS 需要与证书基础结构以及用户证书或智能卡一起使用。通过使用 EAP-TLS,VPN 客户端发送其用户证书以进行身份验证,VPN 服务器的身份验证服务器发送计算机证书以进行身份验证。这是最可靠的身份验证方法,因为它不依赖于密码。有关 EAP-TLS 身份验证的详细信息,请参见本书中的“连接远程站点”。

只要 IAS 服务器的计算机存储中的证书包含服务器身份验证证书目的(也称为“增强密钥使用”(EKU)),您就可以使用第三方证书颁发机构 (CA)。一个 EKU 是使用对象标识符 (OID) 来标识的。服务器身份验证的 OID 是 1.3.6.1.5.5.7.3.1。另外,证书的加密服务提供程序必须支持 SChannel。如果加密服务提供程序不支持 SChannel,则 IAS 服务器无法使用证书,并且不能从远程访问策略配置文件属性“身份验证”选项卡上的“智能卡或其他证书 EAP”类型属性中选择它。另外,在运行 Windows .NET Server 2003 的远程访问客户端上安装的用户证书必须包含 CA 证书目的(OID 为“1.3.6.1.5.5.7.3.2”)。该证书在“主题备用名称”属性中必须包含 IAS 服务器计算机帐户的完全限定域名称 (FQDN)。

对于 L2TP/IPSec 连接,您可以使用任何身份验证协议,因为在 VPN 客户端和 VPN 服务器建立安全的通信信道后才进行身份验证。这称为“IPSec 安全关联”(SA)。强烈建议您使用 MS-CHAP v2 或 EAP-TLS 来提供更安全的用户身份验证。

在选择 VPN 连接的身份验证协议时,请考虑以下因素:

  • 如果您使用智能卡或颁发用户证书的证书基础结构,则对 PPTP 和 L2TP 连接使用 EAP-TLS 身份验证协议。仅运行 Windows 2000、Windows XP 或 Windows .NET Server 2003 的 VPN 客户端支持 EAP-TLS。
  • 如果您必须使用基于密码的身份验证协议,则使用 MS-CHAP v2 并使用组策略实施强密码。运行 Windows XP、Windows .NET Server 2003、Windows 2000、Windows NT 4.0(包含 Service Pack 4 和更高版本)、Windows Me 或 Windows 98 的计算机支持 MS-CHAP v2。

    Windows .NET IAS 可以代表任何配置为 RADIUS 客户端的访问服务器来执行身份验证。在允许拨号、VPN、无线和交换机用户访问网络之前,可以使用其中的一个协议对他们进行身份验证。

在部署 IAS 之前,确定您要使用哪种身份验证协议来验证远程访问客户端。请使用网络访问服务器和客户端支持的最安全的协议。如果您需要很高的安全级别,则可以将 IAS 配置为只接受少数几个非常安全的身份验证协议。另外,如果企业需要具有更大的灵活性,则将 IAS 配置为接受安全性差一些的身份验证协议。有关设计和部署 IAS 的详细信息,请参见本书中的“部署 IAS”。

在 IAS 服务器访问 Active Directory 域以验证用户凭据和用户访问帐户属性之前,必须在这些域中注册 IAS 服务器。

选择加密级别

在虚拟专用网络上,您可以对 VPN 连接两个端点之间的数据进行加密以保护这些数据。在通过公用网络发送保密数据时,始终对 VPN 连接进行数据加密,因为公用网络始终存在数据被侦听的风险。对于 VPN 连接,Windows .NET Server 2003 使用包含 PPTP 的 MPPE 和包含 L2TP 的 IPSec 加密。

注意   非加密的 PPTP 连接(以纯文本形式发送 PPP 负载)和不基于 IPSec 的非加密 L2TP 连接(以纯文本形式发送 PPP 帧)是不安全的,并且建议不要用于通过 Internet 的 VPN 连接。

为确保成功地进行加密和解密,发送方和接收方必须使用相同的加密密钥。加密密钥的长度是一个很重要的安全参数,特别是在公用网络上。请使用最大的密钥长度以确保获得最高级别的安全性。

链路加密

链路加密只对 VPN 客户端和 VPN 服务器之间链路上的数据进行加密。对于 PPTP 连接,必须将 MPPE 与 MS-CHAP 或 EAP-TLS 身份验证一起使用。对于 IPSec 连接上的 L2TP,IPSec 对 VPN 客户端和 VPN 服务器之间的链路进行加密。在 VPN 客户端和 VPN 服务器之间进行数据加密时,您无需对拨号客户端及其 ISP 之间通信链路上的数据进行加密。例如,移动用户可以使用拨号网络连接拨入到本地 ISP。在建立 Internet 连接后,用户建立到企业 VPN 服务器的 VPN 连接。因为 VPN 连接已经加密,所以不需要加密用户和 ISP 之间的拨号网络连接。

端对端加密

端对端加密对源主机和目标主机之间的数据进行加密。在建立 VPN 连接后,可以使用 IPSec 来提供端对端加密。

仅当使用 MS-CHAP v2 或 EAP-TLS 身份验证协议时,才能提供 PPTP 连接的数据加密。L2TP 连接的数据加密依赖于 IPSec,它不需要使用任何特定的身份验证协议。IPSec 实施加密功能;如果服务器拒绝数据加密,就会断开连接。

对于支持 PPTP 或 L2TP 连接的每个远程访问策略,请确定支持的加密级别:

  • 无加密。允许连接不使用数据加密。
  • 基本。允许连接使用 IPSec 56 位数据加密标准 (DES) 或 MPPE 40 位数据加密。
  • 强。允许连接使用 IPSec 56 位 DES 或 MPPE 56 位数据加密。
  • 最强。允许连接使用 IPSec 三重 DES (3DES) 或 MPPE 128 位加密。

表 6.2 说明哪种身份验证方法支持特定的加密要求。

表 6.2   加密支持

要求 身份验证协议 加密实施情况 没有数据加密的保护密码 CHAP、MS-CHAP v1、MS-CHAP v2 可选加密(即使没有加密也进行连接) 使用 MPPE 数据加密的保护密码 MS-CHAP v1、MS-CHAP v2 要求加密(如果服务器拒绝则断开连接) 没有数据加密的智能卡 EAP-TLS 可选加密(即使没有加密也进行连接) 具有数据加密的智能卡 EAP-TLS 要求加密(如果服务器拒绝则断开连接)

使用证书基础结构

远程访问设计是否需要证书基础结构取决于为远程客户端部署的身份验证方法。如果您使用 EAP-TLS 身份验证以及智能卡或用户证书,则需要使用证书基础结构。基于 L2TP 的 VPN 连接需要比基于 PPTP 的 VPN 连接多使用一个证书。对于基于 PPTP 的 VPN 连接,如果使用 EAP-TLS 身份验证以及智能卡或用户证书,则需要使用证书基础结构。基于密码的身份验证协议(比如 MS-CHAP v2)不需要在身份验证中使用证书,因此不需要使用证书基础结构。

如果您需要在基于 PPTP 的 VPN 连接中使用证书基础结构,则必须在 VPN 服务器的身份验证服务器上安装计算机证书,并且在给 VPN 客户端用户分配的每个智能卡上安装证书,或者在每个 VPN 客户端上安装用户证书。

基于 L2TP 的 VPN 连接需要使用证书基础结构,因为需要使用证书来协商身份验证。在使用 EAP-TLS 以及智能卡或用户证书对用户进行身份验证时,也需要使用证书基础结构。

对于基于 L2TP 的 VPN 连接,必须在所有的 VPN 客户端和 VPN 服务器上安装计算机证书。

有关设计和部署 IAS 的详细信息,请参见本书中的“部署 IAS”。有关设计和部署 PKI 的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“设计公钥基础结构”。

优化远程访问服务器设计

除了升级服务器硬件来提高性能外,还可以考虑在远程访问设计中增添以下要素来提高可用性、安全性和性能:

  • 冗余服务器,用于提高可用性
  • 网络负载平衡,用于提高可用性和性能
  • 帐户锁定,用于提高安全性

使用冗余服务器来提高可用性

包含冗余服务器的远程访问解决方案可以为远程访问客户端提供更高的可用性。如果服务质量下降不是一个重要问题,则可以将主要的远程访问服务器作为彼此之间的备份。如果不能接受服务质量下降,则使用以下方法获得冗余功能:通过额外增加服务器来提供故障保护。

如果一个或多个用户组要求使用高优先级的访问,则考虑给这些用户组配备单独的远程访问服务器。

使用网络负载平衡来提高性能

可通过使用 Windows .NET Server 2003 系列提供的网络负载平衡功能来提高 VPN 服务器的性能和可用性。网络负载平衡将来自远程访问 VPN 客户端的通信分配到多个 VPN 服务器上。在 VPN 服务器出现故障时,网络负载平衡还会提供即时的故障转移。

注意   如果 VPN 服务器出现故障,则该服务器处理的客户端会话也会出现故障。此时,就会提示客户端重新登录,并且由其余的一个主机来处理其新会话。

要为 VPN 客户端提供负载平衡,请在配置所有主机时使用默认的端口规则(如下所示):

  • 将端口范围设置为 0 到 65535(默认值)。默认范围涵盖所有端口,即使您要涵盖的端口数量发生变化,端口规则仍然有效。
  • 接受默认的过滤模式、负载权重/同等负载分配和关系设置。

有关在 VPN 方案中使用网络负载平衡的详细信息,请参见该工具包的“规划服务器部署”中的“部署网络负载平衡”。

使用帐户锁定来提高安全性

要防止对远程服务器帐户进行字典攻击,您可以使用远程访问帐户锁定。在确定是否使用该方法时,请注意,如果启用帐户锁定,则恶意用户可能会故意对某个用户帐户进行多次身份验证以迫使该帐户锁定,从而禁止授权用户进行登录。

注意   远程访问帐户锁定是在 Windows .NET Server 2003 注册表中配置的。远程访问帐户锁定与域或本地用户帐户的帐户锁定策略无关。

要启用帐户锁定,请在验证远程访问请求的服务器的 Windows .NET Server 2003 注册表中修改以下注册表项:

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/RemoteAccess/Parameters/AccountLockout

将上述注册表项的 MaxDenials 值设置为 1 或更大值。MaxDenials 是在帐户被锁定前失败操作的最大次数。默认情况下,将 MaxDenials 设置为 0,即禁用帐户锁定。

要修改在重置失败操作计数器前的时间数量,请将上述注册表项的 ResetTime (mins) 值设置为所需的分钟数。默认情况下,将 ResetTime (mins) 设置为 0xb40 或 2,880 分钟(48 小时)。

如果将远程访问服务器配置为进行 Windows 身份验证,请修改该服务器上的注册表。如果将远程访问服务器配置为进行 RADIUS 身份验证并且使用的是 IAS,则修改 IAS 服务器上的注册表。

在自动重置失败操作计数器之前,要手动重置已锁定的用户帐户,请删除上述注册表项。

重要信息   如果错误地修改了注册表设置,引起的系统问题可能要求重新安装操作系统。在修改注册表之前,请将其备份。确保您熟悉在出现问题时还原注册表的步骤。有关详细信息,请参见 Windows .NET Server 2003 帮助和支持中心中的“还原系统状态数据”。

如果企业使用智能卡,则由智能卡制造商来控制对无效个人识别码 (PIN) 的帐户锁定。对于因 PIN 无效而导致的帐户锁定,可能需要更换智能卡以从中恢复。

有关远程访问帐户锁定的详细信息,请参见 Microsoft Windows .NET Server 2003 资源工具包的“联网指南”中的“远程访问服务器”。

测试远程访问服务器设计

当您完成远程访问服务器解决方案的设计时,请对该设计进行测试。设计测试包括测试单个 VPN 客户端对 VPN 服务器的访问,以及对整个外部连接设计进行综合测试。如果您要集成多个远程访问解决方案,则在单独测试后再进行总体测试。

由于连接到 Internet 上可能会产生安全隐患,因此,确保在测试期间将网络周边与 Intranet 隔离。除非您确信已经解决了所有安全问题,否则不要将网络周边与 Intranet 集成起来。

确保测试 ISP 基础结构,包括 RADIUS 代理(如果有)以及有代表性的访问点抽样。

测试不仅对任何外部连接解决方案的安全性至关重要,而且对确保连接达到预期效果也很重要。在测试之前,请模拟内部和外部连接以防止网络的任何部分被侵入和破坏。

测试远程访问服务器设计的工具

可以使用以下工具来测试远程访问服务器设计:

  • TCP/IP 故障排除工具,包括 Netsh、Ping、Pathping、Route 和 Tracert。
  • 远程访问日志记录。日志包括身份验证和帐户信息。
  • 事件查看器。
  • 网络监视器。
  • 远程访问事件跟踪(通过 Netsh 或注册表启用)。

部署 VPN 远程访问服务器解决方案

在部署远程访问服务器之前,确保已经部署了 Active Directory 和 PKI。还确保部署了 IAS 服务器。

图 6.5 显示部署远程访问服务器解决方案的过程。

rksvpn05

图 6.5   部署 VPN 远程访问服务器解决方案的过程

配置 VPN 远程访问服务器

可以运行“路由和远程访问服务器安装向导”将服务器配置为 VPN 服务器。要启动该向导,请执行以下步骤:

启动“路由和远程访问服务器安装向导”

  1. 在“开始”菜单上,单击“管理服务器”。
  2. 在“管理服务器”窗口中,单击“添加或删除角色”,然后在“配置服务器向导”窗口中单击“下一步”。
  3. 在“服务器角色”窗口中选择“远程访问/VPN 服务器”,然后单击“下一步”。
  4. 在“选择的摘要”窗口中,单击“下一步”以运行“路由和远程访问服务器安装向导”。

在 VPN 服务器上配置 TCP/IP

由于与自动配置 TCP/IP 有关的路由问题,建议不要将 VPN 服务器配置为 DHCP 客户端。而是手动在 VPN 服务器的 Intranet 接口上配置 TCP/IP。

一般情况下,按名称引用 VPN 服务器比按 IP 地址引用更方便,因为人们更容易记住名称。只要能够将名称解析为 Internet IP 地址,就可以使用名称(例如“VPN1.Corporate.Contoso.com”)。在配置 VPN 连接时,请提供可以解析的 VPN 服务器名称(可以使用 DNS 基础结构将这些名称解析为 IP 地址)。

要能够访问 VPN 服务器,必须给 VPN 服务器 Internet 接口分配一个公用 IP 地址(该地址是在 ISP 或 Internet 注册表中分配的)。在某些配置中,VPN 服务器实际上是使用专用 IP 地址配置的,并在 Internet 上发布一个静态 IP 地址。在与 VPN 服务器之间传送数据包时,Internet 和 VPN 服务器之间的 NAT 将发布的 IP 地址转换为专用的 IP 地址。

  • 使用默认网关配置 VPN 服务器的 Internet 接口。不要使用默认网关配置 VPN 服务器的 Intranet 接口。
  • 在 VPN 服务器上,添加汇总 Intranet 上使用的 IP 地址的静态 IP 路由。另外,如果您使用 RIP 或 OSPF 作为动态路由协议,则在 VPN 服务器上配置并启用 RIP 或 OSPF。如果您在 Intranet 路由器相邻的 VPN 服务器上使用的路由协议不是 RIP 或 OSPF(比如内部网关路由协议 (IGRP)),则配置连接到特定子网(为 RIP 或 OSPF 分配 VPN 服务器所在的子网)上的接口,并为 IGRP 配置所有其他接口。
  • 要给 VPN 服务器配置打开子网的地址范围,请将 VPN 服务器配置为通过 DHCP 获得 IP 地址,或者手动配置打开子网的地址池。
注意   要访问在 VPN 服务器上运行的服务,请确保在 Intranet 名称空间中没有注册 VPN 服务器 Internet 接口的 NetBIOS 和 DNS 名称。

配置 Internet 或周边网络接口

使用公用 IP 地址、子网掩码和防火墙(如果 VPN 服务器连接到周边网络上)或 ISP 路由器(如果 VPN 服务器直接连接到 Internet 上)的默认网关配置 TCP/IP 协议。

禁止 VPN 服务器通过 Intranet DNS 服务器动态注册其 Internet 接口的公用 IP 地址

  1. 在“网络连接”文件夹中,查看 Internet 连接的“Internet 协议 (TCP/IP)”组件的属性。
  2. 单击“高级”。在“高级 TCP/IP 设置”对话框中,单击“DNS”选项卡,然后清除“在 DNS 中注册此连接的地址”复选框。

禁止 VPN 服务器通过 Intranet WINS 服务器注册其 Internet 接口的公用 IP 地址

  1. 在“网络连接”文件夹中,查看 Internet 连接的“Internet 协议 (TCP/IP)”组件的属性。
  2. 单击“高级”。在“高级 TCP/IP 设置”对话框中,单击“WINS”选项卡,然后选择“禁用 TCP/IP 上的 NetBIOS”。

配置 Intranet 接口

对于每个 VPN 服务器,请使用 IP 地址、子网掩码、Intranet DNS 服务器和 Intranet WINS 服务器手动配置用于 Intranet 连接的 TCP/IP 协议。要避免默认路由与指向 Internet 的默认路由发生冲突,请不要在 Intranet 连接上配置默认网关。

在 VPN 服务器上配置名称解析

如果您使用域名系统 (DNS) 来解析 Intranet 主机名或使用 Windows Internet 名称服务 (WINS) 来解析 Intranet NetBIOS 名称,则需确保 VPN 服务器配有相应 DNS 和 WINS 服务器的 IP 地址。VPN 服务器是通过 DNS 和 WINS 服务器手动进行配置的。在 PPP 协商过程中,VPN 客户端接收 DNS 和 WINS 服务器的 IP 地址。默认情况下,VPN 客户端继承在 VPN 服务器上配置的 DNS 和 WINS 服务器的 IP 地址。能够发送 DHCPINFORM 消息(Windows 2000、Windows XP、Windows .NET Server 2003)的 VPN 客户端从 DHCP 服务器获得其 DNS 和 WINS 服务器的 IP 地址。

如果使用名称而不是 IP 地址来标识 VPN 服务器,则可以通过给多个 VPN 服务器指定相同的名称来利用 DNS 循环负载平衡。可以在 DNS 中创建多个记录,以便将特定名称解析为不同的 IP 地址。在响应 DNS 名称查询时,如果一个名称与多个 IP 地址匹配,则 DNS 服务器按随机顺序发回所有的 IP 地址。由于大多数 DNS 客户端使用 DNS 查询响应中的第一个 IP 地址,因此这将在 VPN 服务器之间分配 VPN 客户端连接。

给防火墙前面的 VPN 服务器配置数据包过滤器

当 VPN 服务器位于防火墙前面并且连接到 Internet 上,则必须在 VPN 服务器上配置输入和输出数据包过滤器,以便只允许 VPN 通信进出 VPN 服务器 Internet 接口的 IP 地址。

为 PPTP 配置数据包过滤器

配置以下输入过滤器,并且将过滤器操作设置为“丢弃所有不符合下列条件的数据包”:

  • 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 服务器用作路由器到路由器的 VPN 连接中的 VPN 客户端(呼叫路由器)时,才需要使用该过滤器。仅当 VPN 服务器启动 TCP 连接时才接受 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 服务器用作路由器到路由器的 VPN 连接中的 VPN 客户端(呼叫路由器)时,才需要使用该过滤器。仅当 VPN 服务器启动 TCP 连接时才发送 TCP 通信。

为 L2TP/IPSec 配置数据包过滤器

配置以下输入过滤器,并且将过滤器操作设置为“丢弃所有不符合下列条件的数据包”:

  • VPN 服务器 Internet 接口的目标 IP 地址,子网掩码为 255.255.255.255,并且 UDP 目标端口为 500。该过滤器允许发往 VPN 服务器的 Internet 密钥交换 (IKE) 通信通过。
  • VPN 服务器 Internet 接口的目标 IP 地址,子网掩码为 255.255.255.255,并且 UDP 目标端口为 1701。该过滤器允许从 VPN 客户端到 VPN 服务器的 L2TP 通信通过。
  • VPN 服务器 Internet 接口的目标 IP 地址,子网掩码为 255.255.255.255,并且 UDP 目标端口为 4500。该过滤器允许从 VPN 客户端到 VPN 服务器的 NAT-T 通信通过。

配置以下输出过滤器,并且将过滤器操作设置为“丢弃所有不符合下列条件的数据包”:

  • VPN 服务器 Internet 接口的源 IP 地址,子网掩码为 255.255.255.255,并且 UDP 源端口为 500。该过滤器允许来自 VPN 服务器的 IKE 通信通过。
  • VPN 服务器 Internet 接口的源 IP 地址,子网掩码为 255.255.255.255,并且 UDP 源端口为 1701。该过滤器允许从 VPN 服务器到 VPN 客户端的 L2TP 通信通过。
  • VPN 服务器 Internet 接口的源 IP 地址,子网掩码为 255.255.255.255,并且 UDP 源端口为 4500。该过滤器允许 NAT-T 通信通过。
  • VPN 服务器 Internet 接口的源 IP 地址,子网掩码为 255.255.255.255,并且 UDP 源端口为 4500。该过滤器允许从 VPN 服务器到 VPN 客户端的 IPSec NAT-T 通信通过。

给防火墙后面的 VPN 服务器配置数据包过滤器

在这种配置中,防火墙连接到 Internet 上,而 VPN 服务器是连接到周边网络的 Intranet 资源。VPN 服务器在周边网络和 Intranet 上都有一个接口。

在 Intranet 接口上配置 PPTP 过滤器

在防火墙的 Internet 接口上配置以下输入数据包过滤器以允许下列类型的通信通过。

  • VPN 服务器周边网络接口的目标 IP 地址,并且 TCP 目标端口为 1723 (0x6BB)。该过滤器允许从 PPTP 客户端到 PPTP 服务器的 PPTP 隧道维护通信通过。
  • VPN 服务器周边网络接口的目标 IP 地址,并且 IP 协议 ID 为 47 (0x2F)。该过滤器允许从 PPTP 客户端到 PPTP 服务器的 PPTP 隧道数据通过。
  • VPN 服务器周边网络接口的目标 IP 地址,并且 TCP 源端口为 1723 (0x6BB)。仅当将 VPN 服务器用作路由器到路由器的 VPN 连接中的 VPN 客户端(呼叫路由器)时,才需要使用该过滤器。如果允许 TCP 端口 1723 到 VPN 服务器的所有通信通过,在 Internet 上使用该端口的来源可能会对网络发起攻击。

在防火墙的 Internet 接口上配置以下输出过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的源 IP 地址,并且 TCP 源端口为 1723 (0x6BB)。该过滤器允许从 VPN 服务器到 VPN 客户端的 PPTP 隧道维护通信通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 IP 协议 ID 为 47 (0x2F)。该过滤器允许从 VPN 服务器到 VPN 客户端的 PPTP 隧道数据通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 TCP 目标端口为 1723 (0x6BB)。仅当将 VPN 服务器用作路由器到路由器的 VPN 连接中的 VPN 客户端(调用路由器)时,才需要使用该过滤器。如果允许 VPN 服务器到 TCP 端口 1723 的所有通信通过,在 Internet 上使用该端口的来源可能会对网络发起攻击。

在周边网络接口上配置 PPTP 过滤器

在防火墙的周边网络接口上配置以下输入过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的源 IP 地址,并且 TCP 源端口为 1723 (0x6BB)。该过滤器允许从 VPN 服务器到 VPN 客户端的 PPTP 隧道维护通信通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 IP 协议 ID 为 47 (0x2F)。该过滤器允许从 VPN 服务器到 VPN 客户端的 PPTP 隧道数据通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 TCP 目标端口为 1723 (0x6BB)。仅当将 VPN 服务器用作路由器到路由器的 VPN 连接中的 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 连接中的 VPN 客户端(调用路由器)时,才需要使用该过滤器。如果允许 TCP 端口 1723 到 VPN 服务器的所有通信通过,在 Internet 上使用该端口的来源可能会对网络发起攻击。

在 Intranet 接口上配置 L2TP/IPSec 过滤器

在防火墙的 Internet 接口上配置以下输入过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的目标 IP 地址,并且 UDP 目标端口为 500 (0x1F4)。该过滤器允许发往 VPN 服务器的 IKE 通信通过。
  • VPN 服务器周边网络接口的目标 IP 地址,并且 IP 协议 ID 为 50 (0x32)。该过滤器允许发往 VPN 服务器的 IPSec ESP 通信通过。

在防火墙的 Internet 接口上配置以下输出过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的源 IP 地址,并且 UDP 源端口为 500 (0x1F4)。该过滤器允许来自 VPN 服务器的 IKE 通信通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 IP 协议 ID 为 50 (0x32)。该过滤器允许来自 VPN 服务器的 IPSec ESP 通信通过。在 UDP 端口 1701 上,不需要对 L2TP 通信使用过滤器。在防火墙上,将所有 L2TP 通信(包括隧道维护通信和隧道数据)加密为 IPSec ESP 负载。

在周边接口上配置 L2TP/IPSec 过滤器

在防火墙的周边网络接口上配置以下输入数据包过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的源 IP 地址,并且 UDP 源端口为 500 (0x1F4)。该过滤器允许来自 VPN 服务器的 IKE 通信通过。
  • VPN 服务器周边网络接口的源 IP 地址,并且 IP 协议 ID 为 50 (0x32)。该过滤器允许来自 VPN 服务器的 IPSec ESP 通信通过。

在防火墙的周边网络接口上配置以下输出数据包过滤器以允许下列类型的通信通过:

  • VPN 服务器周边网络接口的目标 IP 地址,并且 UDP 目标端口为 500 (0x1F4)。该过滤器允许发往 VPN 服务器的 IKE 通信通过。
  • VPN 服务器周边网络接口的目标 IP 地址,并且 IP 协议 ID 为 50 (0x32)。该过滤器允许发往 VPN 服务器的 IPSec ESP 通信通过。在 UDP 端口 1701 上,不需要对 L2TP 通信使用过滤器。在防火墙上,将所有 L2TP 通信(包括隧道维护通信和隧道数据)加密为 IPSec ESP 负载。

在 VPN 服务器上配置路由

要使 VPN 服务器能够将通信正确地传送到 Intranet 中的各个位置,必须给它配置以下设置之一:

  • 汇总 Intranet 中所有可能 IP 地址的静态路由。

    – 或 –

  • 使 VPN 服务器能够用作动态路由器的路由协议,该协议自动将 Intranet 子网的路由添加到其路由表中。

如果您在任何 VPN 服务器上手动配置 IP 地址池,并且任何地址池是关闭子网池,则 Intranet 路由基础结构必须包含表示关闭子网地址池的路由。要确保这一点,请将表示关闭子网地址池的静态路由添加到 VPN 服务器相邻的路由器中,然后使用 Intranet 的路由协议将关闭子网路由传播到其他路由器。在添加静态路由时,必须将网关或下一个跳跃地址指定为 VPN 服务器的 Intranet 接口。

另外,如果您使用 RIP 或 OSPF,则可以配置任何将关闭子网地址池用作 RIP 或 OSPF 路由器的 VPN 服务器。对于 OSPF,必须将 VPN 服务器配置为自治系统边界路由器 (ASBR)。有关详细信息,请参见 Windows .NET Server 2003 帮助和支持中心中的“OSPF 设计注意事项”。

有关添加静态路由的信息,请参见 Windows .NET Server 2003 帮助和支持中心中的“添加静态路由”。有关将 VPN 服务器配置为 RIP 路由器的信息,请参见 Windows .NET Server 2003 帮助和支持中心中的“为 IP 配置 RIP”。有关将 VPN 服务器配置为 OSPF 路由器的信息,请参见 Windows .NET Server 2003 帮助和支持中心中的“OSPF 设计注意事项”和“配置 OSPF”。

在 VPN 客户端上配置路由

在默认情况下,当基于 Windows 的 VPN 客户端建立 VPN 连接时,它自动为 VPN 连接添加新的默认路由,并为已有的默认路由设置更高的跃点数。由于添加了新的默认路由,因此,在 VPN 连接过程中,只能到达隧道服务器的 IP 地址和基于其他路由的位置,而无法到达所有其他的 Internet 位置。

禁止 VPN 客户端在 VPN 连接过程中创建新的默认路由

  1. 在“网络连接”文件夹中,查看 VPN 连接的“Internet 协议 (TCP/IP)”组件的属性。
  2. 单击“高级”。在“高级 TCP/IP 设置”对话框中,单击“常规”选项卡,然后清除“在远程网络上使用默认网关”复选框。

在清除该设置后,就不会创建默认路由了。但是,将创建一个与分配的 IP 地址的 Internet 地址类别对应的路由。例如,如果在连接过程中分配的 IP 地址为 10.0.12.119,则基于 Windows .NET Server 2003 或 Windows XP 的 VPN 客户端就会为基于该类别的网络 ID 10.0.0.0(子网掩码为 255.0.0.0)创建路由。

客户端可以基于“在远程网络上使用默认网关”设置广泛访问 Internet 或 Intranet 地址,但不能同时访问这两种地址:

  • 如果没有在远程网络上使用默认网关,则可以到达 Internet 位置,但是只能到达与分配的 IP 地址的地址类别匹配的 Intranet 位置。
  • 如果在远程网络上使用默认网关,则可以到达所有的 Intranet 位置,但是在 Internet 上只能到达 VPN 服务器的 IP 地址和通过其他路由到达的位置。

对于大多数使用 Internet 连接的 VPN 客户端而言,这不会出现问题,因为客户端一般用于 Intranet 或 Internet 通信,但不能同时用于这两种通信。

对于要求通过 VPN 连接并发访问 Intranet 和 Internet 资源的 VPN 客户端来说,可以使用以下三个配置选项:

  • 选中“在远程网络上使用默认网关”复选框(默认设置),并允许通过公司的 Intranet 进行 Internet 访问。

    VPN 客户端和 Internet 主机之间的 Internet 通信通过防火墙或代理服务器,就如同 VPN 客户端实际连接到公司的 Intranet 一样。虽然这种方法对性能有影响,但是在将 VPN 客户端连接到企业网络时,它允许企业根据自己的网络策略过滤和监视 Internet 访问。

  • 如果 Intranet 内寻址依据单个基于类别的网络 ID,则清除“在远程网络上使用默认网关”复选框。当 Intranet 使用专用 IP 地址空间 10.0.0.0/8 时,就是一个最好的例子。
  • 如果 Intranet 内寻址不是依据单个基于类别的网络 ID,则清除“在远程网络上使用默认网关”复选框。然后,使用本章前面介绍的拆分隧道方法。

安装证书

如 果 VPN 客户端建立 L2TP/IPSec 连接,则必须在客户端的本地计算机证书存储中安装计算机证书。该证书为建立 IPSec 安全关联 (SA) 提供身份验证。对于使用可扩展身份验证协议-传输级别安全性 (EAP-TLS) 身份验证协议的用户级身份验证,需要使用用户证书或智能卡。要安装证书,证书颁发机构必须存在并且可以访问。可以使用自动注册方法在 Windows .NET 域中的计算机上安装证书,也可以使用证书管理单元。您还可以使用 Web 浏览器将 VPN 客户端连接到 CA Web 注册工具,然后安装证书。要使用这种方法,请执行以下步骤:

使用 CA Web 注册工具在 VPN 客户端上安装证书

  1. 使用 Web 浏览器将 VPN 客户端连接到位于以下网址的 CA Web 注册工具:http://ServerName/certsrv,其中 ServerName 是承载证书颁发机构的服务器的名称。单击“申请证书”。
  2. 单击“高级证书申请”,然后单击“创建并向此 CA 提交一个请求”以显示一个 Web 表单。在 Web 表单中输入必要的信息,然后单击“提交”。
  3. 单击“安装此证书”。

配置 VPN 远程访问策略

远程访问策略根据不同的条件实施 VPN 连接授权和连接限制,包括将一个或多个必要属性与连接操作设置进行比较。

有关使用 Windows .NET 远程访问策略的详细信息,请参见 Windows .NET Server 帮助和支持中心中的“远程访问策略”。

加密设置

选择下列任一加密设置以启用最适合的部署加密级别:

基本

包含 40 位密钥加密的 Microsoft 点对点加密 (MPPE) 用于 PPTP VPN 连接。56 位数据加密标准 (DES) 加密用于 L2TP/IPSec VPN 连接。

包含 56 位密钥的 MPPE 用于 PPTP VPN 连接。对于 L2TP/IPSec VPN 连接,请使用 56 位 DES 加密。

最强

包含 128 位密钥的 MPPE 用于 PPTP VPN 连接。对于 L2TP/IPSec VPN 连接,请使用三重 DES (3DES) 加密。

有关加密设置的详细信息,请参见 Windows .NET Server 帮助和支持中心中的“远程访问策略的实施”。

部署拨号远程访问服务器

拨号远程访问服务器必须安装调制解调器或多端口适配器。另外,拨号远程访问服务器必须使用模拟电话线。如果拨号远程访问服务器提供网络访问服务,则该服务器必须安装网络适配器并建立网络连接。

图 6.6 显示部署拨号远程访问服务器解决方案的过程。

rksvpn06

图 6.6   部署拨号远程访问服务器解决方案的过程

配置拨号远程访问服务器

可以将运行 Windows .NET Server 的计算机配置为拨号远程访问服务器,以便提供对公司 Intranet 的拨号访问服务。

将 Windows .NET Server 配置为拨号远程访问服务器

可以通过运行“路由和远程访问服务器安装向导”将服务器配置为拨号远程访问服务器。要启动该向导,请执行以下步骤:

启动“路由和远程访问服务器安装向导”

  1. 在“开始”菜单上,单击“管理服务器”。
  2. 在“管理服务器”窗口中,单击“添加或删除角色”,然后在“配置服务器向导”窗口中单击“下一步”。
  3. 在“服务器角色”窗口中选择“远程访问/VPN 服务器”,然后单击“下一步”。
  4. 在“选择的摘要”窗口中,单击“下一步”以运行“路由和远程访问服务器安装向导”。

可以使用以下方法配置拨号远程访问服务器的属性:右键单击该服务器,然后在“路由和远程访问”管理单元中选择“属性”。要允许多个拨号网络客户端访问公司 Intranet,请配置以下设置:

  • 在“常规”选项卡上,确保选中了“远程访问服务器”复选框。
  • 在“安全性”选项卡上,单击“身份验证方法”。在“身份验证方法”对话框中,默认将服务器配置为接受某些身份验证方法。可以使用远程访问策略控制接受哪些身份验证方法。
  • 在“安全性”选项卡的“身份验证提供程序”下面,选择并配置拨号网络客户端的凭据验证方法。
  • 在“安全性”选项卡的“记帐提供程序”下面,选择并配置用于记录拨号客户端网络活动的记帐提供程序。
  • 在“IP”选项卡上,确保选中了“启用 IP 路由”和“允许基于 IP 的远程访问和请求拨号连接”复选框。如果您使用 DHCP 服务器来分配远程访问客户端的 IP 地址,请单击“动态主机配置协议 (DHCP)”。否则,单击“静态地址池”,并配置给拨号网络客户端动态分配的 IP 地址范围。如果静态 IP 地址池包含其他子网的 IP 地址范围,则在远程访问服务器计算机上启用 IP 路由协议,或者将每个范围的静态 IP 路由添加到其他 Intranet 中的所有路由器上。如果未添加路由,则远程访问客户端无法接收来自 Intranet 资源的通信。

配置到 Intranet 的拨号连接

LAN 适配器提供从拨号远程访问服务器到 Intranet 的连接。在 LAN 适配器上配置以下 TCP/IP 设置:

  • 由网络管理员分配的 IP 地址和子网掩码。
  • 本地路由器的默认网关。
  • DNS 和 WINS 服务器的 IP 地址。

配置到拨号网络客户端的连接

要支持多个同时拨号客户端的连接,您需要将调制解调器组连接到远程通信提供程序上。调制解调器组适配器包含在拨号远程访问服务器上安装的驱动程序。调制解调器组适配器允许将调制解调器组作为包含多个调制解调器端口的设备。

配置拨号端口

所有调制解调器组端口在“路由和远程访问”控制台的“端口”下面列出。请配置用于远程访问的所有活动调制解调器组端口。

配置拨号远程访问策略

远程访问策略根据不同的条件实施拨号连接授权和连接限制,包括将一个或多个必要属性与连接操作设置进行比较。

有关使用 Windows .NET 远程访问策略的详细信息,请参见 Windows .NET Server 帮助和支持中心中的“远程访问策略”。

加密设置

选择下列任一加密设置以启用最适合的部署加密级别:

  • 基本加密,使用包含 40 位密钥的 MPPE。
  • 加密,使用包含 56 位密钥的 MPPE。
  • 最强加密,使用包含 128 位密钥的 MPPE。

有关加密设置的详细信息,请参见 Windows .NET Server 帮助和支持中心中的“远程访问策略的实施”。

其他资源

这些资源包含与本章有关的其他信息和工具:

资源工具包中的有关信息

  • 有关设计和部署 PKI 的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“设计公钥基础结构”。
  • 有关部署智能卡的详细信息,请参见该工具包的“设计和部署目录和安全服务”中的“部署智能卡”。
  • 有关设计和部署 IAS 的详细信息,请参见本书中的“部署 IAS”。
  • 有关 EAP-TLS 身份验证的详细信息,请参见本书中的“连接远程站点”。
  • 有关使用连接管理器部署远程访问客户端的详细信息,请参见本书中的“使用连接管理器部署远程访问客户端”。

Beta 免责声明

本 文档是最终文档的早期发布版本,在发布最终商业版本之前可能会作大量的更改,并且本文档是 Microsoft Corportaion 的机密的和专有的信息。本文档的披露按照接收者和 Microsoft 之间的保密协议进行。本文档仅供参考,Microsoft 在本文档中未作任何明示的或默示的担保。本文档中的信息,包括 URL 和其他 Internet Web 站点的引用,如有更改恕不另行通知。使用本文档带来的风险和后果由用户自己负责。除非另外注明,此处提及的示例公司、机构、产品、人员和事件都纯属虚构, 决不意指任何实际的公司、机构、产品、人员和事件。遵守所有适用的版权法律是用户的责任。在不对版权法所规定的权利加以限制的情况下,如未得到 Microsoft 公司明确的书面许可,不得为任何目的、以任何形式或手段(电子的、机械的、影印、录制等等)复制、传播本文的任何部分,也不得将其存储或引入到检索系统 中。

Microsoft 可能拥有本文档主题涉及到的专利、专利申请、商标、版权或其他知识产权。除非在 Microsoft 的任何书面许可协议中明确表述,否则获得本文档不代表您将同时获得这些专利、商标、版权或其他知识产权的许可证。

未出版作品。版权所有© 2001 Microsoft Corporation。保留所有权利。

Active Accessibility、Active Channel、Active Client、Active Desktop、Active Directory、ActiveMovie、ActiveX、Authenticode、BackOffice、Direct3D、 DirectAnimation、DirectDraw、DirectInput、DirectMusic、DirectPlay、 DirectShow、DirectSound、DirectX、DoubleSpace、DriveSpace、FrontPage、 IntelliMirror、IntelliMouse、IntelliSense、JScript、Links、Microsoft、 Microsoft Press、Microsoft QuickBasic、MSDN、MS-DOS、MSN、Natural、NetMeeting、NetShow、OpenType、Outlook、 PowerPoint、SideWinder、Slate、TrueImage、Verdana、Visual Basic、Visual C++、Visual FoxPro、Visual InterDev、Visual J++、Visual Studio、WebBot、Win32、Windows、Windows Media、Windows NT 是 Microsoft Corporation 在美国和(或)其他国家(或地区)的注册商标或商标。

此处提到的实际公司和产品名称可能是其各自所有者的商标。

感谢您阅读 Whistler Server 资源工具包文档。请按照以下步骤,在 microsoft.beta.whistler.documentation 新闻组下面的 microsoft.betanews 帐户中提出您的反馈意见:

  1. 创建新的新闻组邮件。
  2. 使用本章的标题作为您的邮件主题行。
  3. 在邮件中提出您的意见和建议,并明确注明页号和文字改动之处。

也可以将本章连同您的意见发送到 docbeta@microsoft.com。

© 1985-2002 Microsoft Corporation.保留所有权利。


个人信息中心 |联系我们 |TechNet 免费邮件
©2007 Microsoft Corporation. 版权所有.  保留所有权利 |商标 |隐私权声明
Microsoft
 
原创粉丝点击