CISCO路由器AAA介绍及相关路由配置 CISCO路由器AAA介绍及相关路由配置 CISCO AAA www.zhishiwu.com 3A概念:认证authentication 授权authorization 记帐 accountingcisco为路由器和交换机提供多种3A服务的方法:1 自包含AAA 路由器/NAS自身包含AAA服务 NAS(网络访问服务器)2 CISCO SECURE ACS 路由器/NAS上的AAA服务与外部CISCO SECURE ACS系统联系3 CISCO SECURE ACS SOLUTION ENGINE 路由器/NAS上的AAA服务与外部CISCO SECURE ACS SOLUTIONENGINE系统联系4 第三方ACS 路由器/NAS上的AAA服务与外部CISCO认可的第三方ACS系统联系 radius tacacs+cisco secure acs系列是供安全访问网络的一种全面而灵活的平台。他主要负责以下一个方面的安全通过CISCO NAS和路由器拨号管理员进行路由器和交换机的控制台及VTY端口访问CISCO PIX防火墙访问 www.zhishiwu.com VPN3000系列集线器(仅用于RADIUS)使用CISCO LEAP 和 PEAP的无线局域网支持交换机的无线802.1X认证边界路由器AAA配置过程1 在vty,异步,aux和tty端口对特权EXEC和配置模式进行安全访问config tenable password ***service password-encryptionenable secret ******2 在边界路由器上,用aaa new-model命令启用AAA。config taaa new-modelusername *** password ***aaa authentication login default local 注意点,在配置aaa new-model命令的时候,一定要提供一种本地登入方式,防止由于管理性会话失效而引发路由器锁定。3 配置AAA认证列表aaa authentication login 定义用户视图登入到路由器时需要使用哪个认证步骤。aaa authentication ppp 对于使用PPP的串行接口上的用户会话,定义了要使用的认证步骤。aaa authentication enable default 定义了有人试图通过enable命令进去特权EXEC模式时,应该采用的认证步骤在访问服务器上全局启用了AAA之后,还需要定义认证方法列表,并将其应用到链路和接口。这些认证方法列表指出了服务(PPP,ARAP,NASI,LOGIN) 和认证方法(本地,TACACS+,RADIUS,login 或enable),这里建议将本地认证作为最后一种方法。定义认证方法列表 1规定服务(PPP,ARAP,NASI)或登录认证 2标识一个列表名称或采用缺省 3规定认证方法,并规定其中一种不可用时,路由器如何反应 4将其应用到一下链路或接口之一 链路--tty,vty,console,aux和async链路,或者供登入的控制台端口已经供ARA的异步链路 www.zhishiwu.com 接口--同步,异步以及为PPP.SLIP.NASI或ARAP而配置的虚拟接口 5在全局配置模式下使用aaa authentication命令,以启用AAA认证过程。 1 aaa authentication login命令 config t aaa authentication login default enable aaa authentication login console-in local aaa authentication login tty-in line console-in和 tty-in是管理员创建的简单的方法列表名称。 aaa authentication login {default | list-name} method1 [method2~~~] default 用户登入时,使用此变量后面列出的认证方法,作为缺省的方法列表 list-name 当用户登录时,用来命名认证方法列表的字符串 method: (enable) 使用enable口令来认证 (krb5) 用kerberos 5来认证 (krb5-telnet) 当借助telnet连接路由器时,使用kerberos 5 telnet认证协议 (line) 用链路口令来认证 (local) 用本地用户名数据库来认证 (none) 不用认证 (group- radius) 使用包含所有RADIUS服务器的一个列表来认证 (group tacacs+) 使用包含所有TACACS+服务器的一个列表来认证 (group group-name) 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa groupserver radius或aaa group server tacacs+命令中 2 aaa authentication ppp命令 aaa authentication ppp (default |list-name) method1 [method2~~~] default 用户登入时,使用此变量后面列出的认证方法,作为缺省的方法列表 list-name 当用户登录时,用来命名认证方法列表的字符串 method: (if-needed 如果用户在TTY链路上认证了,就不需要再认证 (krb5 用kerberos 5来认证 (local 用本地用户名数据库来认证 (local-case (none 不用认证 (group group-name 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa groupserver radius或aaa group server tacacs+命令中 3 aaa authentication enable default命令 aaa authentication enable default method1 [method2~~~] method: enable 使用enable口令来认证 line 用链路口令来认证 none 不用认证 group radius 使用包含所有RADIUS服务器的一个列表来认证 group tacacs+ 使用包含所有TACACS+服务器的一个列表来认证 group group-name 用RADIUS或TACACS+服务器的一个子集来认证 这些服务器定义在aaa groupserver radius或aaa group server tacacs+命令中 4 对链路和接口应用认证命令 config t aaa new-model 启用AAA aaa authentication login default enable 将enable口令作为缺省的登入方式 aaa authentication login console-in group tacacs+ local 无论何时使用名为console-in的列表,都使用TACACS+认证,如果TACACS+认证失败,己用本地用户名和口令 aaa authentication login dial-in group tacacs+ 无论何时使用名为dial-in的列表,都使用TACACS+认证. username *** password **** 建立一个本地用户名和口令,最可能与console-in登录方法列表一起使用 line console 0 进入链路控制台配置模式 login authentication console-in 使用console-in列表作为控制台端口0的登录认证 line s3/0 ppp authentication chap dial-in 使用dial-in列表作接口S3/0 的PPP CHAP的登录认证 4 配置供用户通过认证之后的AAA授权 aaa authorization 命令 aaa authorization {network|exec|commands level|reverse-access|configuration} {default|list-name} method1 [method2~~~] network 为所有网络相关的服务请求进行授权,包括SLIP,PPP,PPP NCP和ARA exec 使用授权,以确定是否用户可以运行一个EXEC shell. commands 为所有处于规定的特权级别的命令使用授权 level 规定应该被授权的命令级别,有效值 0-15 reverse-access 为反向访问连接使用授权,例如反向Telnet configuration 从AAA服务器上下载配置 default 使用此变量后列出的认证方法,作为缺省方法列表供认证 listname 用来命令认证方法列表的字符串 method 规定以下关键字的至少一种 group 用radius或tacacs+服务器的一个子集来认证,这些服务器定义在aaa group server radius或aaa group server tacacs+命令中 if-authenticated 如果用户为认证,允许用户访问请求的功能; krb5-instance 使用被kerberos instance map命令定义的实例; local 用本地用户名数据库来授权 none 不用授权例子: enable secret level 1 *** 为级别1的用户建立一个enable secret口令 enable secret level 15 *** 为级别15的用户建立一个enable secret口令 aaa new-model 启用AAA aaa authentication login default enable 将enable口令作为缺省的登入方式 aaa authentication login console-in group tacacs+ local 无论何时使用名为console-in的列表,都使用TACACS+认证,如果TACACS+认证失败,己用本地用户名和口令 aaa authentication login dial-in group tacacs+ 无论何时使用名为dial-in的列表,都使用TACACS+认证. username *** password **** 建立一个本地用户名和口令,最可能与console-in登录方法列表一起使用 aaa authorization commands 1 alpha local 用本地用户名数据库来为所有级别1命令的使用进行授权 www.zhishiwu.com aaa authorization commands 15 bravo if-authenticated group tacplus local 如果用户已经认证了,让其运行级别15的命令,如果还未认证,在允许其访问级别15的命令之前,必须基于tacplus组中的TACACS+服务器来认证 aaa authorization network charlie local none 使用本地数据库来对所有网络服务的使用授权,如果本地服务器不可用,此命令执行并不授权,用户能使用所有的网络服务 aaa authorization exec delta if-authenticated group tacplus 如果用户已经认证,让其运行EXEC过程,如果没有认证,在允许EXEC之前,必须基于tacplus组中的TACACS+服务器来认证 privilege exec level 1 ping 为级别1的用户启用PING line console 0 login authentication console-in 使用console-in列表作为控制台端口0的登录认证 line s3/0 ppp authentication chap dial-in 使用dial-in列表作接口S3/0 的PPP CHAP的登录认证5 配置规定如何写记帐记录的AAA记帐 aaa accounting [auth-proxy |system |network |exec |connection |commands level]{default|list-name} [vrf vrf-name] [start-stop|stop-only|none][broadcast][method][method2] auth-proxy 提供有关所有认证代理用户事件的信息 system 为所有非用户相关的系统级事件执行记帐 network 为所有网络相关的服务请求运行记帐 exec 为EXEC shell会话运行记帐。 connection 提供所有有关源子NAS的外出连接的信息 commands 为所有处于特定特权级别的命令运行记帐,有效的特权级别取值0-15 default 使用本参数之后列出的记帐方式 list-name 用来命令记帐方式列表的字符串 vrf vrf-name 规定一个VRF配置 start-stop 在一个过程的开端,发送一个开始记帐通知,在过程结束时,发送一个停止记帐通知。 stop-only 在被请求用户工程结束时发送一个停止记帐通知 none 禁止此链路或接口上的记帐服务 broadcast 启用发送记帐记录到多个3A服务器,同时向每个组中第一台服务器发送记帐记录 www.zhishiwu.com method 规定一下关键子中的至少一个 group radius 用所有RADIUS服务器列表作为记帐 group tacacs+ 用所有列出的TACACS+服务器来记帐 group group-name 用RADIUS或TACACS+服务器的一个子集作为记帐 在路由器上启用下列命令以启用几张 aaa accounting system wait-start local 用记帐方法审计系统事件 aaa accounting network stop-only local 当网络服务中断,发送停止记录通知 aaa accounting exec start-stop local 当EXEC过程开始时,发送一个开始记录通知,结束时,发送停止记录 aaa accounting commands 15 wait-start local 在任何级别15的命令开始之前,发送一个开始记录通知,并等待确认,当命令中止时,发送一个停止记录通知。 6 校验配置 debug aaa authentication 显示有关认证功能的调试信息 debug aaa authorization 显示有关授权功能的调试信息 debug aaa accounting 显示有关记帐功能的调试信息