Tacacs+双通道认证配置测试与总结


其他文章:


背景

一般在网络组网中,从可靠性来说,一般主要的网络设备都有两个管理地址:

  • 一个是loopback的逻辑地址,主要用于OSPF,BGP等路由协议配置Router-id等,也可以用于远程管理设备。loopback在网络中主要是通过路由协议的传播的,所以流量会走业务l距离走的网络。一般也称为带内(band-in)地址。

  • 另一个是管理口配置的管理地址。一般情况下,会组建一套独立与生产网络的管理网,用于防治网络路由出现问题,Loopback地址不可达情况下使用单独的管理网通过管理口来管理设备。可靠性更高,同时也可以将大部分管理流量通过管理网走,与生产网隔离。

    在网络上,为了将管理网与生产网隔离,可以通过建立vrf/vpn-instance来创建单独的网络隔离域,从路由层面进行网络隔离。通过网络设备的管理口来管理网络,也称为带外管理(band-out)。

配置Tacacs+认证的目标:

在有带内管理网和带外管理网都共存的情况下,且带内网络和带外网络隔离。

配置网络设备的AAA认证,目前大多基本都通过配置Tacacs+来对网络设备进行统一认证,授权,计费管理。

而在配置Tacacs+认证的过程中,各厂商交换机主要需要配置的是Tacacs+的服务器地址,端口号,密钥,以及网络设备的认证源。

Tacacs+各厂商交换机配置 这篇文章中介绍的Tacacs+配置,Tacacs+认证源地址只配置了一种,以Looback地址为源进行认证。

在正常具备带内和带外的情况下,使用Tacacs+想要达到的目标主要有以下几点:

  1. 优先采用带外为源进行Tacacs+认证,当带外失效可自动切换到带内为源认证。在此称为Tacacs+双通道认证。
  2. 当Tacacs+认证服务器失效以后,交换机能支持本地认证,通过本地用户登陆管理设备。
  3. 当Tacacs+认证服务器生效的时候,不能使用交换机本地用户登陆设备

各厂商支持Tacacs+双通道认证配置

以下配置参数:

  • 带内地址统一为Loopback0: 192.168.1.1
  • 带外地址管理口地址统一为:192.168.2.1,所在vrf统一为:MGT
  • Tacacs+服务器地址为:192.168.147.135,port 49,key tacacs@123
  • 配置Tacacs+ 超时时间为3s,一般默认为5s。
  • 设置服务器恢复激活状态的时间 为5min,一般默认为5分钟。

Tacacs+服务器响应超时时间的主要作用:

  • 当主Tacacs+服务器失效,那么在认证,授权,计费过程中,如果超过超时间,就会切换到备Tacacs+服务器去认证。
  • 当主备Tacacs+服务器都失效,那么通过指定超时时间,会使用交换机的本地认证。

Tacacs+服务器恢复激活状态时间的主要作用:

  • 当主Tacacs+服务器失效,通过超时时间会切换到备Tacacs+服务期,那么此时会通过备Tacacs+服务器进行认证,授权,计费。
  • 但是当主Tacacs+服务器经过一定时间恢复以后,需要网络设备的AAA继续走主Tacacs+认证,那么就需要一个检测机制,一般默认5分钟,检测一次。如果主Tacacs+服务器恢复,则从备Tacacs+服务器认证切换回主Tacacs+服务器认证。

H3C:

  • 当管理口down掉后,已建立的session不会立即断开,但是不能执行任何命令,Permission denied。

  • 当配置为主从认证模式后,在主接口,即管理口down掉的情况下,执行命令当主tacacs+服务器失效,5s后自动切换为从tacacs+服务器,即从Loopback地址为源地址。后续执行命令不会有延时,当管理口恢复后,主tacacs+服务器状态变为Active后,默认5分钟后恢复使用主Tacacs+服务器,即使用管理口进行认证。

  • 在本地用户登陆过程中,若Tacacs+生效,5分钟后,会恢复使用Tacacs+认证,已建立的session无法继续执行命令。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 #配置以带内地址为Tacacs+认证源地址
hwtacacs nas-ip 192.168.1.1
#配置以带外地址为Tacacs+认证源地址,且绑定到管理口所在vrf
hwtacacs nas-ip 192.168.2.1 vpn-instance MGT
#配置Tacacs+认证服务器模版
hwtacacs scheme tacacs
#配置主Tacacs+证模版,主要通过带外认证。。
primary authentication 192.168.147.135 49 MGT vpn-instance key simple tacacs@123
primary authorization 192.168.147.135 49 single-connection vpn-instance key simple tacacs@123
primary accounting 192.168.147.135 49 single-connection vpn-instance key simple tacacs@123
#配置备Tacacs+认证模版,主要通过带内认证。
secondary authentication 192.168.147.135 49 single-connection key simple tacacs@123
secondary authorization 192.168.147.135 49 single-connection key simple tacacs@123
secondary accounting 192.168.147.135 49 single-connection key simple tacacs@123
#配置认证不带域名
user-name-format without-domain
#在system域名下调用tacacs认证模版
domain system
authentication default hwtacacs-scheme tacacs local
authorization default hwtacacs-scheme tacacs local
accounting default hwtacacs-scheme tacacs local
#在全局下启动默认认证域为system。
domain default enable system
#配置Tacacs+认证超时时间
timer response-timeout 3

hwtacacs scheme hwtacacs-scheme-name

  • 设置HWTACACS服务器响应超时时间timer response-timeout seconds 缺省情况下,服务器响应超时时间为5秒

  • 设置实时计费的时间间隔 timer realtime-accounting minutes 缺省情况下,实时计费间隔为12分钟

  • 设置服务器恢复激活状态的时间 timer quiet minutes ,缺省情况下,服务器恢复激活状态前需要等待5分钟

