背景知识:
AAA基本组网结构:
NAS发给RADIUS服务器的远程用户的密码在共享密钥的参与下由MD5算法进行加密处理。
ISP域:
一、为什么要创建ISP域?
不同的用户需提供不同的服务类型/权限,因此通过设置ISP域将它们区分开,并为每个ISP域单独设置AAA方法。
二、用户所属的ISP域是由用户登录时提供的用户名决定的:
1. 用户名携带域名,则使用该域认证用户;
2. 用户名不携带域名,则使用系统缺省域认证用户。
3. 系统默认缺省域为system,可以用命令“domain default enable 域名”更改缺省域。
三、NAS设备对用户的管理是基于ISP域的。
在作为AAA客户端的设备上,AAA的基本配置思路:
一、配置AAA方案:根据需要配置本地或远程认证方案。
1. 本地认证:需要配置本地用户,即local user的相关属性,包括手动添加认证的用户名和密码等;
2. 远程认证:需要配置RADIUS、HWTACACS方案,并在服务器上配置相应的用户属性。
二、配置实现AAA的方法:在用户所属的ISP域中引用已配置的AAA方案。
实验拓扑图:
Radius server为win2003+Cisco ACS4.0。
实验目的:对telnet到switch的用户进行AAA管理。
switch的配置:
#开启telnet服务
[SW1]telnet server enable
# 配置Telnet用户登录采用AAA认证方式。
[SW1]user-interface vty 0 4
[SW1-ui-vty0-4]authentication-mode scheme
#第一步,配置AAA方案
#创建RADIUS方案acs。
[SW1]radius scheme acs
#指定主认证服务器。由于RADIUS合并了认证和授权的过程,所以不需要单独指定授权服务器。
[SW1-radius-acs]primary authentication 19.1.1.1
#指定主计费服务器。
[SW1-radius-acs]primary accounting 19.1.1.1
# 配置与认证服务器交互报文时的共享密钥为mykey。
[SW1-radius-acs]key authentication mykey
# 配置与计费服务器交互报文时的共享密钥为mykey。
[SW1-radius-acs]key accounting mykey
# 配置RADIUS服务器的服务类型。使用ACS服务器时,RADIUS服务器类型应选择standard。
[SW1-radius-acs]server-type standard
# 配置向RADIUS服务器发送的用户名不携带域名。
[SW1-radius-acs]user-name-format without-domain
#第二步,创建ISP域并引用已配置的AAA方案。
#创建ISP域
[SW1]domain mydomain
#指定login用户的认证方案为acs
[SW1-isp-mydomain]authentication login radius-scheme acs
#指定login用户的授权方案为acs。由于认证和授权是一起进行的,所以认证和授权方案要保持一致。
[SW1-isp-mydomain]authorization login radius-scheme acs
#指定login用户的计费方案为acs。
[SW1-isp-mydomain]accounting login radius-scheme acs
#下面的命令可选。如果telnet用户名带域名,则不需要配置该命令,会根据域名找到相应的域;如果不带域名,则需要配置该命令将域设置为默认域,否则会使用system域所引用的AAA方案,因为system是缺省域。
[SW1]domain default enable mydomain
Radius server的配置:
一、向Cisco ACS 中导入H3C私有Radius属性
导入过程:
编辑文件:E:\h3c.ini
[User Defined Vendor]
Name=H3C
IETF Code=2011
VSA 29=h3c_Exec_Privilege
[h3c_Exec_Privilege]
Type=INTEGER
Profile=IN OUT
Enums=h3c_Exec_Privilege-Values
[h3c_Exec_Privilege-Values]
0=Access
1=Monitor
2=Manager
3=Administrator
在ACS的bin目录下运行:csutil -addudv 0 e:\h3c.ini
二、配置ACS
1.添加AAA Client: Network Configuration -> Add Entry
AAA Client IP Address: 19.1.1.2
Key: mykey
Authenticate Using: RADIUS(H3C)
2.编辑AAA Server: Network Configuration -> DNSsrv
Key: mykey
AAA Server Type: RADIUS
3.Interface configuration
选中: group [026/2011/029] h3c_Exec_Privilege
4.Group Setup -> Edit Setting -> Jump To:RADIUS(H3C) -> RADIUS (H3C) Attributes:选择权限
5.User Setup -> 创建一个不带域的用户名,并隶属于第4步创建的group。
配置完成!
用户名携带域的配置:
# 配置向RADIUS服务器发送的用户名携带域名。
[SW1-radius-acs]user-name-format with-domain
#这条指令就不需要了,因为可以通过所携带的域名来找到相应的域。
[SW1]domain default enable mydomain
然后在ACS中增加一个携带域的用户名,如h3c@mydomain,telnet时输入的用户名为h3c@mydomain。
通过系统默认域system来引用AAA方案:
#这些指令就不需要了
[SW1]domain mydomain
[SW1-isp-mydomain]authentication login radius-scheme acs
[SW1-isp-mydomain]authorization login radius-scheme acs[SW1-isp-mydomain]accounting login radius-scheme acs
#直接在system域中引用acs方案
[SW1]domain system
[SW1-isp-system]authentication login radius-scheme acs
[SW1-isp-system]authorization login radius-scheme acs
[SW1-isp-system]accounting login radius-scheme acs
#当然,用户名也是不带域的
[SW1-radius-acs]user-name-format without-domain