应用场景:
当您的网络中有不同的管理员角色,每个人的分工不同,能够操作,配置设备的命令有所区别,出于安全考虑,希望他们在网管设备时执行的每一条命令,或者是特定的一些高危,高敏感度的命令需要严格控制下,只有权限足够的用户才能执行,通过配合Tacacs+服务器上面预先定义的授权策略来检验用户对命令是否可执行,实现责任明确,风险可控,有这样的需求时就可以考虑采用命令授权功能。
通常该功能适用于高安全,高敏感性要求的行业,比如金融,政府,运营商行业。
功能简介:
AAA提供授权功能,交换机通常有0-15这16种权限级别划分,不同的级别对应的是能够管理,配置,查看的内容的不同,15级别的权限最高,而0级别的权限最低。处于安全的考虑,管理员希望在设备上所做的所有命令都需要经过统一的校验,以验证该用户的权限是否足够执行当前的这个命令,每条命令都需要经过授权,成功能允许执行,否则命令将执行失败。每个级别的权限都对应的着一套该级别所包含的命令列表,这样该级别的用户只能执行该列表所包含的命令,以及比他级别低的所有命令,但是无法执行比他高级别的命令,如果要执行需要做命令授权,比如show
命令是1级别的命令,那么这样级别1-15的用户都是可以执行的,但是delete命令是15级别的命令,这样只有15级别的用户才有这个权限执行,如果是其他级别,比如一个级别5的用户想执行,那么需要经过命令授权,通过预先在Tacacs+服务器上面定义的授权策略来判断,看是否将这个delete命令赋予了5级别的用户,如果有定义那么执行成功,如果没有相应的授权定义策略,那么就执行失败。
通过配合Tacacs+服务器定义每个级别命令的授权策略,这样就能控制每个用户能够进行的管理行为,比如超级管理员,还是一般管理员,还是普通的查看用户他们的工作性质与对网络的负责分工不同,需要有区别的对待,避免一般用户执行了一些高危的操作或者对配置进行了随意的更改,导致网络事故发生。
针对0-15级别的权限说明,目前我司实现的机制如下:
level 0:最低的级别(Ruijie>这样的模式),只能执行ping,traceroute的操作,以及enable privilege提升自己的权限到一个更高的等级,否则level
0的用户当前连show run都无法执行;
level 1:普通用户模式(Ruijie>这样的模式),相比level 0用户他的权限就是多了一个show的命令,可以查看设备当前的一些运行,配置信息,但是无法进行任何功能配置;
level 2-14:一般管理员模式(Ruijie#这样的模式),这个模式的权限有了较大的提升,可以进行大部分功能的配置,查看,修改等,但是无法执行一些高危操作,比如删除,修改,重命名文件,重启设备,配置用户名&密码等;
level 15:超级管理员模式(Ruijie#这样的模式),最高权限,可以执行所有命令,没有任何限制。
最后说明下,命令授权只能采用Tacacs+协议来实现。
一、组网需求
telnet登陆设备,采用aaa认证,只给用户授权show、ping 的命令,不能修改设备的配置。
二、组网拓扑
三、配置要点
1、配置基础路由、aaa登陆认证
2、配置登陆用户的shell等级授权
3、配置命令授权列表
4、tacacs服务器的配置
四、配置步骤
1、配置基础路由、aaa登陆认证
参考 登陆认证(配置参考
常用功能配置--->安全--->AAA--->登陆认证)
2、配置登陆用户的shell等级授权
注意:
若要授权给用户的show命令包含show run,那么给该用户授权的shell等级必须为15级,否则本身shell的配置命令里面就没有show run,设备会提示输入的命令有错误。
具体配置请 参考 shell授权(配置参考 常用功能配置--->安全--->AAA--->授权--->登陆授权)
3、配置命令授权列表
注意:
1)我司设备配置命令授权列表需要分别配置0-15级别的命令授权列表
2)默认在line vty 下有调用default的命令授权列表,故配置好的default的命令授权列表在line
vty 下无需再次调用
3)若配置的命令授权列表为非default,则需要在line
vty 下调用该命令授权列表
Ruijie>enable
Ruijie#config ter
Ruijie(config)#aaa
authorization commands 0 default group tacacs+ local
----->配置名为default的命令授权列表,优先采用tacacs服务器授权,若tacacs服务器不可达采用本地授权
Ruijie(config)#aaa
authorization commands 1 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 2 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 3 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 4 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 5 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 6 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 7 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 8 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 9 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 10 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 11 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 12 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 13 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 14 default group tacacs+ local
Ruijie(config)#aaa
authorization commands 15 default group tacacs+ local
4、tacacs服务器的配置
如下示例为思科ACS 4.0的配置
1)添加一个用户,并指定用户组
a、单击主页面 User Setup 输入用户名
tacacs 单击 Add/Edit添加用户
b、配置该用户的密码,并指定该用户所属的用户组,单击
submit 提交配置。
注意:
ACS 4.0 命令授权是基于用户组的,故需要把该用户添加到单独的一个用户组
2)配置ACS上命令授权列表
a、进入ACS命令授权列表配置
单击主页面 SHared Profile
Components 然后 单击 Shell Command Authorization Sets
b、单击Add 添加命令授权列表
输入命令授权列表名字以及需要授权的命令
3)配置用户组使用的授权列表
a、进入用户组配置
单击主页面 Group Setup 选择该用户所在的组,单击
Edit Settings进入用户组设置
b、配置该用户组的命令授权列表,配置完成后 单击
Submit + Restart 提交配置
五、功能验证
PC通过telnet登陆设备,若只能进行show、ping的操作,其他配置命令无法执行,则
aaa命令授权配置正确