首页 运维 网络学院 查看内容

Cisco设备配置AAA认证!

2011-8-24 10:48 893 0

摘要: 实验设备: cisco 3640路由器1台,PC一台,Console线缆一根,交叉线一根 实验拓扑: 实验过程: 第一步:通过console线缆,使用超级终端或者SecureCRT登录路由...
关键词: enable authen AAA 认证 Mar 配置 密码 authentication 2028066283 登录

实验设备: cisco 3640路由器1台,PC一台,Console线缆一根,交叉线一根 实验拓扑: 实验过程: 第一步:通过console线缆,使用超级终端或者SecureCRT登录路由器,完成基本配置,同时将交叉线连接到路由器E1/0,t在PC的接口上配置IP为192.168.10.1,掩码255.255.255.0 Router>enable Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#no ip domain-lookup Router(config)#line console 0 Router(config-line)#no exec-t Router(config-line)#logg syn 3640(config)#host R3640 R3640(config)#int e1/0 R3640(config-if)#ip add 192.168.10.3 255.255.255.0 R3640(config-if)#no sh R3640(config-if)#end *Mar 1 00:02:02.499: %SYS-5-CONFIG_I: Configured from console by console R3640#ping 192.168 *Mar 1 00:02:03.659: %LINK-3-UPDOWN: Interface Ethernet1/0, changed state to up *Mar 1 00:02:04.659: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet1/0, changed state to up R3640#ping 192.168.10.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.10.1, timeout is 2 seconds: .!!!! Success rate is 80 percent (4/5), round-trip min/avg/max = 12/32/44 ms 第二步:启用AAA,并配置登录验证为local R3640#conf t Enter configuration commands, one per line. End with CNTL/Z. R3640(config)#aaa ? new-model Enable NEW access control commands and functions.(Disables OLD commands.) R3640(config)#aaa new-model 全局启用AAA功能 R3640(config)#aaa authentication login ? 当用户登录时启用AAA认证功能,并且定义认证时调用的名字是默认的”default”,还是自己随便定义1个 WORD Named authentication list. default The default authentication list. R3640(config)#aaa authentication login default ? 指定用哪种认证方式 enable Use enable password for authentication. 使用特权密码 group Use Server-group 使用Radius或者Tacacs+协议 krb5 Use Kerberos 5 authentication. 使用Kerberos krb5-telnet Allow logins only if already authenticated via Kerberos V Telnet. line Use line password for authentication. 使用线路认证方式 local Use local username authentication. 使用本地认证方式,需配置用户名和密码 local-case Use case-sensitive local username authentication. none NO authentication. 不做认证 配置当用户登录设备时,使用aaa本地登录认证方式,认证调用的名字为default,认证方式为local R3640(config)#aaa authentication login default local 配 置本地登录时,使用的用户名和密码。密码我配置的为经过MD5加密的secret密码。安全性高,在show running-config显示的是密文的。不建议配置明文的用户名和密码如(R3640(config)#username admin password admin) 密码建议配置复杂一点,要有大小写,特殊字符,和数字,长度大于8位以上。如:P@ssw0rd R3640(config)#username nousername secret nopassword 第三步:启用认证调试,观察debug 现象 R3640#debug aaa authentication AAA Authentication debugging is on R3640# 第四步:如图1所示,在PC上使用telnet,远程登录路由器 第 五步:如图2所示,输入刚才再配置,登录的用户名nousername 和密码nopassword。输入的密码是不会显示的,不然怎么叫密码了,登录成功之后,在当前路由器的用户模式。说明我们已经完成了aaa的认证功能, 并没有配置VTY的密码,而是使用aaa完成的认证 第六步:如图3所示,输入enable,尝试进入特权模式,路由器提示如下认证错误。为什么了? 第七步:当输入enable,尝试登录时,查看路由器的上的debug现象 R3640# *Mar 1 00:38:49.347: AAA: parse name=tty130 idb type=-1 tty=-1 *Mar 1 00:38:49.347: AAA: name=tty130 flags=0x11 type=5 shelf=0 slot=0 adapter=0 port=130 channel=0 *Mar 1 00:38:49.347: AAA/MEMORY: create_user (0x637810BC) user='nousername'(登录的用户名和密码) ruser='NULL' ds0=0 port='tty130' rem_addr='192.168.10.1'(PC IP地址) authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0) *Mar 1 00:38:49.351: AAA/AUTHEN/START (509980843): port='tty130' list='' action=LOGIN service=ENABLE 输入enable (没有enable密码) *Mar 1 00:38:49.351: AAA/AUTHEN/START (509980843): non-console enable - default to enable password *Mar 1 00:38:49.351: AAA/AUTHEN/START (509980843): Method=ENABLE R3640# *Mar 1 00:38:49.351: AAA/AUTHEN(509980843): can't find any passwords 没有发现enable 密码 *Mar 1 00:38:49.351: AAA/AUTHEN(509980843): Status=ERROR (认证状态发生错误) *Mar 1 00:38:49.351: AAA/AUTHEN/START (509980843): no methods left to try *Mar 1 00:38:49.351: AAA/AUTHEN(509980843): Status=ERROR *Mar 1 00:38:49.351: AAA/AUTHEN/START (509980843): failed to authenticate 认证失败,原因是没有配置enable密码 *Mar 1 00:38:49.355: AAA/MEMORY: free_user (0x637810BC) user='nousername' ruser='NULL' port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0) R3640# 第 七步:如果要想远程登录能进入到特权模式,完成配置,还需要在路由器上配置enable 密码。如果希望让某个大虾,只活动用户模式下,那暂且可以不配,但是没有enable那不是不科学的,不敢保证,永远也不需要远程调试路由器,如果需要调 试,那肯定就需要enable密码才可以进入,如图4所示, 第八步:如图5所示,输入刚配置的enable secret密码,可以登录到特权模式。 思考上图中为什么出现以下错误提示: R3640>enable Password: % Access denied R3640>enable Password: % Password: timeout expired! % Error in authentication. 输入enable密码,进入特权模式时,authentication debug 消息 *Mar 1 00:51:26.719: AAA/MEMORY: free_user (0x63D5B984) user='NULL' ruser='NULL' port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0) R3640# *Mar 1 00:51:30.667: AAA: parse name=tty130 idb type=-1 tty=-1 *Mar 1 00:51:30.667: AAA: name=tty130 flags=0x11 type=5 shelf=0 slot=0 adapter=0 port=130 channel=0 *Mar 1 00:51:30.667: AAA/MEMORY: create_user (0x63D5B984) user='nousername' ruser='NULL' ds0=0 port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0) *Mar 1 00:51:30.667: AAA/AUTHEN/START (2028066283): port='tty130' list='' action=LOGIN service=ENABLE *Mar 1 00:51:30.671: AAA/AUTHEN/START (2028066283): non-console enable - default to enable password *Mar 1 00:51:30.671: AAA/AUTHEN/START (2028066283): Method=ENABLE R3640# *Mar 1 00:51:30.671: AAA/AUTHEN(2028066283): Status=GETPASS 认证通过 R3640# *Mar 1 00:51:37.599: AAA/AUTHEN/CONT (2028066283): continue_login (user='(undef)') *Mar 1 00:51:37.599: AAA/AUTHEN(2028066283): Status=GETPASS *Mar 1 00:51:37.599: AAA/AUTHEN/CONT (2028066283): Method=ENABLE *Mar 1 00:51:37.623: AAA/AUTHEN(2028066283): Status=PASS *Mar 1 00:51:37.623: AAA/MEMORY: free_user (0x63D5B984) user='NULL' ruser='NULL' port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0) R3640# 第九步:刚才我们验证的是远程登录,再来验证一下,本地登录认证这种方式,从console接口能否登陆,如图6所示:提示需要,用户名和密码 第十步:输入正确的用户名和密码 *Mar 1 00:51:26.719: AAA/MEMORY: free_user (0x63D5B984) user='NULL' ruser='NULL' port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0) R3640# *Mar 1 00:51:30.667: AAA: parse name=tty130 idb type=-1 tty=-1 *Mar 1 00:51:30.667: AAA: name=tty130 flags=0x11 type=5 shelf=0 slot=0 adapter=0 port=130 channel=0 *Mar 1 00:51:30.667: AAA/MEMORY: create_user (0x63D5B984) user='nousername' ruser='NULL' ds0=0 port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0) *Mar 1 00:51:30.667: AAA/AUTHEN/START (2028066283): port='tty130' list='' action=LOGIN service=ENABLE *Mar 1 00:51:30.671: AAA/AUTHEN/START (2028066283): non-console enable - default to enable password *Mar 1 00:51:30.671: AAA/AUTHEN/START (2028066283): Method=ENABLE R3640# *Mar 1 00:51:30.671: AAA/AUTHEN(2028066283): Status=GETPASS R3640# *Mar 1 00:51:37.599: AAA/AUTHEN/CONT (2028066283): continue_login (user='(undef)') *Mar 1 00:51:37.599: AAA/AUTHEN(2028066283): Status=GETPASS *Mar 1 00:51:37.599: AAA/AUTHEN/CONT (2028066283): Method=ENABLE *Mar 1 00:51:37.623: AAA/AUTHEN(2028066283): Status=PASS *Mar 1 00:51:37.623: AAA/MEMORY: free_user (0x63D5B984) user='NULL' ruser='NULL' port='tty130' rem_addr='192.168.10.1' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0) 进入特权模式之后,用户的级别是在15,思考,在用户模式级别是多少?通过什么命令可以查看到你当前所处的模式,是那个级别? 总结: 本地登录认证配置有两种方法: 第一种:如图7所示 第二种:如图8所示 第 二种配置方式,认证调用的名字是自定义的,那就需要在console和VTY接口下,调用才可以。第一种配置在命令上会少一些,如果配置登录认证名字为默 认“default”,是不需要在VTY和Console,再次调用一下,因为在执行认证就会去查询本地名称default,如果配置认证是名字为自定义 的,如”hackerjx“,就必须到VTY和Console执行调用才可以认证通过。不然这个配置,当从console登录根本就没有对console 做安全认证。 但是这两配置AAA本地的认证方法,没有必要同时在一台设备上配置,大家可以根据自己的情况来配置。
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部