大家好,又见面了,我是你们的朋友全栈君。
一、 目的
1、掌握AAA认证的工作原理。
2、掌握使用Cisco Secure ACS服务器实现AAA认证授权的方法。
二、网络拓扑
三、认证部分实验要求
配置和测试本地和基于认证服务器的AAA认证。
1、在R1上创建本地帐号,配置本地AAA认证登录console和VTY。
2、配置和测试本地和基于认证服务器的AAA认证。
1、在R1上创建本地帐号(用户名:Admin1,密码:admin1pa55),配置通过本地AAA认证登录console和VTY。
2、配置R2实现基于TACACS+认证服务器的认证。TACACS+认证服务器配置如下:
客户端—R2;key—tacacspa55
用户名—Admin2;密码—admin2pa55
3、配置R3实现基于RADIUS认证服务器的认证。RADIUS认证服务器配置如下:
客户端—R2;key—radiuspa55
用户名—Admin3;密码—admin3pa55
四、实验步骤
1、基础配置
(设备enable密码为:ciscoenpa55,console密码:ciscoconpa55,vty密码:ciscovtypa55)
1. 根据拓扑图搭建网络;
2. 根据地址表配置各设备的IP地址;
3. 配置RIPv2路由协议,实现全网连通;
2、测试基本的网络连接
1. PC-A ping PC-C
2. PC-B ping PC-C
3. PC-A ping PC-B
3、在R1上为访问Console/VTY配置本地AAA认证
方法一:
R1(config)#aaa new-model //全局启用AAA
R1(config)#aaa authentication login default local //配置当用户登录设备时,使用AAA本地登录认证方式,认证调用默认列表default,认证方式为local。
备注:
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 //使用特权密码认证,此时Telnet
远程登录时若需要提供用户名则随便输入一个用户
名(一般不需要),用enable密码即可登录成功.
group Use Server-group //使用Radius或者Tacacs+协议
krb5 Use Kerberos 5 authentication //使用Kerberos
line Use line password for authentication //使用线路认证方式
local Use local username authentication //本地认证方式,需配用户名和密码
none NO authentication //不做认证
R1(config)#username Admin1 secret admin1pa55
//配置本地登录时,使用的用户名和密码。密码为经过MD5加密的secret密码。安全性高,在show running-config显示的是密文。不建议配置明文的用户名和密码如(R1(config)#username admin password admin)
密码建议配置复杂一点,要有大小写,特殊字符,和数字,长度大于8位以上。如:P@ssw0rd
R1(config)#enable secret cisco
命令总结:
R1(config)#aaa new-model
R1(config)#aaa authentication login default local
R1(config)#username Admin1 secret admin1pa55
R1(config)#enable secret cisco
测试:
通过console和telnet远程登录,验证认证方式。
方法二:自定义认证列表调用方法
R1(config)#aaa new-model
R1(config)#aaa authentication login net14 local
R1(config)#username Admin1 secret admin1pa55
R1(config)#enable secret cisco
R1(config)#line console 0
Router(config-line)#login authentication net14 (必须配置)
R1(config)#line vty 0 4
R1(config-line)#login authentication net14
第二种方法,认证调用的认证列表是自定义的,那就需要在console和VTY接口下,调用才可以。第一种配置在命令上会少一些,如果配置登录认证名字为默认“default”,是不需要在VTY和Console再次调用,因为在执行认证就会去查询本地名称default,如果配置认证列表为自定义的,如”net12“,就必须到VTY和Console执行调用才可以认证通过。否则,当从console登录时不做安全认证。
4、在R2上配置使用TACACS+认证服务器的AAA认证
R2(config)#username Admin secret adminpa55
R2(config)#tacacs-server host 192.168.2.2 //指定tacacs+服务器地址
R2(config)#tacacs-server key tacacspa55 //此key是在tacacs服务器上配置的
R2(config)#aaa new-model
R2(config)#aaa authentication login default group tacacs+ local
R2(config)#line console 0//对终端控制端口进行参数设置
R2(config-line)#login authentication default
R2(config)#line vty 0 4//设置最大并发管理登录数,这里为0-4共5个
R2(config-line)#login authentication default
测试时,应该使用tacacs+里面的Admin2 和 admin2pa55登录。
5、在R3上配置使用RADIUS认证服务器的AAA认证
R3(config)#username Admin secret adminpa55
查看RADIUS认证服务器上的用户
R3(config)#radius-server host 192.168.3.2
R3(config)#radius-server key radiuspa55
R3(config)#aaa new-model
R3(config)#aaa authentication login default group radius local
R3(config)#line con 0
R3(config-line)#login authentication default
R2(config)#line vty 0 4
R2(config-line)#login authentication default
6、AAA授权
实现方法一:与AAA无关,安全性较低
第一步:配置远程登陆的用户名和密码。这里配置两个不同的用户名,并且两个用户的级别不同,目的使不同的用户名和密码登陆后进入路由器不同的工作模式下。要求密码在show running-config中,以密文的方式来显示,防止其他用户窥屏。
R1 (config)#username cisco secret cisco //配置一个普通的用户,该用户的级别是默认的1(用户级别取值0~15,最大是15),使用该用户名,远程登陆之后,只能在用户模式下,并且不对该用户泄漏enable密码,该用户只有对路由器的工作状态监视查看。
R1(config)#username net12 privilege 15 secret cisconet12 //配置一个高级别的用户,该用户的级别设置为15,即使用本用户和密码远程登陆到路由器能直接进入到特权模式。
R1(config)#line vty 0 15
R1(config-line)#login local
可以尝试不同级别用户:
R1 (config)#username user0 privilege 0 secret user0
R1 (config)#username user6 privilege 6 secret user6
R1 (config)#username user10 privilege 10 secret user10
(通过查看不同用户可以使用的命令理解权限级别,方法:进入用户模式输入“?”)
第二步:Telnet远程登陆测试结果。登录成功后可在用户模式下输入show privilege命令查看用户安全级别。
实现方法二,通过AAA实现,安全级别要高
定义用户:
R1 (config)#username user10 privilege 10 secret ciscouser10
R1 (config)#username user6 privilege 6 secret ciscouser6
R1(config)#aaa new-model //开启AAA
R1(config)#aaa authentication login default local //配置认证列表
定义授权列表:
R1(config)#aaa authorization ?
auth-proxy For Authentication Proxy Services
cache For AAA cache configuration
commands For exec (shell) commands.
config-commands For configuration mode commands.
configuration For downloading configurations from AAA server
console For enabling console authorization
exec For starting an exec (shell).
ipmobile For Mobile IP services.
network For network services. (PPP, SLIP, ARAP)
reverse-access For reverse access connections
template Enable template authorization
//对本地登陆的用户进行授权,当用户在客户端使用不同的用户名和密码试图登陆,输入的用户名和密码,发送到路由器,路由器查询本地数据库的用户名和密码,如果收到的用户名和密码和本地定义的用户名匹配成功,则用户身份认证通过。完成了认证之后,即使用户的级别是15,因为已经启用了AAA,AAA的安全级别高,要想让这个15级别的用户能进入到特权模式,还必须通过授权来实现。
Center(config)#aaa authorization exec myauthor local //配置对exec授权的授权列表myauthor,授权方式为本地
对用户级别进行命令授权:
R1(config)#privilege exec level 10 ping //10级以下用户不能使用ping,10级以上(含)可以
R1(config)#privilege exec level 10 traceroute //10级以下用户不能使用ping
R1(config)#privilege exec level 6 traceroute //6级以下用户不能使用ping,并覆盖前一条
调用认证列表和授权列表:
R1(config)#line vty 0 4
R1(config-line)#login authentication default //可省略
R1(config-line)#authorization exec myauthor
用不同级别的用户登录测试授权效果
show privilege //查看当前用户的级别
show user //查看当前登录用户
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133794.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...