伊势自定义配置文件:可以't See The Forest From The Trees

当涉及到对端点进行概要分析时,我已经注意到,即使是一些以ISE为重点的工程师,甚至都将其视为幕后发生的神奇而模糊的事情。这也不是特定于ISE的。我认为我从未见过网络访问控制产品具有100%的配置保真度或客户期望的粒度。我想说,ISE的内置配置文件可能至少从较高级别识别了90%的端点。这篇博客文章的目的是帮助您为您删除一些“幕后”魔术,以便您进行分析工作。

我要做的第一件事是确保在ISE和网络设备中正确打开探针。假设它们是,我下一步要做的就是查看ISE正在接收的所有端点及其属性。您可以在ISE GUI中一对一地单击设备,但这非常繁琐,并且如果单独查看类似的端点,则很难比较它们。我要使用的技巧是:从ISE提取端点转储。我在2019年Cisco Live之前制作了以下视频,它演示了如何提取ISE看到的所有端点以及已为这些端点收到的所有配置文件属性:

</iframe>" data-provider-name="YouTube">


在下载的CSV文件中,您会注意到您获得了许多不同的信息列。很容易不知所措。您必须消除一些杂音。我通常会删除除以下内容之外的所有列:

  • 主机名 -从DHCP学习。有时默认主机名会告诉您设备的类型,或者您的环境中是否对某些设备使用了命名约定,则可以将其用作配置文件中的属性。

  • 匹配政策 -我通常将其保留在此处,以便查看端点是否已正确配置,或者即使它已在ISE中内置了配置文件。

  • OUI -帮助我确定设备的制造商

  • dhcp-class-identifier -有些供应商实际上会在类标识符中说明设备,型号或其他信息,这些信息可以用作配置文件的一部分。类标识符的一个示例是“ DolbyAudioHub”-这将告诉我它是哪种端点类型。

  • dhcp参数请求列表 -有助于确定设备上使用哪种操作系统。 Windows,Mac OSX,Android和iOS具有使用的某些DHCP参数列表,可以帮助您确定该端点正在运行的操作系统。

  • 用户代理 -这是从网络流量中收集的,不仅可以帮助我们确定操作系统,还可以帮助确定设备的型号。许多Android和iOS设备都会在浏览器用户代理中说明型号。例如“ Android /…/ Nexus 5 Build”-这个例子告诉我这是运行Android操作系统的Nexus 5手机。

  • MDM制造商 -如果您在环境中使用MDM,则此数据可为您提供制造商信息,例如端点是Android还是Apple设备。此信息比其他任何信息都具有更多信息,因为您不能在配置文件政策中使用它。

  • MDM模型 -如果您在环境中使用MDM,则此数据可以为您提供模型信息,例如它是iPhone,iPad等。此信息比其他任何信息都具有更多信息,因为您不能在配置文件政策中使用它。

  • MDMOS版本 -如果您在环境中使用MDM,则此数据可以为您提供移动OS版本,例如iOS和Android OS版本。此信息比其他任何信息都具有更多信息,因为您不能在配置文件政策中使用它。

  • cdpCache平台 -如果设备使用CDP,则通常可以从此处确定此端点的设备型号或类型。尽管CDP是Cisco专有协议,但许多非Cisco设备都使用它-VMWare将是使用CDP的非Cisco平台的一个很好的例子。例如“ cisco AIR-AP3802I-B-K9”-从此示例中,我可以看到它是Cisco 3802接入点。

  • cdpCacheVersion -如果设备使用CDP,则可以告诉您正在运行的OS版本以及有关端点型号的更多信息。一个示例可能是“ Cisco AP软件,C3700”-该示例告诉我这是一个Cisco 3700系列接入点。

  • cdpCacheDeviceId -如果设备使用CDP,则可以告诉您设备的主机名。有时,设备类型在该主机名中-例如,“ rtr-4451”可能最终是ISR4451。

  • lldpSystemDescription -如果端点使用LLDP,则可以从LLDP系统描述中收集型号,操作系统版本和其他信息。一个示例可能是“ Cisco AP软件,C3700”-该示例告诉我这是一个Cisco 3700系列接入点。

  • lldpSystemName -如果设备使用LLDP,则可以告诉您设备的主机名。有时,设备类型在该主机名中-例如,“ rtr-4451”可能最终是ISR4451。

  • hrDeviceDescr -如果在端点上启用了SNMP,并且ISE进行了SNMP NMAP扫描,则可能会从设备说明中收集诸如型号和制造商之类的信息。例如“ Canon iPF780”-此示例(和Google!)告诉我这是一台佳能大型打印机,型号为iPF780

  • sysDescr -如果在端点上启用了SNMP,并且ISE进行了SNMP NMAP扫描,我们将获得有关此端点类型的详细说明,例如“ APC管理中心”或类似的说明。

  • AD主机存在 -如果已加入域,则将其标记为TRUE。如果我想指定诸如以下内容之间的区别,有时会创建子配置文件

  • AD操作系统 -如果端点已加入Active Directory域,并且AD探针已打开,则此探针将告诉您端点上使用的是什么操作系统。例如“ Mac OS X”或“ Windows 10”

  • 设备平台 -如果端点通过AnyConnect在VPN上连接,则ISE可以收集其他设备平台信息。设备平台可能会为您提供有关端点是Mac设备(mac-intel)还是Windows设备(win)的信息

  • 设备类型 -如果端点正在使用AnyConnect在VPN上进行连接,则ISE可以收集有关设备类型的更多信息,例如可以进一步用于性能分析的“ MacbookPro”还是“ iMac”。

在进入端点转储CSV之前,让我们退后一步,看看分析逻辑。个人资料不必平坦。您可以嵌套您的概要文件,以更具体地了解模型或端点类型。我创建了以下原始图形来说明:

