tacacs+.docx

上传人:b****6 文档编号:6388874 上传时间:2023-01-06 格式:DOCX 页数:16 大小:70.93KB
下载 相关 举报
tacacs+.docx_第1页
第1页 / 共16页
tacacs+.docx_第2页
第2页 / 共16页
tacacs+.docx_第3页
第3页 / 共16页
tacacs+.docx_第4页
第4页 / 共16页
tacacs+.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

tacacs+.docx

《tacacs+.docx》由会员分享,可在线阅读,更多相关《tacacs+.docx(16页珍藏版)》请在冰豆网上搜索。

tacacs+.docx

tacacs+

AAA网络安全系统

认证(Authentication):

验证用户的身份与可使用的网络服务;

授权(Authorization):

依据认证结果开放网络服务给用户;

计帐(Accounting):

记录用户对各种网络服务的用量,并提供给计费系统。

AAA-----身份验证(Authentication)、授权(Authorization)和统计(Accounting)Cisco开发的一个提供网络安全的系统。

首先,认证部分提供了对用户的认证。

整个认证通常是采用用户输入用户名与密码来进行权限审核。

认证的原理是每个用户都有一个唯一的权限获得标准。

由AAA服务器将用户的标准同数据库中每个用户的标准一一核对。

如果符合,那么对用户认证通过。

如果不符合,则拒绝提供网络连接。

接下来,用户还要通过授权来获得操作相应任务的权限。

比如,登陆系统后,用户可能会执行一些命令来进行操作,这时,授权过程会检测用户是否拥有执行这些命令的权限。

简单而言,授权过程是一系列强迫策略的组合,包括:

确定活动的种类或质量、资源或者用户被允许的服务有哪些。

授权过程发生在认证上下文中。

一旦用户通过了认证,他们也就被授予了相应的权限。

最后一步是帐户计费,这一过程将会计算用户在连接过程中消耗的资源数目。

这些资源包括连接时间或者用户在连接过程中的收发流量等等。

可以根据连接过程的统计日志以及用户信息,还有授权控制、账单、趋势分析、资源利用以及容量计划活动来执行帐户过程。

认证方案与认证模式

AAA支持本地认证、不认证、RADIUS认证和TACACS认证四种认证模式,并允许组合使用。

组合认证模式是有先后顺序的。

例如,authentication-moderadiuslocal表示先使用RADIUS认证,RADIUS认证没有响应再使用本地认证。

当组合认证模式使用不认证时,不认证(none)必须放在最后。

例如:

authentication-moderadiuslocalnone。

当新建一个认证方案时,缺省使用本地认证。

授权方案与授权模式

AAA支持本地授权、直接授权、if-authenticated授权和TACACS授权四种授权模式,并允许组合使用。

组合授权模式有先后顺序。

例如,authorization-modetacacslocal表示先使用TACACS授权,TACACS授权没有响应再使用本地授权。

当组合授权模式使用直接授权的时候,直接授权必须在最后。

例如:

authorization-modetacacslocalnone

当新建一个授权方案时,缺省使用本地授权。

RADIUS的认证和授权是绑定在一起的,所以不存在RADIUS授权模式。

计费方案与计费模式

AAA支持六种计费模式:

本地计费、不计费、RADIUS计费、TACACS计费、同时RADIUS、本地计费以及同时TACACS、本地计费。

TACACS+简介

TACACS+(TerminalAccessControllerAccessControlSystem)终端访问控制器访问控制系统,与我们IDsentrie的Radius协议相近。

不过TACACS+用的是TCP协议,Radius用的是UDP;TACACS+将认证和授权分开,Radius将认证和授权绑定;另外两者的加密方式也不相同(具体参见《TACACS和RADIUS比较》)。

它们的重要作用就是3A。

典型的TACACS应用就是EXEC授权,即给用户执行某些命令的权利,在这里的命令就是我们的CLIcommand。

我们可以详细的配置一个用户可以执行某些CLIcommand,不能执行某些CLIcommand,确实可以管理得非常严格。

当每次执行command时都会到tacacs+server上去进行授权。

不过当我们允许用户配置某一项,而它的subconfig中如果还有很多command,我们要逐项添加,可以对命令和参数进行详细的管理,不用担心有的用户乱操作了。

