当有位大虾,试图通过 console线缆来登录路由器或者交换机,我们怎么保证该用户登录的是安全的,它是合法的管理员,而不是入侵者,有的人说,只需要设置Console接 口登录密码,以及特权模式密码。如果这位大虾,要通过网络访问,如(SSH,Telnet),还需要设置远程登录的密码。这样一来,这位大虾本地,和远程 管理和调试网络设备,需要记忆多个密码。而且你这个密码不一定是安全的。
那为什么要使用AAA,而不是只配置一个密码解决问题了。使用 AAA的好处是什么?
1,配置简单,管理方便
2,安全性高,用户名和密码等,可以通过加密之后在网络中传输,防止嗅探和欺骗
3,用户记忆少,操作灵活,AAA可以与其他的技术综合使用,如PPP认证由AAA完成等
而配置密码,只是一个单一的安全性。
如何在Cisco设备上来配置AAA的认证? 
实验设备:
cisco 3640路由器1台,PC一台,Console线缆一根,交叉线一根
实验拓扑:

实验过程:
第一步:通过console线缆,使用超级终端或者 SecureCRT登录路由器,完成基本配置,同时将交叉线连接到路由器E1/0,t在PC的接口上配置IP为192.168.1.243,掩码 255.255.255.0
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 
Router(config)#host R1 
R1(config)#int e1/0 
R1(config-if)#ip add 192.168.1.244 255.255.255.0 
R1(config-if)#no sh 
R1(config-if)#end 
*Mar  1 00:02:02.499: %SYS-5-CONFIG_I: Configured from console by console 
R1#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 
R1#ping 192.168.1.243
Type escape sequence to abort. 
Sending 5, 100-byte ICMP Echos to 192.168.243, timeout is 2 seconds: 
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 12/32/44 ms

第二步:启用AAA,并配置登录验证为local
R1#conf t 
Enter configuration commands, one per line.  End with CNTL/Z. 
R1(config)#aaa ?    
  new-model  Enable NEW access control commands and functions.(Disables OLD  commands.) 
R1(config)#aaa new-model 全局启用AAA功能 
R1(config)#aaa authentication login ? 当用户登录时启用AAA认证功能,并且定义认证时调用的名字是默认的”default”,还是自己随便定义1个 
  WORD     Named authentication list. 
  default  The default authentication list. 
R1(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
R1(config)#aaa authentication login default local
配 置本地登录时,使用的用户名和密码。密码我配置的为经过MD5加密的secret密码。安全性高,在show running-config显示的是密文的。不建议配置明文的用户名和密码如(R1(config)#username admin password admin)
密码建议配置复杂一点,要有大小写,特殊字符,和数字,长度大于8位以上。如:P@ssw0rd 
R1(config)#username nousername secret nopassword
第三步:启用认证调试,观察debug 现象
R1#debug aaa authentication 
AAA Authentication debugging is on 
R1#
第四步:如图1所示,在PC上使用telnet,远程登录路由器


 
第 五步:如图2所示,输入刚才再配置,登录的用户名cisco 和密码cisco。输入的密码是不会显示的,不然怎么叫密码了,登录成功之后,在当前路由器的用户模式。说明我们已经完成了aaa的认证功能, 并没有配置VTY的密码,而是使用aaa完成的认证
 
第六步:如图3所示,输入enable,尝试进入特权模式,路由器提示如下认证错误。为什么了?
 
第七步:当输入enable,尝试登录时,查看路由器的上的debug现象
R1#
*Jul 16 08:48:50.779: AAA: parse name=tty2 idb type=-1 tty=-1
*Jul 16 08:48:50.779: AAA: name=tty2 flags=0x11 type=5 shelf=0 slot=0 adapter=0 port=2 channel=0
*Jul 16 08:48:50.783: AAA/MEMORY: create_user (0x6503A5AC) user='cisco'(登录的用户名和密码) ruser='NULL' ds0=0 port='tty2' rem_addr='192.168.1.243'(PC IP地址) authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0)
*Jul 16 08:48:50.787: AAA/AUTHEN/START (1080166161): port='tty2' list='' action=LOGIN service=ENABLE  输入enable                      
*Jul 16 08:48:50.787: AAA/AUTHEN/START (1080166161): non-console enable - default to enable password (没有enable密码)
*Jul 16 08:48:50.791: AAA/AUTHEN/START (1080166161): Method=ENABLE
R1#
*Jul 16 08:48:50.791: AAA/AUTHEN(1080166161): can't find any passwords (没有发现enable密码)
*Jul 16 08:48:50.791: AAA/AUTHEN(1080166161): Status=ERROR  (认证状态发生错误)
*Jul 16 08:48:50.791: AAA/AUTHEN/START (1080166161): no methods left to try
*Jul 16 08:48:50.791: AAA/AUTHEN(1080166161): Status=ERROR
*Jul 16 08:48:50.791: AAA/AUTHEN/START (1080166161): failed to authenticate 认证失败,原因是没有配置enable密码 
*Jul 16 08:48:50.791: AAA/MEMORY: free_user (0x6503A5AC) user='cisco' ruser='NULL' port='tty2' rem_addr='192.168.1.243' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0)

