通过CLI管理网络设备并设定访问权限(一)
本帖最后由 victor_huang 于 2014-8-18 08:37 编辑Cisco IOS软件CLI有2个访问级别
用户模式(特权级别1):提供最低的用户执行模式,在router>提示符下仅提供用户级别命令
特权模式(特权级别15):在router#提示符下包括所有enable级别命令
默认情况下,一个命令只能处于一个命令集里面,也就是说,比如分配了某个命令到等级5,那么权限等级低于等级5的用户将无法使用这个命令。但是高等级可以使用低等级所拥有的命令。
有2种方法为不同级别配置密码:
特权级别:enable secret level level password
特定级别用户:username name privilege level secret password
下面通过实验来验证和基于等级的命令分配。
步骤1:配置R1和R2的接口IP地址
R1(config)#int fa0/0
R1(config-if)#ip address 12.1.1.1 255.255.255.0
R2(config)#int fa0/0
R2(config-if)#ip address 12.1.1.2 255.255.255.0
步骤2:在R1配置用户数据库,并开启远程管理
R1(config)#username user1 password user1password
R1(config)#username user5 privilege 5 password user5password
R1(config)#username admin privilege 15 password adminpassword
R1(config)#line vty 0 4
R1(config-line)#login local
关于开启设备允许被telnet的一点细节:
line进程下,如果配置login,表示打开验证,也就是如果通过远程管理是需要输入密码的。
如果配置no login,表示登陆的时候不经过验证,那么就直接登陆到设备上。
如果配置login local ,表示登陆的时候需要通过本地数据进行验证和登陆。没有local关键词,则使用line下配置的密码登陆。
为了验证效果,可以尝试这么配置
line vty 0 4
privilege level 15 //当从VTY登陆,则赋权为15级,但是如果使用login local,则不生效。
password cisco
login local
步骤3:在R2上进行登陆测试。
测试user1
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user1
Password: user1password(密码输入不显示)
R1>
R1>show privilege
Current privilege level is 1
测试user5
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user5
Password: user5password
R1#show privilege 注意这里的提示符已经是 # 模式
Current privilege level is 5
测试admin用户
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: admin
Password: adminpassword
R1#show privilege
Current privilege level is 15
步骤4:测试对应等级的命令使用状况
依enable , configure terminal , interface命令为例
测试user1
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user1
Password:
R1>enable
% No password set
默认情况下,直接输入enable并回车,是尝试进入15级。 可以看出,要进入特权模式,是需要密码的,但是密码没配置,所以无法进入。那么关于其他命令更没办法输入了。
稍后讲解关于enable 密码进行等级转换的实验。
测试user5
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user5
Password:
R1#enable
% No password set
R1#
R1#config?
% Unrecognized command
可以看出5级用户进入后,其模式是#模式,但是并不是15级,输入enable,就是尝试将5级转换到15级,但是依旧因为密码问题无法进入15级。
输入config? 显示在此等级下是没有configure 这个命令的,那么配置interface就无望了。
测试admin
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: admin
Password:
R1#show privilege
Current privilege level is 15
R1#configure terminal
Enter configuration commands, one per line.End with CNTL/Z.
R1(config)#interface fastEthernet 0/1
可以看出15级是可以配置任何命令的
步骤5:将configure terminal和interface命令划分到 level 5 。
多关键词命令分配给特定用户,会将第一个关键词相关的命令都分配给相同级别,
比如configure terminal划分到 levle 5,那么configure 也要划分给level 5.
那么。如果先配置让1级的用户可以show ip interface brief , 后配置让5级的用户可以show ip ospf neighbor ,那么show这个关键词,就划分给5级了,1级就不能使用了。【一个命令只能处于一个命令集里面】
使用基于角色的CLI访问就可以解决这个问题,后续会在博客写出。
将configureterminal和interface命令划分给level 5
privilege exec level 5 configure //将exec模式下的configure命令划分到level 5
privilege exec level 5 configure terminal //将exec模式下的configure terminal 划分到level 5
privilege configure level 5 interface//将configure模式下的interface 划分到level 5
步骤6:测试user5的权限
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user5
Password: user5password
R1#show privilege
Current privilege level is 5
R1#configure terminal //可以使用configure terminal 了
Enter configuration commands, one per line.End with CNTL/Z.
R1(config)#interface fastEthernet 0/0//可以进入interface fastEthernet 0/0
R1(config-if)#ip addr?
% Unrecognized command
R1(config-if)#? //查看接口模式下可以使用的命令,发现不能配置IP地址
Interface configuration commands:
defaultSet a command to its defaults
exit Exit from interface configuration mode
help Description of the interactive help system
no Negate a command or set its defaults
interface下的命令子集是不能使用的,可以使用下面的命令进行配置,使得user5拥有interface下所有的命令使用权。
privilege configure all level 5 interface
//将configure模式下interface 及interface下的子集(all关键词)划分到 level 5
再次测试
R1(config-if)#ip address ?
A.B.C.DIP address
dhcp IP Address negotiated via DHCP
pool IP Address autoconfigured from a local DHCP pool
以上是关于使用基于用户和权限的设备管理,那么这条命令
enable secret level level password是对enable对应的等级配置密码
比如需要从当前1级进入5级,可以输入enable 5 ,如果配置了enabel 5的密码,那么输入正确的密码后就可以拥有相应的权限了。
以等级1的用户user1为例
R1上配置如下
R1(config)#enable secret level 5 enable5password
从R2测试
R2#telnet 12.1.1.1
Trying 12.1.1.1 ... Open
User Access Verification
Username: user1
Password: user1password
R1>show privilege
Current privilege level is 1
R1>enable 5
Password: enable5password
R1#show privilege
Current privilege level is 5
R1#conf terminal
Enter configuration commands, one per line.End with CNTL/Z.
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip address ?
A.B.C.DIP address
dhcp IP Address negotiated via DHCP
pool IP Address autoconfigured from a local DHCP pool
可以看到user1现在处于的等级是5,并且可以使用5级的命令。
===================================================
新浪博客: http://blog.sina.com.cn/routerospf1
新浪微博: http://weibo.com/u/2466447230
学习了-woniu2-。 感谢分享
页:
[1]