这个功能只限于CLI,在webUI上是没有用的,它的作用又显得不太重要了。

CiscoSecureACS

思科安全访问控制服务器为思科智能信息网络提供基于身份的全面的访问控制解决方案。

它是用于管理企业网络用户、管理员和网络基础设施资源的集成和控制层。

SecureACS(ACS)是具高可扩展性的高性能访问控制服务器,可作为集中的RADIUS和TACACS+服务器运行。

CiscoSecureACS将验证、用户访问和管理员访问与策略控制结合在一个集中的身份识别网络解决方案中,因此提高了灵活性、移动性、安全性和用户生产率,从而进一步增强了访问安全性。

它针对所有用户执行统一安全策略,不受用户网络访问方式的影响。

它减轻了与扩展用户和网络管理员访问权限相关的管理负担。

通过对所有用户帐户使用一个集中数据库,CiscoSecureACS可集中控制所有的用户权限并将他们分配到网络中的几百甚至几千个接入点。

对于记帐服务,CiscoSecureACS针对网络用户的行为提供具体的报告和监控功能,并记录整个网络上每次的访问连接和设备配置变化。

这个特性对于企业遵守SarbanesOxley法规尤其重要。

CiscoSecureACS支持广泛的访问连接,包括有线和无线局域网、宽带、内容、存储、IP上的语音(VoIP)、防火墙和VPN等。

TACACS+协议报文结构

1.TACACS报文头格式

图1:

TACACS+报文

1)Major:

TACACS+主版本号

2)Minor:

TACACS+次版本号,用于向后兼容扩展。

3)PacketType:

定义包的类型,合法值为:

TAC_PLUS_AUTHEN=0x01(认证)

TAC_PLUS_AUTHOR=0x02(授权)

TAC_PLUS_ACCT=0x03(计费)

4)SequenceNo:

当前会话中的数据包序列号。

会话中的第一个TACACS+数据包序

列号必须为1,其后的每个数据包序列号逐次加1。

因此客户机只发送奇序列号数据包,而TACACS+Daemon只发送偶序列号数据包。

当序列号达到255时,会话会重启并置回序列号为1。

5)Flags:

该字段包括各种位图格式的标志,Flag值表明数据包是否进行加密以及是否可以在一个TCP连接上进行多个会话。

6)SeesionID:

会话ID,用来区分多会话中数据交换,在对负载数据加密过程中也会用到。

7)Length:

TACACS+数据包主体总长(不包括头部)。

2.认证过程及报文格式

TACACS+认证有三种类型数据包:

开始(START)、继续(CONTINUE)和回复(REPLY)。

客户端(client)发送START和CONTINUE数据包,服务端(daemon)发送REPLY数据包。

认证开始时,客户端发送一个START消息到服务端,该消息描述了要执行的身份验证类型,可能还包括用户名和一些认证数据。

起始数据包仅作为TACACS+会话开始或者会话重置后紧接着的第一个消息(会话重置可能是由服务端的回复包发起的)。

起始数据包的序列号总是等于1。

服务端发送一个REPLY包以响应START包。

回复包表明认证是否结束或者继续。

如果认证继续,则回复包将指明所需要的新的认证信息。

客户端取出相关信息并以CONTINUE包的形式进行返回。

服务端以REPLY包来回复START包或者CONTINUE包,直到客户端在CONTINUE包指示要中止,此时会话将立即中止。

认证START报文格式

图2:

认证START报文

1)Action:

认证操作,合法值为:

TAC_PLUS_AUTHEN_LOGIN=0x01(登录)

TAC_PLUS_AUTHEN_CHPASS=0x02(修改密码)

TAC_PLUS_AUTHEN_SENDPASS=0x03(发送密码,已作废)

TAC_PLUS_AUTHEN_SENDAUTH=0x04(发送认证)

2)Priv_lvl:

认证权限级别,值域为0-15,可以在NAS客户端中设置,预设值为:

TAC_PLUS_PRIV_LVL_MAX=0x0f(最高级别)

TAC_PLUS_PRIV_LVL_ROOT=0x0f(ROOT用户级别)

TAC_PLUS_PRIV_LVL_USER=0x01(普通用户级别)

TAC_PLUS_PRIV_LVL_MIN=0x00(最低级别)

