在 ProSafe™ VPN 防火墙上面使用 XAUTH 和 RADIUS

本章节描述如何在在 ProSafe™ VPN 防火墙上面使用 XAUTH 及 RADIUS 为客户端软件提供用户验证

名字解释:XAUTH and RADIUS

当很多用户需要通过客户端软件连接到VPN网关的时候,网管人员通常会为每一个用户设置不同VPN策略和预置密码用以区分每一个用户,尽管网络管理员可以为每一个用户配置一条独立的VPN策略,但显然,如果有一种技术,可以将用户的信息保存在数据库里使用统一的VPN策略对用户进行身份认证,这样将大大减少网络管理人员的工作负担和简化管理程序。XAUTH为这些需要区分每个用户用户进行身份验证的应用提高了一种机制,该机制允许VPN网关使用Radius服务器或者本地数据库记录用户信息并对用户进行身份认证。

RADIUS (Remote Authentication Dial-In User Service, RFC 2865) 是一个管理网络里多个用户的验证,授权,计费(AAA)的协议。RADIUS服务器在数据库里存储有效的用户信息,并能给要求访问网络资源的合法用户授权。

当客户端开始一个VPN连接的请求的时候,VPN网关通过XAUTH(拓展验证)强行中断VPN协商的过程,并要求客户端必须输入合法的用户名的密码进行验证,网关在接收到来自客户端提供的用户名和密码之后首先在本地数据库校验信息是否合法,如果在本地数据库找不到相对应的用户名,则将信息转发到RADIUS服务器进行校验,如果判断为合法,则继续VPN的协商过程,如果用户不合法,则中断VPN连接。

适用环境

该功能可以在以下的产品及软件版本上实现。

Model

Firmware

FVX538

1.6.38

FVS338

1.6.35

本文档在以下环境下编写并验证通过:

  • 网件FVS338 ProSafe VPN 防火墙(固件版本:1.6.35)
  • 网件ProSafe VPN 客户端软件版本10.5.1 (Build 8)

 

支持的RADIUS服务:

支持多数标准的免费/商业发布的RADIUS服务程序,比如:

ProSafe VPN防火墙在FreeRADIUS 和Microsoft IAS上测试通过。同时本文章不再详细介绍每一种RADIUS的配置办法,美国网件公司并不强制客户必须使用某种RADIUS Server软件,所有的RADIUS Server的配置信息均可以参考厂家提供的标准配置文档。

设置VPN防火墙的XAUTH模式

在配置VPN的IKE策略的时候,选择要求使用XAUTH验证,则可以启用VPN的XAUTH功能。我们在配置该IKE策略的XAUTH的时候,系统会提供两种模式给用户选择。如下:

  • IPsec Host — 作为客户端,在连接到中心时需要提供用户名和密码
  • Edge Device — 作为服务器端(中心),要求客户端必须进行口令验证。

当VPN防火墙定义为IPsec Host的时候,在建立VPN连接的时候,设备会给服务器端提供用户名和密码信息。

当VPN防火墙定义为edge device模式的时候,VPN网关则要求客户端必须输入合法的用户名的密码进行验证,网关在接收到来自客户端提供的用户名和密码之后首先在本地数据库校验信息是否合法,如果在本地数据库找不到相对应的用户名,则将信息转发到RADIUS服务器进行校验,如果判断为合法,则继续VPN的协商过程,如果用户不合法,则中断VPN连接。

具体设置如下:

  1. 进入IKE Policies选项并点击 Edit按钮进入IKE Policies编辑页面
  2. 在 X AUTHENTICATION 项目下面, 选择Edge Device.
  3. Authentication Type下选择Generic使用PAP协议, 否则则选择CHAP以使用CHAP协议. 如果你打算使用RADIUS,则您必须在RADIUS上设置相对应的验证协议。通常地.,PAP 协议简单实用,而CHAP则更为安全。
  4. 点击应用使配置生效。

  1. 下一步,设置您的VPN防火墙是通过本地数据库验证还是通过扩展的RADIUS 服务器验证。防火墙首在User Database里面定义的本地数据库的用户名和密码信息进行验证,如果找不到匹配的条件,则转交到在RADIUS Clien项目里定义的RADIUS服务器来验证。

配置VPN防火强使用本地数据库进行验证

即使你没有配置RADIUS服务器,你仍然可以使用VPN防火墙自带的用户数据库实现用户验证功能。在使用该功能之前,你必须在User Database项目下面配置用户信息,如下:

  1. User Database项目下面点击 add按钮。
  2. User NamePassword里分别填写相应的信息。
  3. 点击Apply按钮即可起用本地数据库。

配置防火墙使用RADIUS服务器进行验证

在Radius Client项目里面,可以定义一个主的RADIUS服务器和备份的RADIUS服务器。防火墙首先和主的RADIUS服务器联系,如果主的RADIUS服务器没有响应,则转到备份的RADIUS服务器上。

在Primary和Backup Server里面的设置介绍如下:

  • Server Address — RADIUS的IP地址.
  • Auth port — RADIUS服务器的验证端口号,对于正在出来的验证用户,RADIUS客户端会使用该端口和RADIUS服务器通讯,在大部情况下,默认的端口号都不应该修改。
  • Acct port — RADIUS的计费端口号。在大多数情况下默认的端口号不需要修改。
  • Secret Phrase— RADIUS客户端和服务器之间的通讯密钥。该密钥必须在服器端和客户端单独配置,并要求相互一致。
  • NAS Identifier —防火墙充当NAS(网络访问服务)角色,允许合法的外部用户访问网络。在一个RADIUS会话里面,NAS必须递交NAS身份标识到RADIUS服务器,在该例子里NAS的身份标识可以是防火墙的IP地址或有效的用户名,在某些应用场合里,RADIUS服务器有可能要求NAS提供有效的用户名,而我们则可以在该处填写合法的用户名提交到RADIUS服务器进行验证。然而在大多数场合下面,RADIUS服务器并不要求NAS提供用户名。

点击 Apply保存配置

注意:在试验中我们采用WINDOWS 的IAS作为RADIUS服务器,NAS身份标识不需要在IAS里面配置,同时在IKE策略里的Authentication Type 应该选择Generic (PPP)的方式。

配置网件ProSafe VPN 客户端使用XAUTH

在此之前,你必须在不需要XAUTH的情况下,配置好VPN客户端。测试到VPN防火墙的连接通过后,在配置里面添加相应的XAUTH选项即可:

  1. 点击Authentication选择Proposal 1. 选择和在VPN防火墙的IKE策略里匹配的各项参数。
  2. Authentication Method, 选择Pre-Shared Key; Extended Authentication.
  3. 点击 floppy disk图标以保存配置

测试连接

  1. 在WINDOWS工具栏里右键点击VPN client图标选择My Connections \<connection name>.

  1. 几秒钟后将出现登陆页面。
  2. 输入正确的用户名和密码信息后,客户端软件会显示W "Successfully connected to My Connections\<connection name>"的信息
  3. 从安装客户端软件的PC上PING对方局域网内的主机,应该能够PING通
  4. 遇到故障的时候,可以参考VPN客户端软件里的VPN日志以排除故障。