第 七步:如果要想远程登录能进入到特权模式,完成配置,还需要在路由器上配置enable 密码。如果希望让某个大虾,只活动用户模式下,那暂且可以不配,但是没有enable那不是不科学的,不敢保证,永远也不需要远程调试路由器,如果需要调 试,那肯定就需要enable密码才可以进入,如图4所示,
 
第八步:如图5所示,输入刚配置的enable secret密码,可以登录到特权模式。
 
输入enable密码,进入特权模式时,authentication debug 消息
*Jul 16 09:02:17.179: AAA: parse name=tty2 idb type=-1 tty=-1
*Jul 16 09:02:17.179: AAA: name=tty2 flags=0x11 type=5 shelf=0 slot=0 adapter=0 port=2 channel=0
*Jul 16 09:02:17.179: AAA/MEMORY: create_user (0x65D3CA4C) user='cisco' ruser='NULL' ds0=0 port='tty2' rem_addr='192.168.1.243' authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0)
*Jul 16 09:02:17.179: AAA/AUTHEN/START (3413917619): port='tty2' list='' action=LOGIN service=ENABLE
*Jul 16 09:02:17.179: AAA/AUTHEN/START (3413917619): non-console enable - default to enable password
*Jul 16 09:02:17.179: AAA/AUTHEN/START (3413917619): Method=ENABLE
R1#
*Jul 16 09:02:17.179: AAA/AUTHEN(3413917619): Status=GETPASS  认证通过 
R1#
*Jul 16 09:02:23.035: AAA/AUTHEN/CONT (3413917619): continue_login (user='(undef)')
*Jul 16 09:02:23.035: AAA/AUTHEN(3413917619): Status=GETPASS
*Jul 16 09:02:23.035: AAA/AUTHEN/CONT (3413917619): Method=ENABLE
*Jul 16 09:02:23.051: AAA/AUTHEN(3413917619): Status=PASS
*Jul 16 09:02:23.051: AAA/MEMORY: free_user (0x65D3CA4C) user='NULL' ruser='NULL' port='tty2' rem_addr='192.168.1.243' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0)
第九步:刚才我们验证的是远程登录,再来验证一下,本地登录认证这种方式,从console接口能否登陆,如图6所示:提示需要,用户名和密码

第十步:输入正确的用户名和密码
*Jul 16 09:20:29.983: AAA: parse name=tty0 idb type=-1 tty=-1
*Jul 16 09:20:29.983: AAA: name=tty0 flags=0x11 type=4 shelf=0 slot=0 adapter=0 port=0 channel=0
*Jul 16 09:20:29.983: AAA/MEMORY: create_user (0x6503A7E0) user='cisco' ruser='NULL' ds0=0 port='tty0' rem_addr='async' authen_type=ASCII service=ENABLE priv=15 initial_task_id='0', vrf= (id=0)
*Jul 16 09:20:29.983: AAA/AUTHEN/START (108160739): port='tty0' list='' action=LOGIN service=ENABLE
*Jul 16 09:20:29.983: AAA/AUTHEN/START (108160739): console enable - default to enable password (if any)
*Jul 16 09:20:29.983: AAA/AUTHEN/START (108160739): Method=ENABLE
R1#
*Jul 16 09:20:29.983: AAA/AUTHEN(108160739): Status=GETPASS
R1#
*Jul 16 09:20:31.039: AAA/AUTHEN/CONT (108160739): continue_login (user='(undef)')
*Jul 16 09:20:31.039: AAA/AUTHEN(108160739): Status=GETPASS
*Jul 16 09:20:31.043: AAA/AUTHEN/CONT (108160739): Method=ENABLE
*Jul 16 09:20:31.075: AAA/AUTHEN(108160739): Status=PASS
*Jul 16 09:20:31.075: AAA/MEMORY: free_user (0x6503A7E0) user='NULL' ruser='NULL' port='tty0' rem_addr='async' authen_type=ASCII service=ENABLE priv=15 vrf= (id=0)
进入特权模式之后,用户的级别是在15,思考,在用户模式级别是多少?通过什么命令可以查看到你当前所处的模式,是那个级别?

总结:
本地登录认证配置有两种方法:
第一种:
R1#conf t
R1(config)#aaa new-model 
R1(config)#aaa authentication login default local
R1(config)#username cisco password cisco
R1(config)#enable password cisco

R1(config)#line vty 0 4 
R1(config)#login authentication default

第二种:
R1(config)#username cisco secret cisco
R1(config)#aaa new-model 
R1(config)#aaa authentication login CISCO local
R1(config)#line console 0
R1(config-line)#login authentication CISCO
R1(config-line)#line vty 0 4
R1(config-line)#login authentication CISCO