3)Authen_type:

认证类型,合法值为:

TAC_PLUS_AUTHEN_TYPE_ASCII=0x01(ASCII值)

TAC_PLUS_AUTHEN_TYPE_PAP=0x02(PAP协议)

TAC_PLUS_AUTHEN_TYPE_CHAP=0x03(CHAP协议)

TAC_PLUS_AUTHEN_TYPE_ARAP=0x04(ARAP协议)

TAC_PLUS_AUTHEN_TYPE_MSCHAP=0x05(微软CHAP协议)

4)Service:

认证服务,合法值为:

TAC_PLUS_AUTHEN_SVC_NONE=0x00(无服务)

TAC_PLUS_AUTHEN_SVC_LOGIN=0x01(登录)

TAC_PLUS_AUTHEN_SVC_ENABLE=0x02(enable服务)

TAC_PLUS_AUTHEN_SVC_PPP=0x03(PPP协议)

TAC_PLUS_AUTHEN_SVC_ARAP=0x04(ARAP协议)

TAC_PLUS_AUTHEN_SVC_PT=0x05(负载类型)

TAC_PLUS_AUTHEN_SVC_RCMD=0x06(远程命令)

TAC_PLUS_AUTHEN_SVC_X25=0x07(x.25协议)

TAC_PLUS_AUTHEN_SVC_NASI=0x08(NASI服务)

TAC_PLUS_AUTHEN_SVC_FWPROXY=0x09(防火墙代理)

其中ENABLE服务是指获得管理特权,类似于Linux系统中的“su”命令。

NONE服务是在没有任何其它服务的情况下填写的。

5)User:

用户名,可选值。

6)Port:

客户端认证所使用的端口,由客户端指定。

7)Rem_addr:

远程地址,可选值,由客户端指定。

8)Data:

负载数据。

认证REPLY报文格式

图3:

认证REPLY报文

1)Status:

认证当前状态,合法值为:

TAC_PLUS_AUTHEN_STATUS_PASS=0x01(通过)

TAC_PLUS_AUTHEN_STATUS_FAIL=0x02(失败)

TAC_PLUS_AUTHEN_STATUS_GETDATA=0x03(获取数据)

TAC_PLUS_AUTHEN_STATUS_GETUSER=0x04(获取用户名)

TAC_PLUS_AUTHEN_STATUS_GETPASS=0x05(获取密码)

TAC_PLUS_AUTHEN_STATUS_RESTART=0x06(重启会话)

TAC_PLUS_AUTHEN_STATUS_ERROR=0x07(错误)

TAC_PLUS_AUTHEN_STATUS_FOLLOW=0x21(使用备用deamon)

2)Flags:

该字段包括各种位图格式的标志,定义值:

TAC_PLUS_REPLY_FLAG_NOECHO=0x01(不回应)

3)Server_msg:

服务器返回给用户的提示信息,可选的。

4)Data:

负载数据。

认证CONTINUE报文格式

图4:

认证CONTINUE报文

1)Flags:

该字段包括各种位图格式的标志,定义值:

TAC_PLUS_CONTINUE_FLAG_ABORT=0x01(中止)

2)User_msg:

用户输入信息,用于答复Server_msg。

3)Data:

负载数据。

3.授权过程及报文格式

授权REQUEST报文格式

图5:

授权REQUEST报文

1)Authen_method:

授权方式,合法值为:

TAC_PLUS_AUTHEN_METH_NOT_SET=0x00(未设置)

TAC_PLUS_AUTHEN_METH_NONE=0x01(不使用)

TAC_PLUS_AUTHEN_METH_KRB5=0x02(krb5模式)

TAC_PLUS_AUTHEN_METH_LINE=0x03(命令行)

TAC_PLUS_AUTHEN_METH_ENABLE=0x04(enable模式)

TAC_PLUS_AUTHEN_METH_LOCAL=0x05(本地)

TAC_PLUS_AUTHEN_METH_TACACSPLUS=0x06(tacacs+模式)

TAC_PLUS_AUTHEN_METH_GUEST=0x08(来宾模式)

TAC_PLUS_AUTHEN_METH_RADIUS=0x10(radius模式)

TAC_PLUS_AUTHEN_METH_KRB4=0x11(krb4模式)

