一.RADIUS 协议简介

          AAA 是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用 RADIUS 协议来实现 AAA 。

1. 什么是RADIUS

RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常被应用在既要求较高安全性,又要求维持远程用户访问的各种网络环境中。

RADIUS 服务包括三个组成部分:

协议:RFC 2865 和 RFC 2866 基于 UDP/IP 层定义了 RADIUS 帧格式及其消息传输机制,并定义了 1812 作为认证端口,1813 作为计费端口。

服务器:RADIUS 服务器运行在中心计算机或工作站上,包含了相关的用户认证和网络服务访问信息。

客户端:位于拨号访问服务器设备侧,可以遍布整个网络。

RADIUS 基于客户端/ 服务器模型。交换机作为 RADIUS 客户端,负责传输用户信息到指定的RADIUS 服务器,然后根据从服务器返回的信息对用户进行相应处理(如接入/ 挂断用户)。RADIUS 服务器负责接收用户连接请求,认证用户,然后给交换机返回所有需要的信息。

RADIUS 服务器通常要维护三个数据库,如图1-1所示。

第一个数据库“Users”用于存储用户信息(如用户名、口令以及使用的协议、IP 地址等配置)。

第二个数据库“Clients”用于存储RADIUS 客户端的信息(如共享密钥)。

第三个数据库“Dictionary”存储的信息用于解释RADIUS 协议中的属性和属性值的含义。

Radius简介及ACS的安装配置(案例)_java虚拟机

                                  图1-1 RADIUS 服务器的组成

另外,RADIUS 服务器还能够作为其他AAA 服务器的客户端进行代理认证或计费。

2. RADIUS 的基本消息交互流程

RADIUS 客户端(交换机)和RADIUS 服务器之间通过共享密钥来认证交互的消息,

增强了安全性。RADIUS 协议合并了认证和授权过程,即响应报文中携带了授权信息。用户、交换机、RADIUS 服务器之间的交互流程如图1-2所示。

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_02

                                      图1-2 RADIUS 的基本消息交互流程

基本交互步骤如下:

(1)  用户输入用户名和口令。

(2) RADIUS 客户端根据获取的用户名和口令,向RADIUS 服务器发送认证请求包(Access-Request)。

(3) RADIUS 服务器将该用户信息与Users 数据库信息进行对比分析,如果认证功,则将用户的权限信息以认证响应包(Access-Accept)发送给 RADIUS 客户端;如果认证失败,则返回Access-Reject响应包。

(4) RADIUS 客户端根据接收到的认证结果接入/ 拒绝用户。如果可以接入用户,则RADIUS 客户端向RADIUS 服务器发送计费开始请求包(Accounting-Request ),Status-Type取值为start 。

(5) RADIUS 服务器返回计费开始响应包(Accounting-Response )。

(6)  用户开始访问资源。

(7) RADIUS 客户端向 RADIUS 服务器发送计费停止请求包(Accounting-Request ),Status-Type取值为stop 。

(8) RADIUS 服务器返回计费结束响应包(Accounting-Response )。

(9)  用户访问资源结束。

RADIUS 协议采用UDP报文来承载数据,通过定时器管理机制、重传机制、备用服务器机制,确保RADIUS 服务器和客户端之间交互消息正确收发。

RADIUS 协议具有良好的可扩展性,协议中定义的 26号属性(Vendor-Specific)用于设备厂商对RADIUS 进行扩展,以实现标准RADIUS 没有定义的功能。

3.配置RADIUS 协议

RADIUS 协议配置是以RADIUS 方案为单位进行的,一个RADIUS 方案在实际组网环境中既可以运用于一台独立的RADIUS 服务器,也可以运用于两台配置相同、但IP 地址不同的主、从 RADIUS 服务器。当创建一个新的 RADIUS 方案之后,需要对属于此方案的RADIUS 服务器的IP 地址和UDP端口号进行设置,这些服务器包括认证/ 授权和计费服务器,而每种服务器又有主服务器和从服务器的区别。每个RADIUS 方案的属性包括:主服务器的IP 地址、从服务器的IP 地址、共享密钥以及RADIUS 服务器类型等。 在实际组网环境中,上述参数的设置需要根据具体需求来决定。但是必须至少设置一个认证/ 授权服务器和一个计费服务器(如果不配置计费服务器,则必须配accounting optional 命令)。同时,保证交换机上的RADIUS 服务端口设置与RADIUS 服务器上的端口设置保持一致。

 

二.实例分析: 拓扑图

Radius简介及ACS的安装配置(案例)_交互_03

下面是使用ACS来实现的一个实例。

1.准备安装所需的应用程序等。

JAVA虚拟机,Cisco Secure ACS(在这里使用4.2版本的来实现安装),一台装有windows server 2003的电脑(或虚拟机);

