南通有理发吗:【转载】ACS AAA认证实例(认证 授权 记录用户的登陆时间以及输入的命令)

来源:百度文库 编辑:偶看新闻 时间:2024/05/05 01:16:08
【转载】ACS + AAA认证实例(认证+授权+记录用户的登陆时间以及输入的命令)2010年07月09日 星期五 17:26

最终实现的功能:
所有设备的认证、授权和记帐都由ACS统一管理。

认证部分:所有用户都在ACS上设置并统一管理,无需每台设备都设置一次用户名密码。如果需要更安全的口令,可以使用RSA SecurID动态密码产品,每分钟变化一次密码,SecurID可以与ACS完美集成,有兴趣的可以自己去找相关资料。

授权部分:用户经过认证后,由ACS直接授权用户级别,用户获得15级别的特权,无需再使用enable命令进入特权模式,同时,考虑到可能会由于网络或认证服务器故障,导致设备与认证服务器之间无法通讯导致无法认证,因此,设备的Console口仍然使用本地密码,确保网络故障时,仍可通过Console口进入设备进行配置。

记帐部分:ACS上会记录下所有用户的登录和退出的时间,逗留的时长,从哪个IP地址登录,所登录的设备等信息,同时,会记录下用户所有在设备上输入的命令和输入命令的时间。

至于要求不同用户可以管理不同的设备,可以参考ACS的NAR设置,这些不在本文讨论范围之内,大家可以自己看看ACS的User Guide

以上配置在Win2003企业版,ACS 4.0和3640,IOS版本12.0(7)T(够老的吧)上测试通过。

路由器配置:
3640#sh run
Building configuration...

Current configuration:
!
version 12.0
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname 3640
!
aaa new-model #启用AAA认证
aaa authentication login aaa_authentication group tacacs+ #定义使用tacacs+协议的,名为aaa_authentication的login认证
aaa authorization exec aaa_authorization group tacacs+ #定义使用tacacs+协议的,名为aaa_authorization的exec授权
aaa accounting exec aaa_accounting start-stop group tacacs+ #定义使用tacacs+协议的,名为aaa_accouting的记帐,记录下exec的开始和结束
aaa accounting commands 0 aaa_accounting start-stop group tacacs+ #定义使用tacacs+协议的,名为aaa_accouting的记帐,记录下特权级别为0的命令的输入
aaa accounting commands 1 aaa_accounting start-stop group tacacs+ #定义使用tacacs+协议的,名为aaa_accouting的记帐,记录下特权级别为1命令的输入
aaa accounting commands 15 aaa_accounting start-stop group tacacs+ #定义使用tacacs+协议的,名为aaa_accouting的记帐,记录下特权级别为15令的输入
enable secret 5 $1$svEj$oMMHlYpnubrL2lFePZqUR0 #enable密码,用于Console口登录认证
!
!
!
!
!
ip subnet-zero
no ip domain-lookup
!
cns event-service server
!
!
!
!
!
interface FastEthernet0/0
ip address 192.168.4.25 255.255.255.0
no ip directed-broadcast
duplex auto
speed auto
!
interface ATM1/0
no ip address
no ip directed-broadcast
shutdown
no atm ilmi-keepalive
!
ip classless
no ip http server
!
!
tacacs-server host 192.168.4.22 key test #定义tacacs+服务器,IP地址为192.168.4.22,key为test
!
line con 0
transport input none
line aux 0
line vty 0 4
authorization exec aaa_authorization #使用aaa_authorization这条授权方式对登录用户进行授权
accounting commands 0 aaa_accounting #使用aaa_accounting这条记帐方式对登录用户输入的所有特权级别为0的命令进行记录
accounting commands 1 aaa_accounting #使用aaa_accounting这条记帐方式对登录用户输入的所有特权级别为1的命令进行记录
accounting commands 15 aaa_accounting #使用aaa_accounting这条记帐方式对登录用户输入的所有特权级别为15的命令进行记录
accounting exec aaa_accounting #使用aaa_accounting这条记帐方式对登录用户exec进行记帐,记录下用户登录和退出的时间
login authentication aaa_authentication #使用aaa_authentication这条认证方式对用户的登录进行认证
!
end


ACS的配置,只需在相应用户组的Tacacs+属性中,选择Shell,并为用户授予15级别特权即可