TAC_PLUS_AUTHEN_METH_RCMD=0x20(远程命令)

2)Priv_lvl:

授权权限级别,同认证部分。

3)Authen_type:

授权方式,同认证部分。

4)Authen_service:

授权服务,同认证部分。

5)User;用户名。

6)Port:

客户端认证所使用的端口,同认证部分。

7)Rem_addr:

远程地址,同认证部分。

8)Arg_cnt:

参数个数。

9)Arg:

要执行命令的属性值对。

REQUEST和RESPONSE中的授权参数为属性值对。

属性和值为一串以“=”(0x3D)或“*”(0x2A)分隔的ascii码。

等号分隔的为强制参数,星号的为可选参数。

可选参数可能被客户端和服务端忽略,强制参数要求接收方能够解析并执行。

如果客户端收到的强制参数不能解析,则认为授权失败。

允许发送值为NULL的属性值对,但不允许整个属性值对字符串为空。

属性值的最大长度为255。

授权部分中的属性值对列表:

●service

基础服务,通用值有“slip”,“ppp”,“arap”,“shell”,“tty-daemon”,“connection”,“system”和“firewall”。

此属性为必须值。

●protocol

协议为服务的子集。

通用值有“lcp”,“ip”,“ipx”,“atalk”,“vines”,“lat”,“xremote”,“tn3270”,“telnet”,“rlogin”,“pad”,“vpdn”,“ftp”,“http”,“deccp”,“osicp”和“unknown”。

●cmd

可执行shell命令。

如果服务为“shell”,则此项必须指定。

如果命令自身的名字已经给出,则此项为NULL。

●cmd-arg

shell命令的参数,允许指定多个,但是必须依耐命令存在。

●acl

ASCII码表示的访问列表。

当服务为shell,命令为空时使用。

分为进和出控制列表。

●zonelist

数值区域列表(只适用于AppleTalk)。

●addr

网络地址

●addr-pool

地址池,用于给NAS分配地址的地址池标识。

●routing

路由,布尔值,用于指示路由信息是否被传播并从接口接受。

●route

给接口指示路线。

值必须以“[]”的形式给出,如果未指定,路线结果必须通过连接对端获得。

●timeout

连接的超时计时器(分钟计)。

值为零表示不超时。

●idltime

连接的空闲超时时间(分钟计)。

值为零表示不超时。

●auto

自动命令。

当服务为shell,命令为空时使用。

●nospace

无空格,格布尔值,当服务为shell,命令为空时使用。

●nohangup

无挂起,布尔值,当服务为shell,命令为空时使用。

●priv_lvl

指定的权限级别。

●remote_user

远程用户ID(authen_method值必须为TAC_PLUS_AUTHEN_METH_RCMD)。

●remote_host

远程主机(authen_method值必须为TAC_PLUS_AUTHEN_METH_RCMD)。

●callback-dialstring

回调刻度串。

值为空或者一串刻度串。

空值表示服务可以选择,刻度串表示通过其它方式。

●callback-line

回调线,用于回调的线号。

●callback-rotary

回调旋转,用于回调的旋转号。

●nocallbak-verify

无回调验证,回调后不作验证。

授权RESPONSE报文格式

图6:

授权RESPONSE报文

1)Status:

授权状态,可取值:

TAC_PLUS_AUTHOR_STATUS_PASS_ADD=0x01(添加密码)

TAC_PLUS_AUTHOR_STATUS_PASS_REPL=0x02(密码替换)

TAC_PLUS_AUTHOR_STATUS_FAIL=0x10(失败)

TAC_PLUS_AUTHOR_STATUS_ERROR=0x11(错误)

TAC_PLUS_AUTHOR_STATUS_FOLLOW=0x21(使用备用deamon)

2)Server_msg:

服务端发给客户端的一串ascii码字符串,客户端决定是否做响应。

3)Arg_cnt:

授权使用的参数个数。

4)Arg:

要执行的命令的属性值对。

5)Data:

负载数据。

4.计费流程及报文

Tacacs+的计费和授权类似,报文格式也类似。

有固定部分和扩展部分,扩展部分使用的属性对和授权部分的相同,并在此基础上增加几个。

计费REQUEST报文

图7:

