在虚拟专用网络(VPN)连接基础一文中我们曾经提及,你可以通过以下两种方式来控制用户的远程拨入:
-
在用户账户的拨入属性中设置为允许访问或拒绝访问来显式控制VPN客户的远程拨入;
-
在用户账户的拨入属性中设置为通过远程访问策略控制访问,然后创建远程访问策略来控制用户的远程拨入。
那么,它们之间有什么区别呢?
它们之间的主要区别在于:显式控制方式只能针对单个用户进行设置,而通过远程访问策略控制访问可以针对多个用户或用户组进行设置。
远程访问策略(RAP)是定义是否授权VPN客户远程访问的一系列规则集合,每个RAP具有一个或多个匹配条件、一组配置文件设置和一个远程访问权限设置。 如果设置为通过远程访问策略控制访问,当VPN客户发起连接请求时,VPN服务器按照优先级顺序(顺序值越低的RAP具有越高的优先级)对RAP进行评估,并且应用第一个匹配VPN客户连接请求的RAP中的授权设置。当VPN客户的连接请求匹配某个远程访问策略的所有匹配条件时,VPN服务器根据此远程访问策略的授权设置来决定是否允许VPN客户的拨入,并且根据此RAP的配置文件来决定如何处理此VPN客户的远程拨入。
如果使用显式控制方式,当VPN客户发起连接请求时,VPN服务器只是根据发起连接请求的用户账户的拨入属性来简单的允许或拒绝VPN客户的远程访问。而采用通过远程访问策略控制访问时,VPN服务器 评估是否授权VPN客户的远程拨入的过程如下:
-
VPN服务器按照优先级顺序(顺序值越低的RAP具有越高的优先级)对RAP进行评估。如果VPN客户的连接请求匹配某个RAP的所有匹配条件,则检查远程访问策略的远程访问权限设置:
-
如果远程访问权限被设置为授予远程访问权限,则允许VPN客户的远程拨入并应用RAP的配置文件来处理VPN连接;
-
如果远程访问权限被设置为拒绝远程访问权限,则拒绝VPN客户的远程拨入;
-
-
如果VPN客户的连接请求不匹配此RAP的任何条件,则处理下一远程访问策略。
-
如果没有任何远程访问策略匹配VPN客户的连接请求,则拒绝VPN客户的远程拨入。
默认情况下,在Windows Server 2003中预定义了以下两个远程访问策略,不过它们的远程访问权限设置为拒绝远程访问权限,即拒绝匹配条件的VPN客户的远程拨入:
-
到Microsoft路由和远程访问服务器的连接:定义的匹配条件为RRAS服务器特征字符串等于“^311$”,这代表 到Microsoft路由和远程访问服务器的远程访问连接。如果VPN客户向Microsoft路由和远程访问服务发起连接请求,则匹配此RAP。
-
到其他访问服务器的连接:定义的匹配条件为任何时间发起的VPN客户连接请求,此RAP匹配任何VPN客户连接的请求。
在远程访问策略中,你可以设置以下匹配条件:
-
VPN客户身份验证方式;
-
VPN客户发起连接请求的电话号码或连接到的电话号码;
-
VPN客户发起连接请求的日期和时间;
-
VPN客户使用的链路协议;
-
RRAS服务器特征字符串;
-
VPN客户请求的服务类型;
-
VPN客户使用的隧道类型;
-
VPN客户所属于的Windows用户组;
-
其他还可以在IAS服务器中使用的匹配条件,如RADIUS客户端的友好名称、IP地址等等;
对于每一个VPN客户的远程拨入,路由和远程访问服务完整的处理过程分为两部分:
-
处理授权:如上文中所描述的显式控制或通过远程访问策略控制,从而决定是否允许VPN客户的远程拨入;
-
处理连接:当允许VPN用户远程拨入时,路由和远程服务将处理和VPN客户之间的连接。路由和远程访问服务将结合用户账户拨入属性中的设置和第一个匹配VPN客户连接请求的远程访问策略中的配置文件设置来处理与VPN客户之间的连接。如果 两者之间出现冲突,用户账户拨入属性中的设置将覆盖远程访问策略中的配置文件设置。不过用户账户拨入属性中可用设置比较少,主要使用的是远程访问策略中的配置文件中的设置。
需要注意的是,处理连接和处理授权是独立进行的,即采用何种授权方式不会影响连接的处理。即使你通过显式控制来处理授权,但是当路由和远程访问服务处理连接时,同样会使用第一个匹配VPN客户连接请求的远程访问策略中的配置文件设置。如果没有匹配VPN客户请求的远程访问策略,则路由和远程访问服务会拒绝VPN客户的远程拨入;如果VPN客户端的连接设置不匹配远程访问策略配置文件中的设置,则同样会拒绝VPN客户的远程拨入。提示的错误信息均为错误649:本账户没有拨入的权限。
配置文件由一组应用到远程VPN客户连接的连接选项设置组成,默认情况下不会对配置文件进行设置,即对VPN客户的远程访问连接没有任何限制。你可以通过以下选项来设置VPN服务器如何进行与VPN客户的远程访问连接:
-
空闲超时时间
-
最大会话时间
-
允许拨入的时间;
-
加密强度;
-
身份验证方式;
-
IP数据包筛选器;
-
多重链接设置;
-
分配VPN客户端IP地址的方式(用户账户中的拨入设置具有更高的优先权)等等;
远程访问策略对于本地计算机是唯一的,不过你可以通过本地的路由和远程访问管理控制台或者Internet验证服务管理控制台来管理本地计算机上的远程访问策略。如果服务器运行路由和远程访问服务,并且配置为使用Windows身份验证提供程序,则路由和远程访问服务使用本地的远程访问策略,并且只是应用到VPN客户到本地路由和远程访问服务器的连接;如果服务器运行路由和远程访问服务,并且配置为使用RADIUS身份验证提供程序,则路由和远程访问服务使用RADIUS服务器上的远程访问策略,一个RADIUS服务器上的远程访问策略可以应用到多个路由和远程访问服务器。Windows服务器中的RADIUS服务即Internet 验证服务(IAS),关于Internet 验证服务更详细的信息,请参见Internet验证服务使用指南一文。
在下面我将给大家演示一下通过远程访问策略来控制用户的远程拨入,我将创建一个具有以下两个匹配条件的远程访问策略:
-
Windows用户组为WINSVRDomain Users;
-
发起连接请求的时间为星期一到星期五8:00~19:00。
默认情况下,不属于域的Windows Server 2003和具有域功能级为Windows 2000 Native或者Windows Server 2003的活动目录会将用户的拨入权限设置为通过远程访问策略控制访问,但是未提升域功能级的活动目录如Windows 2000 Mix会将用户的拨入权限设置为拒绝访问,并且通过远程访问策略控制访问选项不可用,你需要提升域功能级为Windows 2000 Native或者Windows Server 2003后才能使用此选项。
因此,首先我们需要验证用户的拨入权限设置为通过远程访问策略控制访问,我的活动目录的域功能级已经提升为Windows Server 2003,如下图所示:
因此,用户的拨入权限默认即设置为通过远程访问策略控制访问。
现在我们在路由和远程访问服务器上打开路由和远程访问管理控制台,展开服务器,然后右击远程访问策略,选择新建远程访问策略;
在弹出的欢迎使用新建远程访问策略向导页,点击下一步;
在策略配置方法页,在此选择设置自定义策略,然后输入策略名。你可以选择使用向导,但是你以后会发现,使用自定义方式来创建策略更为简单快捷;点击下一步;
在策略状况页,点击添加按钮来添加匹配条件;
在弹出的选择属性对话框,首先选择Day-And-Time-Restrictions添加日期和时间限制,然后点击添加;
在弹出的时间限制对话框,选中星期一到星期五8:00~19:00的时间范围,然后点击允许,再点击确定;
在策略状况页,再次点击添加按钮;在弹出的选择属性对话框,选择Windows-Groups添加Windows用户组条件,然后点击添加;
在弹出的组对话框上点击添加,然后输入WINSVRDomain Users,点击确定,完成后如下图所示,点击确定,然后在策略状况页点击下一步;
在权限页,选择授予远程访问权限,点击下一步;
在配置文件页,接受默认设置,点击下一步;
在正在完成新建远程访问策略向导页,点击完成。此时新的远程访问策略就创建好了,并放置在远程访问策略的第一位,如下图所示。
现在我们来测试一下此远程访问策略。首先,我们在创建的远程访问策略所限制的时间内使用属于Domain Users用户组的账号VPNUser进行远程拨入,
拨入成功,如下图所示:
现在,我们将路由和远程访问服务器上的时间调整为星期日,然后在VPN客户上拨入进行测试,
此时,VPN客户拨入出错,提示没有拨入权限,这是因为没有匹配的远程访问策略授权它的远程拨入。
将路由和远程访问服务器上的时间调整为正常时间(在创建的远程访问策略所限制的时间内),然后使用另外一个不属于Domain Users的账户拨入VPN测试,
同样,VPN客户拨入出错,提示没有拨入权限,这是因为没有匹配的远程访问策略授权它的远程拨入。