简介
本文档介绍如何在具有身份服务引擎(ISE)2.0及更高版本的思科自适应安全设备(ASA)上配置TACACS+身份验证和命令授权。ISE使用本地身份存储来存储资源,例如用户、组和终端。
先决条件
要求
Cisco 建议您了解以下主题:
- ASA防火墙完全正常运行
- ASA和ISE之间的连接
- ISE服务器已引导
使用的组件
本文档中的信息基于以下软件和硬件版本:
- 思科身份服务引擎2.0
- 思科ASA软件版本9.5(1)
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
配置
配置的目的是:
- 通过内部身份库对SSH用户进行身份验证
- 授权ssh用户,使其在登录后进入特权执行模式
- 检查并将每个执行的命令发送到ISE进行验证
网络图

配置
配置ISE进行身份验证和授权
创建两个用户。用户administrator是ISE上网络管理本地身份组的一部分。此用户具有完全的CLI权限。用户user是ISE上网络维护团队本地身份组的一部分。此用户只能执行show命令和ping。
添加网络设备
导航到工作中心(Work Centers)>设备管理(Device Administration)>网络资源(Network Resources)>网络设备(Network Devices)。单击 Add。提供名称、IP地址,选中TACACS+身份验证设置复选框,并提供共享密钥。可以选择指定设备类型/位置。

配置用户身份组
导航到工作中心(Work Centers)>设备管理(Device Administration)>用户身份组(User Identity Groups)。单击 Add。提供名称,然后点击提交。

重复相同步骤以配置网络维护团队用户身份组。
配置用户
导航到工作中心>设备管理>身份>用户。单击 Add。提供名称,登录密码指定用户组并点击提交。

重复这些步骤以配置用户用户并分配网络维护团队用户身份组。
启用设备管理服务
导航到管理>系统>部署。选择所需的节点。选中Enable Device Admin Service复选框,然后单击Save。

注意:对于TACACS,您需要安装单独的许可证。
配置TACACS命令集
配置了两个命令集。第一个PermitAllCommands,用于administrator用户,该用户允许设备上的所有命令。用户的第二个PermitPingShowCommands,该用户仅允许show和ping命令。
1.导航到工作中心>设备管理>策略结果> TACACS命令集。单击 Add。提供名称PermitAllCommands,选择Permit any command that is not listed below复选框,然后点击Submit。

2.导航到工作中心>设备管理>策略结果> TACACS命令集。单击 Add。提供名称PermitPingShowCommands,单击Add并允许show、ping和exit命令。默认情况下,如果Arguments留空,则包括所有参数。单击 submit。

配置TACACS配置文件
将配置单个TACACS配置文件。实际的命令实施将通过命令集完成。导航到工作中心(Work Centers)>设备管理(Device Administration)>策略结果(Policy Results)> TACACS配置文件(TACACS Profiles)。单击 Add。提供名称ShellProfile,选择Default Privilege复选框,然后输入值15。单击Submit。

配置TACACS授权策略
默认情况下,“身份验证策略”指向All_User_ID_Stores,其中包括本地存储,因此它保持不变。
导航至工作中心(Work Centers)>设备管理(Device Administration)>策略集(Policy Sets)>默认(Default)>授权策略(Authorization Policy)>编辑(Edit)>在上述位置插入新规则(Insert New Rule Above)。

配置两个授权规则,第一个规则根据Network Admins User Identity Group membership分配TACACS配置文件ShellProfile和命令Set PermitAllCommands。第二个规则根据网络维护团队用户身份组成员资格分配TACACS配置文件ShellProfile和命令Set PermitPingShowCommands。

配置Cisco ASA防火墙进行身份验证和授权
1.使用username命令创建具有完全回退权限的本地用户,如下所示
ciscoasa(config)# username cisco password cisco privilege 15
2.定义TACACS服务器ISE,指定接口、协议IP地址和tacacs密钥。
aaa-server ISE protocol tacacs+
aaa-server ISE (mgmt) host 10.48.17.88
key cisco
注意:服务器密钥应与ISE服务器上之前定义的密钥匹配。
3.如图所示,使用test aaa命令测试TACACS服务器可达性。
ciscoasa# test aaa authentication ISE host 10.48.17.88 username administrator Krakow123
INFO: Attempting Authentication test to IP address <10.48.17.88> (timeout: 12 seconds)
INFO: Authentication Successful
上一个命令的输出显示TACACS服务器可访问,且用户已成功通过身份验证。
4.配置ssh、exec授权和命令授权的身份验证,如下所示。使用aaa authorization exec authentication-server auto-enable,您将自动处于特权EXEC模式。
aaa authentication ssh console ISE
aaa authorization command ISE
aaa authorization exec authentication-server auto-enable
注意:使用上述命令,身份验证在ISE上完成,用户直接进入权限模式,然后进行命令授权。
5.在管理接口上允许shh。
ssh 0.0.0.0 0.0.0.0 mgmt
验证
Cisco ASA防火墙验证
1.以管理员身份通过SSH连接到ASA防火墙,该管理员属于具有完全访问权限的用户身份组。Network Admins组映射到ISE上设置的ShellProfile和PermitAllCommands命令。尝试运行任何命令以确保完全访问。
EKORNEYC-M-K04E:~ ekorneyc$ ssh administrator@10.48.66.202
administrator@10.48.66.202's password:
Type help or '?' for a list of available commands.
ciscoasa#
ciscoasa# configure terminal
ciscoasa(config)# crypto ikev1 policy 10
ciscoasa(config-ikev1-policy)# encryption aes
ciscoasa(config-ikev1-policy)# exit
ciscoasa(config)# exit
ciscoasa#
2.以属于有限访问用户身份组的用户身份通过ssh连接到ASA防火墙。网络维护组映射到ISE上设置的ShellProfile和PermitPingShowCommands命令。尝试运行任何命令以确保只能发出show和ping命令。
EKORNEYC-M-K04E:~ ekorneyc$ ssh user@10.48.66.202
administrator@10.48.66.202's password:
Type help or '?' for a list of available commands.
ciscoasa#
ciscoasa# show version | include Software
Cisco Adaptive Security Appliance Software Version 9.5(1)
ciscoasa# ping 8.8.8.8
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/24/30 ms
ciscoasa# configure terminal
Command authorization failed
ciscoasa# traceroute 8.8.8.8
Command authorization failed
ISE 2.0验证
1.导航到操作> TACACS Livelog。确保看到以上所做的尝试。

2.单击其中一个红色报告的详细信息,可以看到之前执行的失败命令。

故障排除
Error:Failed-Attempt:命令授权失败
检查SelectedCommandSet属性以验证预期命令集是否已由授权策略选择
相关信息
技术支持和文档 - Cisco Systems
ISE 2.0版本说明
ISE 2.0硬件安装指南
ISE 2.0升级指南
ACS至ISE迁移工具指南
ISE 2.0 Active Directory集成指南
ISE 2.0引擎管理员指南