简介
本文档介绍各种思科和非思科产品预期从AAA服务器(如Cisco ISE)接收的属性的编译。
背景信息
思科和非思科产品期望从身份验证、授权和记帐(AAA)服务器接收属性编译。在这种情况下,服务器是思科ISE,ISE将返回这些属性以及访问接受作为授权配置文件(RADIUS)的一部分。
本文档提供有关如何添加自定义属性授权配置文件的分步说明,还包含设备列表以及设备预期从AAA服务器返回的RADIUS属性。所有主题都包含示例。
本文档中提供的属性列表既不详尽,也不具有权威性,无需更新本文档即可随时更改。
网络设备的设备管理通常通过TACACS+协议实现,但如果网络设备不支持TACACS+或ISE没有设备管理许可证,也可以通过RADIUS实现,如果网络设备支持RADIUS设备管理。有些设备支持这两种协议,由用户决定使用哪种协议,但是TACACS+可能比较有利,因为它具有命令授权和命令记帐等功能。
先决条件
要求
思科建议您了解以下内容:
- 思科ISE作为感兴趣网络上的Radius服务器
- Radius协议的工作流程 — RFC2865
ISE部署至少需要与通过RADIUS管理的设备管理使用的并发RADIUS会话数相同数量的基本许可证。
使用的组件
本文档中的信息基于思科身份服务引擎(ISE)3.x及更高版本的ISE。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
配置
步骤1.创建供应商特定属性(VSA)。
可以为每个供应商创建各种词典,并且可以将属性添加到每个词典中。每个字典可以具有多个可在授权配置文件中使用的属性。通常,每个属性都定义用户登录网络设备时可以获得的设备管理不同角色。但是,该属性可用于在网络设备上执行操作或配置的不同目的。
ISE带有适用于少数供应商的预定义属性。如果供应商未列出,则可以将其添加为具有属性的词典。对于某些网络设备,属性可配置并可针对各种访问类型进行更改,如果出现这种情况,则必须使用网络设备期望的不同访问类型属性配置ISE。
预期随Radius Access-Accept发送的属性定义如下:
- 导航到Policy > Policy Elements > Dictionaries > System > Radius > Radius Vendors > Add。
- 系统将输入并保存名称和供应商ID。
- 单击保存的Radius Vendor并导航到Dictionary Attributes。
- 单击Add并填写区分大小写的属性名称、数据类型、方向和ID。
- 保存属性。
- 如果有多个属性要添加到同一词典,则在同一页上添加其他属性。
注意:本部分中作为值输入的每个字段均由供应商自己提供。如果不知道供应商网站,可以访问供应商网站或联系供应商支持。
注意:并非所有供应商都要求添加特定词典。如果供应商可以使用由IETF定义的RADIUS属性(在ISE中已存在),则可以跳过此步骤。
步骤2.创建网络设备配置文件。
此部分不是必填项。网络设备配置文件有助于分离所添加的网络设备的类型,并为它们创建适当的授权配置文件。与radius词典一样,ISE有一些预定义配置文件可供使用。如果尚不存在,则可以创建新的设备配置文件。
以下是添加网络配置文件的步骤:
- 导航到管理>网络资源>网络设备配置文件>添加。
- 为RADIUS指定一个名称并选中框。
- 在RADIUS Dictionaries下,选择在上一部分创建的词典。
- 如果为相同类型的设备创建了多个字典,则可以在RADIUS字典下选择所有字典。
- 保存配置文件。
步骤3.在ISE上添加网络设备。
在ISE上必须添加用于实现设备管理的网络设备以及网络设备上定义的密钥。在网络设备上,使用此密钥将ISE添加为radius AAA服务器。
以下是在ISE上添加设备的步骤:
- 导航到管理>网络资源>网络设备>添加。
- 给出名称和IP地址。
- 可以从下拉列表中选择设备配置文件(Device Profile),使其成为上一节中定义的配置文件。如果未创建配置文件,则可以使用默认思科。
- 检查Radius身份验证设置。
- 输入Shared Secret Key并保存设备。
步骤4.创建授权配置文件。
从ISE推送为访问接受或访问拒绝的最终结果在授权配置文件中定义。每个授权配置文件都可以推送网络设备期望的其他属性。
以下是创建授权配置文件的步骤:
- 导航到Policy > Policy Elements > Results > Authorization > Authorization Profiles。
- 在Standard Authorization Profiles下,单击Add。
可以添加的配置文件类型是Access-Accept和Access-Reject。
创建访问接受配置文件
此配置文件用于以某种方式访问网络设备。此配置文件可同时传递多个属性。步骤如下:
- 给出一个合理的名称,然后选择Access Type作为Access-Accept。
- 选择在上一节之一中创建的网络设备配置文件。如果未创建配置文件,则可以使用默认思科。
- 选择不同类型的配置文件后,此页面会限制配置选项。
- 在Advanced Attributes Settings下,选择字典和适用的属性(LHS)。
- 从下拉列表为属性分配值(RHS)(如果可用)或键入预期值。
- 如果同一结果中有更多属性要发送,请点击+图标并重复步骤4和5。
为ISE预期发送的每个结果/角色/授权创建多个授权配置文件。
注意:可以在Attribute Details字段下验证合并的属性。
创建访问拒绝配置文件
此配置文件用于发送拒绝设备管理,但仍可用于随其发送属性。用于发送Radius Access-Reject数据包。除必须选择Access-Reject而不是Access-Accept作为访问类型的步骤外,这些步骤保持不变。
步骤5.创建策略集。
ISE上的策略集自上而下进行评估,第一个满足策略集中条件集的策略集负责对网络设备发送的Radius Access-Request数据包的ISE响应。Cisco建议为每种类型的设备设置唯一的策略。评估用户身份验证和授权的条件发生在评估时。如果ISE具有外部身份源,则可用于授权类型。
典型的策略集创建方法如下:
- 导航到Policy > Policy Sets > +。
- 重命名 新策略集1。
- 将条件设置为对于此设备唯一。
- 展开Policy Set。
- 展开Authentication Policy以设置身份验证规则。外部源或内部用户是可作为身份源序列使用的示例,ISE将根据身份源序列检查用户。
- 身份验证策略已全部设置。此时可以保存策略。
- 展开Authorization Policy为用户添加授权条件。例如,检查特定AD组或ISE内部身份组。同样命名规则。
- 可以从下拉列表中选择授权规则的结果。
- 为供应商支持的不同访问类型创建多个授权规则。
设备列表
任何支持使用Radius进行设备管理的设备都可以添加在ISE上,只需对上一节中提到的所有步骤进行一些修改。因此,本文档包含使用本节中提供的信息的设备列表。本文档中提供的属性和值的列表既不详尽,也不具有权威性,可以随时更改,而无需更新本文档。请查阅供应商网站和供应商支持以进行验证。
聚合服务路由器(ASR)
无需为此创建单独的字典和VSA,因为它使用ISE上已存在的思科AV对。
属性:cisco-av-pair
值:shell:tasks="#<role-name>,<permission>:<process>"
用法:将<role-name>的值设置为路由器上本地定义的角色的名称。角色层次结构可以用树来描述,其中role#rootis位于树顶部,role#leap添加其他命令。如果为:shell:tasks="#root,则这两个角色可以组合并#leaf回。
权限也可以基于单个进程传回,这样用户就可以被授予某些进程的读取、写入和执行权限。例如,要授予用户对BGP进程的读写权限,请将值设置为:shell:tasks="#root,rw:bgp"。 属性的顺序并不重要;无论将该值设置为toshell:tasks="#root,rw:bgp"还是toshell:tasks="rw:bgp,#root",结果都相同。
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-Cisco |
cisco-av-pair |
字符串 |
shell:tasks="#root,#leaf,rwx:bgp,r:ospf" |
Cisco交换机IOS®和Cisco IOS® XE
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:cisco-av-pair
值:shell:priv-lvl=<level>
用法:将<level>的值设置为基本为要发送的权限数的数字。通常,如果发送15,则表示读写;如果发送7,则表示只读。
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-Cisco |
cisco-av-pair |
字符串 |
shell:priv-lvl=15 |
BlueCoat数据包成型器
属性:Packeter-AVPair
值:access=<level>
Usage:<level>是授予的访问权限级别。触摸访问等价于读写,而查看访问等价于只读。
使用下列值按本文档所示创建字典:
- 名称:打包程序
- 供应商ID:2334
- 供应商长度字段大小:1
- 供应商类型字段大小:1
输入属性的详细信息:
- 属性:Packeter-AVPair
- 描述:用于指定访问级别
- 供应商属性ID:1
- 方向:OUT
- 允许多个:错误
- 允许标记:未选中
- 属性类型:字符串
示例:将属性添加到授权配置文件(用于只读访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS数据包 |
Packeter-AVPair |
字符串 |
access=look |
示例:将属性添加到授权配置文件(用于读写访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS数据包 |
Packeter-AVPair |
字符串 |
access=touch |
BlueCoat代理服务器(AV/SG)
属性: Blue-Coat — 授权
值: <level>
Usage:<level>是授予的访问权限级别。0表示无访问,1表示只读访问,2表示读写访问。Blue-Coat-Authorization属性负责访问级别。
使用下列值按本文档所示创建字典:
- 名称:BlueCoat
- 供应商ID:14501
- 供应商长度字段大小:1
- 供应商类型字段大小:1
输入属性的详细信息:
- 属性:Blue-Coat组
- 供应商属性ID:1
- 方向:两者
- 允许多个:错误
- 允许标记:未选中
- 属性类型:无符号整数32(UINT32)
输入第二个属性的详细信息:
- 属性:Blue-Coat — 授权
- 描述:用于指定访问级别
- 供应商属性ID:2
- 方向:两者
- 允许多个:错误
- 允许标记:未选中
- 属性类型:无符号整数32(UINT32)
示例:将属性添加到授权配置文件(用于无访问权限)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-BlueCoat |
Blue-Coat组 |
UINT32 |
0 |
示例:将属性添加到授权配置文件(用于只读访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-BlueCoat |
Blue-Coat组 |
UINT32 |
1 |
示例:将属性添加到授权配置文件(用于读写访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-BlueCoat |
Blue-Coat组 |
UINT32 |
2 |
Brocade交换机
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:Tunnel-Private-Group-ID
值:U:<VLAN1>;T:<VLAN2>
用法:将<VLAN1>设置为数据VLAN的值。将<VLAN2>设置为语音VLAN的值。在本示例中,数据VLAN为VLAN 10,语音VLAN为VLAN 21。
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-IETF |
Tunnel-Private-Group-ID |
已标记的字符串 |
U:10;T:21 |
Infoblox
属性:Infoblox-Group-Info
值:<group-name>
Usage:<group-name>是授予用户权限的组的名称。必须在Infoblox设备上配置此组。在此配置示例中,组名称为MyGroup。
使用下列值按本文档所示创建字典:
- 名称:Infoblox
- 供应商ID:7779
- 供应商长度字段大小:1
- 供应商类型字段大小:1
输入属性的详细信息:
- 属性:Infoblox-Group-Info
- 供应商属性ID:009
- 方向:OUT
- 允许多个:错误
- 允许标记:未选中
- 属性类型:字符串
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-Infoblox |
Infoblox-Group-Info |
字符串 |
我的组 |
思科Firepower管理中心
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:cisco-av-pair
值:Class-[25]=<role>
用法:将<role>的值设置为FMC上本地定义的角色名称。在FMC上创建多个角色(例如管理员和只读用户),并将值分配给ISE上的属性以同样由FMC接收。
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-Cisco |
cisco-av-pair |
字符串 |
Class-[25]=NetAdmins |
Nexus交换机
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:cisco-av-pair
值:shell:roles="<role1> <role2>"
用法:将<role1>和<role2>的值设置为交换机上本地定义的角色名称。创建多个角色时,请使用空格字符分隔这些角色。当多个角色从AAA服务器传递回Nexus交换机时,结果是用户有权访问由所有三个角色联合定义的命令。
内置角色在配置用户帐户和RBAC中定义。
示例:将属性添加到授权配置文件。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-Cisco |
cisco-av-pair |
字符串 |
shell:roles="network-admin vdc-admin vdc-operator" |
无线LAN控制器(WLC)
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:Service-Type
值:管理(6)/ NAS-Prompt(7)
用法:要授予用户对无线局域网控制器(WLC)的读/写访问权限,该值必须为Administrative;对于只读访问,该值必须为NAS-Prompt。
有关详细信息,请参阅无线局域网控制器(WLC)上管理用户的RADIUS服务器身份验证配置示例
示例:将属性添加到授权配置文件(用于只读访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-IETF |
服务类型 |
枚举 |
NAS提示符 |
示例:将属性添加到授权配置文件(用于读写访问)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS-IETF |
服务类型 |
枚举 |
管理 |
数据中心网络管理器(DCNM)
更改身份验证方法后,必须重新启动DCNM。否则,它可以分配网络操作员权限而不是网络管理员。
无需为此创建单独的字典和VSA,因为它使用ISE上已经存在的RADIUS属性。
属性:cisco-av-pair
值:shell:roles=<role>
DCNM角色 |
RADIUS Cisco-AV-Pair |
用户 |
shell:角色= "network-operator" |
管理员 |
外壳:角色= "network-admin" |
音频代码
属性:ACL身份验证级别
值:ACL-Auth-Level = "<integer>"
Usage:<integer>是授予的访问权限级别。用户的ACL-Auth-UserLevel属性值为50,管理员的ACL-Auth-Level属性值为100,安全管理员的ACL-Auth-SecurityAdminLevel值为200。可以跳过这些名称,并且属性的值可以直接作为授权配置文件高级AV对的值提供。
使用下列值按本文档所示创建字典:
- 名称:音频代码
- 供应商ID:5003
- 供应商长度字段大小:1
- 供应商类型字段大小:1
输入属性的详细信息:
- 属性:ACL身份验证级别
- 描述:用于指定访问级别
- 供应商属性ID:35
- 方向:OUT
- 允许多个:错误
- 允许标记:未选中
- 属性类型:整数
示例:将属性添加到授权配置文件(针对用户)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS音频代码 |
ACL身份验证级别 |
整数 |
50 |
示例:将属性添加到授权配置文件(用于管理员)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS音频代码 |
ACL身份验证级别 |
整数 |
100 |
示例:将属性添加到授权配置文件(用于安全管理员)。
词典类型 |
RADIUS属性 |
属性类型 |
属性值 |
RADIUS音频代码 |
ACL身份验证级别 |
整数 |
200 |