2.安装JAVA虚拟机。

Radius简介及ACS的安装配置(案例)_交互_04

Radius简介及ACS的安装配置(案例)_Radius_05

Radius简介及ACS的安装配置(案例)_Radius_06

3.安装Cisco Secure ACS 4.2

进入ACS安装文件夹,双击“Setup.exe”来进行安装。过程如下:

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_07

接受协议并开始安装

Radius简介及ACS的安装配置(案例)_java虚拟机_08

单击“下一步”

Radius简介及ACS的安装配置(案例)_java虚拟机_09

这里要全部选中,单击“下一步”

Radius简介及ACS的安装配置(案例)_java虚拟机_10

这里最好就选择默认路径,单击“下一步”

Radius简介及ACS的安装配置(案例)_休闲_11

直接“下一步”

Radius简介及ACS的安装配置(案例)_Radius_12

显示进程

Radius简介及ACS的安装配置(案例)_休闲_13

注意,这里可以什么都不选,“下一步”

Radius简介及ACS的安装配置(案例)_java虚拟机_14

单击“下一步”

Radius简介及ACS的安装配置(案例)_java虚拟机_15

这里要求输入密码,不能小于8个字符,

Radius简介及ACS的安装配置(案例)_休闲_16

单击“下一步”,进行安装

Radius简介及ACS的安装配置(案例)_交互_17

Radius简介及ACS的安装配置(案例)_休闲_18

开始启动服务,完成。

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_19

安装ACS就已经完成,在桌面上我们会发现一个“ACS Admin”的网页快捷图标,双击打开却出现白板,这是什么原因呢?下面我们一起来解决。

Radius简介及ACS的安装配置(案例)_java虚拟机_20

进入“Internet选项”,如图,将127.0.0.1添加到可信任的站点。

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_21

重新打开“ACS Admin”,我们看见可以运行了。

Radius简介及ACS的安装配置(案例)_Radius_22

在服务器上面进入ACS,点击“Administrator Control”然后来添加一个新的管理员。

Radius简介及ACS的安装配置(案例)_休闲_23

添加一个管理员为cms,密码123456,在下面选择“Grant All”如下

Radius简介及ACS的安装配置(案例)_休闲_24

将h3c.ini导入ciscosecure -ACS-4.20.124服务器,h3c.ini文件如下,

[User Defined Vendor]

Name=Huawei

IETF Code=2011

VSA 29=hw_Exec_Privilege

[hw_Exec_Privilege]

Type=INTEGER

Profile=IN OUT

Enums=hw_Exec_Privilege-Values

[hw_Exec_Privilege-Values]

0=Access

1=Monitor

2=Manager

3=Administrator

Radius简介及ACS的安装配置(案例)_交互_25

Radius简介及ACS的安装配置(案例)_交互_26

在网络中进行设置

Radius简介及ACS的安装配置(案例)_java虚拟机_27

Radius简介及ACS的安装配置(案例)_休闲_28

进入Interface Configration,可以看到如下内容。

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_29

Radius简介及ACS的安装配置(案例)_交互_30

进入group setup编辑如下内容。

Radius简介及ACS的安装配置(案例)_休闲_31

在group中增加相应的用户test1

Radius简介及ACS的安装配置(案例)_休闲_32

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_33

4.配置华为的交换机,配置米命令如下。

<SW12>dis cu

#

sysname aaa

#

radius scheme system

server-type huawei

primary authentication 127.0.0.1 1645

primary accounting 127.0.0.1 1646

user-name-format without-domain

radius scheme abc

server-type huawei

primary authentication 192.168.100.156 1812

accounting optional

key authentication 123456

user-name-format without-domain

domain system

radius-scheme system

access-limit disable

state active

vlan-assignment-mode integer

idle-cut disable

self-service-url disable

messenger time disable

domain zzu

radius-scheme abc

access-limit enable 10

state active

vlan-assignment-mode integer

idle-cut disable

self-service-url disable

messenger time disable

domain default enable system

#

local-server nas-ip 127.0.0.1 key huawei

local-user user1

password simple 123

service-type telnet level 3

#

vlan 1

#

interface Vlan-interface1

ip address 192.168.100.32 255.255.255.0

#

interface Aux0/0

#

interface Ethernet0/1

#

interface Ethernet0/2

#

interface Ethernet0/3

#

interface Ethernet0/4

#

interface Ethernet0/5

#

interface Ethernet0/6

user-interface aux 0

user-interface vty 0 4

authentication-mode scheme

#

return

<SW12>

在客户机上进行验证,如下。

Radius简介及ACS的安装配置(案例)_休闲_34

Radius简介及ACS的安装配置(案例)_交互_35

Radius简介及ACS的安装配置(案例)_Cisco Secure ACS_36

 

小结:安装ACS一定要安装java,注意修改安全级别。