华为:

华为设备目前不支持配置该功能。

  • 当采用带外认证时,若管理口down/或者tacacs服务器失效,此时已经建立的session不会失效,还可配置命令。
  • 当Tacacs+服务器失效时,可通过登陆本地用户进行登陆配置。登陆上执行命令有5s延时。
  • 当Tacacs+服务器生效时,不可通过本地用户登陆。
  • 当使用本地用户登陆时,若此时tacacs+服务器生效后,本地用户命令会失效,没有权限配置。

锐捷:

  • 锐捷,思科,Arista设备,通过设备Tacacs+服务器group,可以通过配置gruop的先后,指定优先使用带外进行tacacs+认证。
  • 锐捷,Arista,H3C在通过Tacacs+登陆时,如果tacacs+服务器失效,会直接无法执行命令。
  • 当Tacacs+失效时,可通过交换机本地用户登陆,每次执行命令会延迟3s,Tacacs+生效时,本地用户不可登陆。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55

#配置认证超时时间
tacacs-server timeout 3
#配置Tacacs+服务器监控恢复时间
tacacs-server deadtime 5
tacacs-server host 192.168.147.135 port 49 key tacacs@123
!
#配置主Tacacs+服务器,指定通过带外管理口走
aaa group server tacacs+ tacacs_MGT
server 192.168.147.135
ip oob via t 0
!
#配置备Tacacs+服务器,通过带内地址认证。
aaa group server tacacs+ tacacs
server 192.168.147.135
nas-ip 192.168.1.1
!
#开启aaa认证。
aaa new-model
!
aaa accounting exec execaccount start-stop group tacacs_MGT group tacacs
aaa accounting commands 0 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 1 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 2 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 3 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 4 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 5 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 6 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 7 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 8 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 9 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 10 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 11 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 12 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 13 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 14 commaccout start-stop group tacacs_MGT group tacacs
aaa accounting commands 15 commaccout start-stop group tacacs_MGT group tacacs
aaa authorization exec execauth group tacacs_MGT group tacacs local
aaa authorization commands 0 default group tacacs_MGT group tacacs local
aaa authorization commands 1 default group tacacs_MGT group tacacs local
aaa authorization commands 2 default group tacacs_MGT group tacacs local
aaa authorization commands 3 default group tacacs_MGT group tacacs local
aaa authorization commands 4 default group tacacs_MGT group tacacs local
aaa authorization commands 5 default group tacacs_MGT group tacacs local
aaa authorization commands 6 default group tacacs_MGT group tacacs local
aaa authorization commands 7 default group tacacs_MGT group tacacs local
aaa authorization commands 8 default group tacacs_MGT group tacacs local
aaa authorization commands 9 default group tacacs_MGT group tacacs local
aaa authorization commands 10 default group tacacs_MGT group tacacs local
aaa authorization commands 11 default group tacacs_MGT group tacacs local
aaa authorization commands 12 default group tacacs_MGT group tacacs local
aaa authorization commands 13 default group tacacs_MGT group tacacs local
aaa authorization commands 14 default group tacacs_MGT group tacacs local
aaa authorization commands 15 default group tacacs_MGT group tacacs local
aaa authentication login vty group tacacs_MGT group tacacs local

思科:

  • 已通过Tacacs+认证建立的session,若Tacacs+失效,该session不会断开,还可配置全部命令。
  • 当Tacacs+生效时,本地用户不可登陆。

  • 当Tacacs+失效,本地用户可登陆,并且当使用本地用户登陆后,Tacacs+恢复后,本地用户立即没权限执行命令。使用本地用户登录时,执行命令无延时。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#开启Tacacs+功能
feature tacacs+
tacacs-server timeout 3
tacacs-server deadtime 5
tacacs-server host 192.168.147.135 key tacacs@123 port 49 single-connection
#配置主Tacacs+服务器,绑定vrf
aaa group server tacacs+ tacacs_MGT
server 192.168.147.135
use-vrf MGT
source-interface t0
#配置备Tacacs+服务器
aaa group server tacacs+ tacacs
server 192.168.147.135
source-interface loopback0
#通过调用Tacacs+认证group先后,决定认证顺序
aaa authentication login default group tacacs_MGT tacacs local
aaa authentication login console local
aaa authorization config-commands default group tacacs_MGT tacacs local
aaa authorization commands default group tacacs_MGT tacacs local
aaa accounting default group tacacs_MGT tacacs
#这条命令是增加思科能通过Tacacs+上的用户进行认证
aaa authentication login ascii-authentication

Arista:

  • Arista系列支持,Tacacs+生效时本地用户不可登陆,失效时本地用户可登陆。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
tacacs-server timeout 3
# 配置主Tacacs+认证
tacacs-server host 192.168.147.135 vrf port 49 single-connection key tacacs@123
#配置备Tacacs+认证服务器
tacacs-server host 192.168.147.135 port 49 key single-connection key tacacs@123
!
aaa group server tacacs+ tacacs
server 192.168.147.135 port 49
!
aaa group server tacacs+ tacacs_MGTMGT
server 192.168.147.135 vrf port 49
!
aaa authentication login default group tacacs_MGT group tacacs local
aaa authentication login console local
aaa authorization exec default group tacacs_MGT MGT group tacacs local
aaa authorization commands all default group tacacs_MGT group tacacs local
aaa accounting commands all default start-stop group tacacs_MGTMGT group tacacs
!
ip tacacs vrf source-interface Management0
ip tacacs source-interface Loopback0

其他文章:


坚持原创技术分享,您的支持将鼓励我继续创作!