最近遇到一个客户aaa没有正确的配置,导致自己被关在设备外面的case;由于是生产环境的多交换机堆叠单元,重启忽略配置也是不允许的,且必须远程操作解决,无疑提升了解决问题的难度。

多次尝试后发现通过cisco acs上的一些设置可以绕过授权进入设备,分享上来和大家一起研究下,这种场景类似于juniper srx防火墙的本地映射机制,但思科应该没有文档说明过类似情况。

设备配置如下

aaa authentication login noauth local none

aaa authorization console

aaa authorization exec default group radius

 

line con 0

login authentication noauth

line aux 0

logging synchronous

line vty 0 4

login authentication noauth

end

以上配置认证使用本地数据库,授权使用radius server,且授权没有配置逃生通道(坑爹)

telnet无法登录,结果提示reject:输入本地用户和密码提示拒绝

输入错误的用户提示授权失败:Authorization Failed


输入正确的用户(local)错误的密码显示认证失败: Authentication Failed


首先在acs中添加认证server  选中标签Network Configuration添加server


我们先添加个server 点击add entry 标签


注意ip地址必须是本地网卡的地址,然后必须和交换机上配置的radius server地址一致,key可以随意填写

 

其次我们添加交换机作为radius client

Shared Secret必须添加和交换机上实际配置匹配的密钥


然后在user setup中选择添加用户


注意添加的用户名必须和你交换机本地添加的一样,密码处须填写cisco然后submit

 

至此思科ACS设置已经完成了

使用telnet登录测试结果如下

username:

password:


R3>enable

Password

R3#

注意此处登录的用户名密码为本地Enable,密码也为本地设置的enable 密码;至此能够正常进入本地系统