例如,如果我aaa new-model
使用默认配置在 IOS 路由器中启用 AAA( ) 并尝试通过控制台线路 ( cty )登录,则不会进行身份验证。但是,如果我尝试通过 telnet( vty )登录,则会针对本地用户数据库进行身份验证。现在,如果我指定 TACACS+ 服务器tacacs-server host 10.10.10.3 key passwd
并启用 TACACS+ 身份验证aaa authentication login default group tacacs+
,则cty和vty 都开始使用 TACACS+ 身份验证。现在,如果我禁用 AAA( no aaa new-model
),那么vty期望我在cty时至少有线路密码默认情况下没有身份验证。由于这还不够令人困惑,控制台行上的启用模式默认不需要身份验证,而在 telnet 的情况下则需要。这一切让我想知道是否有一个 show 命令可以显示不同线路的身份验证方法?例如,在情况下,AAA已启用,但没有TACACS +认证配置,它将与表明sh line vty 0 auth
的是VTY线路预计本地用户数据库认证,而在同一时间sh line console 0 auth
将表明无需进行身份验证。但是,恐怕这样的show
命令不存在,必须检查配置并记住默认值。
如何在 IOS 中查看不同线路(cty、vty、aux、tty)的默认身份验证方法?
网络工程
思科
思科-ios
安全
验证
啊啊啊
2021-07-16 05:35:46
1个回答
我可以同情,IOS认证机制并不简单理解。
执行您想要的操作的最接近的命令是show aaa method-lists authentication
. 但是,对于审核系统登录身份验证方法而言,此命令并不是真正万无一失的。
示例用法:
例如,假设我们有一个具有以下配置的交换机:
username cisco password cisco
aaa new-model
aaa authentication login default local
aaa authorization exec default local if-authenticated
!
line con 0
exec-timeout 15 0
!
line vty 0 4
exec-timeout 15 0
当我运行时show aaa method-lists authentication
,我看到该default
方法是唯一使用的方法,但它没有枚举控制台、辅助或线路 vty...
rt#sh aaa method-lists authentication
authen queue=AAA_ML_AUTHEN_LOGIN
name=default valid=TRUE id=0 :state=ALIVE : LOCAL
^^^^^^^^^^^^ ^^^^ ^^^^^
authen queue=AAA_ML_AUTHEN_ENABLE
authen queue=AAA_ML_AUTHEN_PPP
authen queue=AAA_ML_AUTHEN_SGBP
authen queue=AAA_ML_AUTHEN_ARAP
authen queue=AAA_ML_AUTHEN_DOT1X
authen queue=AAA_ML_AUTHEN_8021X
authen queue=AAA_ML_AUTHEN_EAPOUDP
permanent lists
name= Permanent Enable None valid=TRUE id=0 :state=ALIVE : ENABLE NONE
name= Permanent Enable valid=TRUE id=0 :state=ALIVE : ENABLE
name= Permanent None valid=TRUE id=0 :state=ALIVE : NONE
name= Permanent Local valid=TRUE id=0 :state=ALIVE : LOCAL
name= Permanent rcmd valid=TRUE id=0 :state=ALIVE : RCMD
rt#
现在我们可以进入并配置一个虚假的登录方法line con 0
......
rt1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
rt1(config)#line con 0
rt1(config-line)#login authentication FOOBAR
AAA: Warning authentication list "FOOBAR" is not defined for LOGIN.
rt1(config-line)#do show aaa method-lists authentication | i FOOBAR
rt1(config-line)# ! <------------- *Nothing here*
但是,如果我现在配置该身份验证列表,它会显示...
rt1(config)#aaa authentication login FOOBAR local
rt1(config)#do show aaa method-lists authentication | i FOOBAR
name=FOOBAR valid=TRUE id=6F000002 :state=ALIVE : LOCAL
rt1(config)#
综上所述,对于一个命令全能的解决方案,您大多不走运。你能做的最好的事情就是编写一个审计脚本;ciscoconfparse可以协助完成此类任务(完全公开,我为此类问题编写了该库)。
其它你可能感兴趣的问题