计费REQUEST报文

1)Flags:

该字段包括各种位图格式的标志,定义值:

TAC_PLUS_ACCT_FLAG_MORE=0x01(更多,已废除)

TAC_PLUS_ACCT_FLAG_START=0x02(开始)

TAC_PLUS_ACCT_FLAG_STOP=0x04(结束)

TAC_PLUS_ACCT_FLAG_WATCHDOG=0x08(看门狗)

2)Authen_method:

授权模式。

3)Priv_lvl:

授权权限级别,同认证部分。

4)Authen_type:

授权方式,同认证部分。

5)Authen_service:

授权服务,同认证部分。

6)User;用户名。

7)Port:

客户端认证所使用的端口,同认证部分。

8)Rem_addr:

远程地址,同认证部分。

9)Arg_cnt:

参数个数。

10)Arg:

要执行命令的属性值对。

计费部分中的属性值对列表;

●task_id

任务号,启停同一任务记录必须有匹配的(唯一)任务号。

●start_time

开始时间(以秒计,使用UNIX时间戳始点1970-1-100:

00)。

●stop_time

结束时间(以秒计)。

●elapsed_time

耗费时间,操作所花费的时间,当设备不使用实时时有用。

●timezone

时区,包含所有时间戳的时区缩写。

●event

事件,只有当“服务=系统”,当前值为“net_acct”,“cmd_acct”,“conn_acct”,“shell_acct”,“sys_acct”和“clock_change”使用。

表示系统级别发生变化。

标志域必须被设置不管服务是否启动。

●reason

原因,和事件相对应,描述事件发生的原因。

●bytes

字节数,操作所产生的字节交换数,分为接收和发送。

●paks

数据包数,操作所产生的数据包交换数,分为接收和发送。

●status

和操作相关的数值状态。

网络字节序,占四个字节。

0表示成功,负数表示错误,正数表示无错误的失败。

确切的状态值由客户端定义。

●err_msg

错误信息。

用于描述操作的ascii码字符串。

字符串的所有数值均使用十进制。

计费REPLY报文

图8:

计费REPLY报文

1)Status:

计费状态,可取值:

TAC_PLUS_ACCT_STATUS_SUCCESS=0x01(成功)

TAC_PLUS_ACCT_STATUS_ERROR=0x02(错误)

TAC_PLUS_ACCT_STATUS_FOLLOW=0x21(使用备用deamon)

2)Server_msg:

服务端发给客户端的一串ascii码字符串,客户端决定是否做响应。

3)Data:

负载数据。

服务器在送一个REPLY包后会终止会话。

TAC_PLUS_ACCT_FLAG_START标记表明计费开始,TAC_PLUS_ACCT_FLAG_STOP用一终止计费,并且结束任务。

TAC_PLUS_ACCT_FLAG_WATCHDOG标记表示是一个更新记录,是否发送记录由客户端决定。

开始和停止标记是互斥的,当看门狗标记被设置后表示更新记录是在原有的开始记录上继续的。

如果开始记录没有被置,任务运行时显示最小记录。

停止记录不能与看门狗标记一同设置

5.TACACS+完整数据流程

图9:

TACACS+完整数据流程

模拟实验

拓扑:

图10:

实验拓扑

1.启用aaa

  aaanew-model

2.配置ACS服务器

  tacacs-serverhostx.x.x.x

  tacacs-serverkey*****

3.配置设备local后门用户

  usernametestuserpassword*****

  之所以配置后门用户,是考虑到在ACS异常的时候仍能telnet到设备。

4.认证并应用到线路

aaaauthenticationloginlogin-listgrouptacacs+local

linevty015

loginauthenticationlogin-list

  这里的login-list定义了访问控制的列表,即首先使用tacacs+认证,如果认证失败则使用local后门用户认证。

后面的将认证应用到vty、配置accounting均调用这个login-list。

5.授权

  aaaauthorizationexecdefaultlocalif-authenticated

6.记账

  aaaaccountingexeclogin-liststart-stopgrouptacacs+

  aaaaccountingcommands1login-liststart-stopgrouptacacs+

  aaaaccountingcommands15login-liststart-stopgrouptacacs+

  aaaaccountingnetworklogin-liststart-stopgrouptacacs+

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1