使用上述逻辑,可以使用嵌套配置文件将端点配置为Cisco 7942 IP电话:

  1. 端点首先匹配根(思科设备) 通过匹配该配置文件中列出的规则之一来配置该配置文件。

  2. 如果端点满足以下要求 思科设备,如果它符合IP地址下列出的其他属性之一,则可以将其进一步配置为IP电话。 思科IP电话 个人资料。仅当端点已经与父配置文件匹配时,才能与该配置文件进行匹配(思科设备)。否则,将不会评估端点 思科IP电话.

  3. 匹配后 思科IP电话 配置文件,可以进一步评估端点并将其与 思科IP电话7942 基于具有符合条件的属性的配置文件 思科IP电话7942 嵌套的个人资料。

当然,并非所有属性都可以加权相同。每次匹配配置文件规则时,都会增加确定此设备类型是否为相关配置文件的确定性因素。您可以决定创建的配置文件的最低确定性因子是多少。在创建自定义配置文件时,您可以手动设置此配置文件的最小确定性因子以及所创建的每个规则的确定性因子。您可以根据匹配的规则或属性说明确定性因素将增加多少。如果端点与两个不同的配置文件匹配,则它将与确定性系数最高的配置文件匹配。为了确保您的自定义配置文件比内置的Cisco配置文件具有更大的权重,建议您增加确定性因素-1000或更大。

再一次,让我们说明一下确定性因素如何与我的粗略设计技能一起工作:


在上图中,这是将iPad与iPad配置文件匹配的方式:

  1. 端点连接到网络,并首先匹配 苹果设备 的确定性因子为80。由于此配置文件的最小确定性因子为40,因此该端点低于 苹果设备 个人资料。 伊势检测以下属性:

    1. 用户代理包含“ Mac”(确定性因子+40)

    2. DHCP请求的参数与iOS设备的指纹匹配(确定性因子+40)

  2. 然后,此端点与 苹果iOS设备 嵌套在Apple设备配置文件下的配置文件,确定性因子为100。这是由于ISE检测到以下属性:

    1. 用户代理还包含“ 的iPad”(确定性因子+50)

    2. DHCP请求的参数与iOS设备的指纹匹配(确定性因子+50)

  3. 最后,端点匹配 的iPad 配置文件仅满足该嵌套配置文件的确定性因子100。它这样做是为了评估以下属性:

    1. 用户代理包含“ 的iPad”(确定性因子+50)

    2. 主机名包含“ 的iPad”(确定性因子增加50)

希望那不会太令人困惑。我想与任何阅读本文的人分享以上几点的要点:

  • 您可以使用嵌套的配置文件来更具体地了解端点类型

  • 为了匹配嵌套的配置文件,端点需要首先匹配父配置文件。

  • 由于创建的所有属性都不相等,因此您可以权衡配置文件中的那些属性,以使某些属性比其他属性具有更大的价值。

  • 创建自定义配置文件时,请确保特定因素和属性的权重较高(100或更大),因此自定义配置文件比任何内置的Cisco配置文件都更可取。


回到我们的端点转储,如果您删除了除上面提到的那些列以外的所有列,它可能看起来还是一团糟:

我接下来要做的就是清理此怪物电子表格的视图。我建议在Excel电子表格上突出显示标题行。然后在Excel顶部,导航到 视图.

然后点击 冻结窗格 然后选择 冻结顶行 从下拉菜单中。无论您向下滚动电子表格多远,这都将使第一行显示在视图中。

我接下来要做的是通过单击左上角的三角形突出显示所有内容。

首页 在顶部栏上,单击 自动换行 确保文本被包裹在单元格中。您可能需要重新调整列的大小以使其更具可读性。

现在,单元格应该更易读,但是电子表格的结构仍然不太合理,如下图所示:

Endpoint-Dump-6.jpg

我建议您选择页面上的任何列:

然后导航到 数据 在顶部菜单上,然后单击 分类.

从排序警告弹出窗口中,选择选项 扩展选择。确保选中复选框 我的数据有标题。 我通常喜欢这样对数据转储进行排序:

  1. OUI

  2. dhcp参数请求列表

  3. dhcp-class-identifer

  4. 用户代理

格式化和整理CSV文件后,通常可以缩小电子表格并更轻松地识别类似的属性。让我们以以下端点为例。

所有端点都显示为在ISE中被标识为“未知”,但是我们可以立即注意到一些在所有端点之间都相似的事情:

  • MAC OUI似乎是AAEON技术-SCADA和PLC设备的制造商

  • dhcp-class-identifier还将设备标识为PLC设备

  • 端点都在请求相同的dhcp参数请求列表

利用这些信息,我们可以通过将这三个属性绑定在一起来轻松创建自定义配置文件。

将端点转储并组织起来后,就可以识别相同类型的端点之间的通用属性或标识端点类型的属性。让我们看一下端点转储的另一部分。

在上面的屏幕截图中,您可以按如下方式细分属性:

  • 绿色-表示这是某种类型的Apple设备

  • 紫色-明确表示它是iOS设备

  • 黄色-标识它是哪种iOS设备:iPad

使用不同的属性,您可以创建一个大型的大型配置文件,也可以嵌套配置文件以更细化设备类型。

整理好将用于自定义配置文件的属性后,您可以在ISE中的以下位置构建配置文件 政策>Profiling。你可以看着我在视频上创建自定义个人资料 这里 如果您需要看一个基本的例子。

希望这篇博客文章打破了剖析背后的奥秘,并为您提供了一些有关如何更好地组织和识别属性的技巧,以便您可以在剖析中使用它们。