此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍如何在软件定义访问(SDA)中启用TrustSec的允许列表(默认拒绝IP)模型。 本文档涉及多种技术和组件,包括身份服务引擎(ISE)、数字网络架构中心(DNAC)和交换机(边界和边缘)。
有两种可用的Trustsec模型:
Cisco 建议您了解以下主题:
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
以下是启用允许列表模型(默认拒绝IP)的步骤:
默认情况下,为网络设备授权配置未知安全组标记(SGT)。将其更改为TrustSec设备SGT可提供更高的可视性,并有助于为交换机发起的流量创建特定于SGACL。
导航至工作中心> TrustSec > Trustsec策略>网络设备授权,然后将其从未知更改为Trustsec_Devices
Interface tengigabitethernet 1/0/1 no cts role-based enforcement
注意:为简单起见,可以在DNAC中使用范围模板。否则,对于每台交换机,都需要在调配过程中手动完成。以下代码段显示如何通过DNAC模板执行此操作。
interface range $uplink1 no cts role-based enforcement
有关DNAC模板的详细信息,请参阅本文档的此URL。
其思想是,即使所有ISE都关闭,本地IP-SGT映射也可在交换机上使用。这可确保底层已打开,与关键资源的连接完好无损
第一步是将关键服务绑定到SGT(例如Basic_Network_Services/1000)。 其中一些服务包括:
示例:
cts role-based sgt-map <ISE/DNAC Subnet> sgt 1000 cts role-based sgt-map sgt 2 cts role-based sgt-map <Wireless OTT Infra> sgt 1000 cts role-based sgt-map <Underlay OTT AP Subnet> sgt 2 cts role-based sgt-map <Monitoring Tool IP> sgt 1000 cts role-based sgt-map vrf CORP_VN <Voice Gateway and CUCM Subnet> sgt 1000
SGT映射在使用SGT创建相关SGACL之前是无用的,因此,我们的下一步是创建SGACL,在ISE节点关闭时(当ISE服务关闭、SXP隧道关闭,因此SGACL和IP SGT映射不动态下载时)用作本地回退。
此配置将推送到所有边缘和边界节点。
回退基于角色的ACL/合同:
ip access-list role-based FALLBACK permit ip
TrustSec设备到TrustSec设备:
cts role-based permissions from 2 to 2 FALLBACK
上述SGACL确保交换矩阵交换机和底层IP之间的通信
TrustSec设备到SGT 1000:
cts role-based permissions from 2 to 1000 FALLBACK
上述SGACL确保交换机和接入点与ISE、DNAC、WLC和监控工具之间的通信
SGT 1000到TrustSec设备:
cts role-based permissions from 1000 to 2 FALLBACK
以上SGACL确保从接入点到ISE、DNAC、WLC和监控工具到交换机的通信
要求是拒绝网络上的大多数流量,并允许较小的范围。如果将默认拒绝与显式允许规则结合使用,则需要的策略更少。
导航至工作中心(Work Centers)> Trustsec > TrustSec策略(TrustSec Policy)>矩阵(Matrix)>默认(Default),并将其更改为在最终捕获规则中拒绝全部(Deny All)。
注意:此映像表示(默认情况下,所有列均为红色),已启用默认拒绝,并且在SGACL创建后只能允许选择性流量。
在SDA环境中,只应从DNAC GUI创建新SGT,因为ISE/DNAC中的SGT数据库不匹配导致大量数据库损坏。
要创建SGT,请登录到DNAC > Policy > Group-Based Access Control > Scalable Groups > Add Groups,页面将您重定向到ISE Scalable Group,单击Add,输入SGT名称并保存它。
通过PxGrid集成,DNAC中会反映相同的SGT。这与将来创建所有SGT的步骤相同。
在SDA环境中,应仅从DNAC GUI创建新SGT。
Policy Name: Domain_Users_Access Contract : Permit Enable Policy :√ Enable Bi-Directional :√ Source SGT : Domain Users (Drag from Available Security Group) Destination SGT: Domain_Users, Basic_Network_Services, DC_Subnet, Unknown (Drag from Available Security Group) Policy Name: RFC_Access Contract : RFC_Access (This Contract contains limited ports) Enable Policy :√ Enable Bi-Directional :√ Source SGT : Domain Users (Drag from Available Security Group) Destination SGT: RFC1918 (Drag from Available Security Group)
要创建合同,请登录到DNAC,然后导航至策略>合同>添加合同>添加所需协议,然后单击保存。
要创建合同,请登录DNAC并导航到Policy > Group-Based Access Control > Group-Based-Access-Policies > Add Policies > Create policy(含给定信息),现在单击Save ,然后单击Deploy。
从DNAC配置SGACL/合同后,SGACL/合同会自动反映在ISE中。下面是SGT的单向矩阵视图示例。
SGACL矩阵(如下图所示)是允许列表(默认拒绝)模型的示例视图。
要验证ISE收到的交换机SGT,请运行以下命令:show cts environmental-data
要验证上行链路接口上的实施,请运行以下命令:
要验证本地配置的IP-SGT映射,请运行以下命令:sh cts role-based sgt-map all
要验证FALLBACK SGACL,请运行以下命令:sh cts role-based permission
注意:ISE推送的SGACL比本地SGACL具有优先级。
要验证允许列表(默认拒绝)模型,请运行以下命令:sh cts role-based permission
要验证从ISE下载的SGACL,请运行以下命令:sh cts role-based permission
要验证从ISE下载的SGACL,请运行以下命令:show access-list <ACL/Contract Name>
要验证SGACL策略命中,请运行以下命令:Show cts role-based counter
如果两个ISE节点都关闭,ISE接收的IP到SGT映射将被删除,所有DGT都标记为未知,并且存在的所有用户会话在5-6分钟后停止。
注意:仅当sgt(xxxx)->未知(0)SGACL访问限于DHCP、DNS和Web代理端口时,此问题才适用。
解决方案:
现在,如果两个ise节点都关闭,SGACL sgt—>未知命中,且存在的会话完好无损。
SIP上发生了IP转换扩展,IP到IP之间的RTP上发生了实际语音通信。CUCM和语音网关已添加到DGT_Voice。
解决方案:
DNAC为交换机调配关键VLAN以用于数据,根据配置,在ISE中断期间的所有新连接都将获得关键VLAN和SGT 3999。Default Deny in trustsec策略限制新连接访问任何网络资源。
解决方案:
使用DNAC模板在所有边缘和边界交换机上推送关键SGT的SGACL
cts role-based permissions from 0 to 3999 FALLBACK cts role-based permissions from 3999 to 0 FALLBACK
这些命令将添加到配置部分。
注意:所有命令都可组合到一个模板中,并可在调配期间推送。
由于ISE节点关闭,计算机进入关键VLAN后,每3-4分钟(观察到最多10个丢包)就会出现数据包丢包,用于关键VLAN中的所有终端。
观察结果:当服务器为DEAD时,身份验证计数器增加。当服务器标记为DEAD时,客户端尝试使用PSN进行身份验证。
解决方案/解决方法:
理想情况下,如果ISE PSN节点关闭,则不应从终端发出任何身份验证请求。
在RADIUS服务器下使用DNAC推送此命令:
automate-tester username auto-test probe-on
在交换机中使用此命令,它会定期向RADIUS服务器发送测试身份验证消息。它从服务器查找RADIUS响应。无需成功消息 — 身份验证失败就足以了,因为它表明服务器处于活动状态。
DNAC最终模板:
interface range $uplink1 no cts role-based enforcement ! . cts role-based sgt-map <ISE Primary IP> sgt 1102 cts role-based sgt-map <Underlay Subnet> sgt 2 cts role-based sgt-map <Wireless OTT Subnet>sgt 1102 cts role-based sgt-map <DNAC IP> sgt 1102 cts role-based sgt-map <SXP Subnet> sgt 2 cts role-based sgt-map <Network Monitoring Tool IP> sgt 1102 cts role-based sgt-map vrf CORP_VN <Voice Gateway Subnet> sgt 1102 ! ip access-list role-based FALLBACK permit ip ! cts role-based permissions from 2 to 1102 FALLBACK cts role-based permissions from 1102 to 2 FALLBACK cts role-based permissions from 2 to 2 FALLBACK cts role-based permissions from 0 to 3999 FALLBACK cts role-based permissions from 3999 to 0 FALLBACK
注意:边缘节点中的所有上行链路接口都配置为不实施,并且假设上行链路仅连接到边界节点。在边界节点上,需要配置通往边缘节点的上行链路接口,而无需实施,这必须手动完成。