在前面的博文中,我们介绍了如何利用ISA2006创建VPN服务器,以及对VPN服务器使用的PPTP和L2TP协议都进行了介绍,今天我们来介绍一种经常和VPN配合使用的身份验证服务器-Radius服务器。
Radius是Remote Authentication Dial In User Service的缩写,意思是远程用户拨号认证服务。Radius原本设计用于对拨号用户进行身份验证和计费,这些功能经常被电信部门所使用,我们拨号上网后收到的账单就是Radius服务器统计出来的。Radius使用一段时间后,大家发现Radius协议功能强大,使用方便且易于扩充,因此经过改进后,Radius现已成为国际通用的认证计费协议,广泛使用在普通电话上网、ADSL上网、小区宽带上网、IP电话等多种场合。
有了Radius这样一个专业的认证服务器,VPN就轻松多了。VPN服务器只需成为Radius客户端,然后把VPN用户发来的身份验证凭据转发到Radius服务器,自己就可以坐等结果通知了。这样一来VPN服务器可以从身份验证工作中解脱出来,专心干好自己的本职工作。而Radius服务器也可以发挥自己的专业优势,让用户身份验证能够使用智能卡,双因子验证等高级技术。下面我们先举一个例子,向大家介绍一下Radius的应用。如下图拓扑所示,Beijing是一个工作组环境下的ISA服务器,按理说无法对域用户进行身份验证。但我们在域控制器Denver上安装了一个Radius服务器。这样一来ISA服务器只要把域用户发来的验证请求转交给Radius服务器,就能通过Radius服务器对访问者进行域用户验证,这样是不是很方便呢?顺便说一下,有些硬件防火墙也可以通过Radius来对域用户提供支持。

一 Radius服务器安装
首先我们在Denver上安装Radius服务器,Radius服务器并不一定要安装在域控制器上,我们在此完全是为了实验方便才把Radius和域控制器集于一身。在Denver上依次点击 控制面板-添加或删除程序-添加/删除Windows组件,如下图所示,选择网络服务组件中的“Internet验证服务”,点击确定后我们就可以在Denver上安装Radius服务了。

二 Radius服务器添加客户端
想利用Radius服务器对访问者进行身份验证,ISA首先得成为Radius的客户端,下面我们就在Radius服务器中把ISA服务器添加为客户端。在Denver上依次点击 开始-程序-管理工具-Internet验证服务,如下图所示,右键“点击Radius客户端”,选择“新建Radius客户端”。

为Radius客户端配置一个易于记忆的名字,并填写客户端的IP。

接下来在客户端-供应商类型中应选择“Microsoft”,注意设置Radius服务器和客户端的共享密码。Radius服务器和客户端依靠这个密码进行彼此的身份验证。这个密码并不在网络上传递,如果Radius服务器认为有必要,还会使用挑战/响应的机制向Radius客户端提出身份验证请求。具体就是Radius服务器生成一个随机字符串,然后用这个共享口令加密,然后把加密后的密文传给客户端,要求客户端对密文解密后再回传给服务器,如果客户端回送的内容和原始的随机字符串一样,那客户端的身份就得到了认可。

如下图所示,Radius服务器已经把ISA服务器添加成了客户端。