第二种配置方式,认证调用的名字是自定义的,那就需要在console和VTY接口下,调用才可以。第一种配置在命令上会少一些,如果配置登录认证名字为默 认“default”,是不需要在VTY和Console,再次调用一下,因为在执行认证就会去查询本地名称default,如果配置认证是名字为自定义 的,如”CISCO“,就必须到VTY和Console执行调用才可以认证通过。不然这个配置,当从console登录根本就没有对console 做安全认证。
但是这两配置AAA本地的认证方法,没有必要同时在一台设备上配置,大家可以根据自己的情况来配置

Lab AAA-本地认证相关推荐

  1. 配置用户通过Telnet登录设备的身份认证(AAA本地认证)

    背景信息 用户通过Telnet登录设备时,设备上必须配置验证方式,否则用户无法成功登录设备.设备支持不认证.密码认证和AAA认证三种用户界面的验证方式,其中AAA认证方式安全性最高. 采用AAA本地认 ...

  2. AAA:认证、审计、授权

    AAA:认证.审计.授权 AAA是一个能够处理用户访问请求的服务器程序,提供验证授权以及帐户服务,主要目的是管理用户访问网络服务器,对具有访问权的用户提供服务 认证 概念:验证用户是否可以获得网络访问 ...

  3. H3C、Huawei、Cisco网络设备AAA TACACS认证配置白皮书

    TACACS技术白皮书 摘要:TACACS是实现AAA功能的一种安全协议,主要是通过TACACS客户端与TACACS服务器通信来实现多种用户的AAA功能. HWTACACS采用TCP协议承载报文,TC ...

  4. ASA防火墙之telnet的AAA穿越认证配置实例

    telnet的AAA穿越认证 本篇继续介绍ASA防火墙,主要讲解网络穿越ASA防火墙进行访问,并进行AAA认证,才可以正常的访问通信. 实验拓扑 环境(ASA防火墙,ACS服务器,路由器) 需求: 为 ...

  5. 代码角度理解SGX的认证机制(一):本地认证

    一.基本概念 1.认证(attestation): 是指一个enlave中的程序向其他enclave证明其完整性和真实性的过程.intel SGX认证即是一个在SGX平台上运行的ISV enclave ...

  6. 企业AAA信用等级认证好处

    企业AAA信用等级认证好处 信用时代已到来!为加快社会信用体系的建设,企业信用评级作为开展信用评价的政策措施已经在全国各地施行,企业信用评级不仅反映了企业履行商业合约和承揽项目的能力,而且表现了企业经 ...

  7. windows认证之本地认证

    目录 1.window认证流程 2.LM Hash和NTLMHash 2.1LM Hash原理 2.2.NTLM Hash原理 windows认证包括本地认证.网络认证和域认证三个部分windows认 ...

  8. Windows本地认证和NTLM认证

    目录 SSP&SSPI Windows认证方式 Windows本地认证 NTLM认证 NTLM v1和NTLM v2的区别 LmCompatibilityLevel

  9. FTP(文件传输协议)及实验搭建详解(本地认证,虚拟用户,加密传输,限制登陆)

    文章目录 FTP传输协议及实验搭建详解 一.引子 二.FTP的原理和基本概念 三.FTP服务器实验构建(基础测试,本地认证,虚拟用户,加密传输,限制登陆) FTP传输协议及实验搭建详解 一.引子 终于 ...

最新文章

  1. Python-文件和数据格式化
  2. OSPF如何选举DR/BDR规则
  3. jquery1.43源码分析之工具方法
  4. 【Spring】Resource接口:ClassPathResource
  5. 每天一道LeetCode-----找到有多少个组合加起来和是n,每个组合的数字只能是1或者2
  6. linux快速复制大量小文件方法
  7. CSS基础(part18)--溢出的文字省略号显示
  8. java excel处理框架,Java三方—-excel框架之POI的使用一
  9. matlab矩阵 0,matlab zeros初始化为0矩阵
  10. nginx server location
  11. 插入排序 php,PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
  12. Oracle 索引的失效检查
  13. Invalid use of SingleClientConnManager: connection still allocated. 解决方法
  14. 神威太湖之光超级计算机搭载了40960,神威·太湖之光超级计算机上实现了千万核超大规模并行计算...
  15. 定量库存控制模型_定量订货库存管理模型分析及应用
  16. 遥感图像场景分类方法总结
  17. win32 python查找文字指定格式 win32com 定位word开始结束 相当于发送快捷键
  18. 多张照片怎么做成动图
  19. 学习 | 遗传力与田间试验设计
  20. 【StyleGAN代码学习】StyleGAN模型架构

热门文章

  1. k8s部署jenkins和Pod始终为pending状态“persistentvolume-controller no persistent volumes available.....”解决办法
  2. IOS中删除文件和文件夹
  3. 论知乎是如何评论博客园与CSDN的!!
  4. 2年Java软件工程师的觉悟
  5. 刷脸支付服务商注定掀起一场商业革命
  6. 条形码的打印,pdf打印条形码
  7. 英语演讲稿关于计算机小知识,英语演讲稿25篇
  8. 烧写APM板的bootloader
  9. POJ 3348 Cows(二维凸包)
  10. 计算机毕业设计springboot通用项目的项目管理系统