简介
本文档介绍如何配置Catalyst 9800无线LAN控制器接入点(AP)身份验证策略。
先决条件
要求
Cisco 建议您了解以下主题:
- 9800 WLC
- 对无线控制器的命令行界面(CLI)访问
使用的组件
思科推荐以下硬件和软件版本:
- 9800 WLC v17.3
- AP 1810W
- AP 1700
- 身份服务引擎(ISE) v2.2
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
要授权接入点(AP),需要根据9800无线局域网控制器的本地数据库或外部远程身份验证拨入用户服务(RADIUS)服务器对AP的以太网MAC地址进行授权。
此功能可确保只有授权接入点(AP)才能加入Catalyst 9800无线LAN控制器。本文档不介绍网状网(1500系列)AP的情况,这些无线接入点需要MAC过滤器条目才能加入控制器,但不跟踪典型无线接入点授权流程(请参阅参考资料)。
配置
网络图
配置
MAC AP授权列表-本地
授权的AP的MAC地址本地存储在9800 WLC中。
步骤1:创建本地授权凭证下载方法列表。
导航到Configuration > Security > AAA > AAA Method List > Authorization > + Add。
第二步:启用AP MAC授权。
导航到Configuration > Security > AAA > AAA Advanced > AP Policy。 启用Authorize APs against MAC 并选择第1步中创建的Authorization Method List。
第三步:添加AP以太网MAC地址。
导航到Configuration > Security > AAA > AAA Advanced > Device Authentication > MAC Address > + Add。
注意:在版本16.12的Web UI(xx:xx:xx:xx:xx:xx:xx(或) xxxx.xxxx.xxxx(或) xx-xx-xx-xx-xx-xx)中输入时,AP以太网MAC地址必须采用以下格式之一。在版本17.3中,它们的格式必须为xxxxxxxxxxxx,不带任何分隔符。在任何版本中,CLI格式始终为xxxxxxxxxxxx(在16.12中,Web UI删除配置中的分隔符)。Cisco bug ID CSCvv43870允许在CLI或Web UI的更高版本中使用任何格式。
CLI:
# config t
# aaa new-model
# aaa authorization credential-download <AP-auth> local
# ap auth-list authorize-mac
# ap auth-list method-list <AP-auth>
# username <aaaabbbbcccc> mac
MAC AP授权列表-外部RADIUS服务器
9800 WLC配置
授权的AP的MAC地址存储在外部RADIUS服务器(在本示例中为ISE)上。
在ISE上,您可以将AP的MAC地址注册为用户名/密码或终端。在步骤中,系统会指导您选择使用其中一种方式。
GUI:
步骤1:声明RADIUS服务器。
导航到Configuration > Security > AAA > Servers / Groups > RADIUS > Servers > + Add,然后输入RADIUS服务器信息。
如果您计划将来使用中央 Web 身份验证(或任何一种需要 CoA 的安全措施),请确保已启用对 CoA 的支持。
第二步:将RADIUS服务器添加到RADIUS组。
导航到Configuration > Security > AAA > Servers / Groups > RADIUS > Server Groups > + Add。
要让ISE将AP MAC地址作为用户名进行身份验证,请将MAC-Filtering保留为none。
要让ISE将AP MAC地址验证为终端,请将MAC-Filtering更改为MAC。
第三步:创建授权凭证下载方法列表。
导航到Configuration > Security > AAA > AAA Method List > Authorization > + Add。
第四步:启用AP MAC授权。
导航到Configuration > Security > AAA > AAA Advanced > AP Policy。 启用Authorize APs against MAC 并选择第3步中创建的Authorization Method List。
CLI:
# config t
# aaa new-model
# radius server <radius-server-name>
# address ipv4 <radius-server-ip> auth-port 1812 acct-port 1813
# timeout 300
# retransmit 3
# key <shared-key>
# exit
# aaa group server radius <radius-grp-name>
# server name <radius-server-name>
# exit
# aaa server radius dynamic-author
# client <radius-server-ip> server-key <shared-key>
# aaa authorization credential-download <AP-auth> group <radius-grp-name>
# ap auth-list authorize-mac
# ap auth-list method-list <AP-ISE-auth>
ISE配置
步骤1:要将9800 WLC添加到ISE,请执行以下操作:
在ISE上声明9800 WLC
选择根据身份验证配置AP的MAC地址所需的步骤:
配置USE以将MAC地址作为终端进行身份验证
将ISE配置为以用户名/密码对MAC地址进行身份验证
将ISE配置为将MAC地址作为终端进行身份验证
第2步:(可选)创建接入点的身份组。
由于9800不发送带AP授权的NAS-port-Type属性(Cisco bug IDCSCvy74904), ISE无法将AP授权识别为MAB工作流程。因此,如果AP的MAC地址位于终端列表中,则无法对AP进行身份验证,除非您将MAB工作流程修改为不需要ISE上的NAS-PORT-type属性。
导航到管理员>网络设备配置文件,并创建新设备配置文件。启用RADIUS,并为有线MAB添加service-type=call-check。您可以从思科原始配置文件中复制其余内容。其思路是对于有线MAB没有nas端口类型条件。
返回9800的网络设备条目,将其配置文件设置为新创建的设备配置文件。
导航到管理>身份管理> Groups >终端身份组> + Add。
选择一个名称并单击Submit。
第三步:将AP以太网MAC地址添加到其终端身份组。
导航到工作中心(Work Centers) >网络接入(Network Access) >身份(Identities) >终端(Endpoints) > +。
输入所需信息。
第四步:验证包含内部端点的默认身份验证规则上使用的身份库。
A.导航到策略>身份验证,然后记下身份库。
B.导航到管理>身份管理>身份源序列>身份名称。
C.确保内部终端属于它。否则,请添加它们。
配置ISE以将MAC地址作为用户名/密码进行身份验证
不建议使用此方法,因为它需要较低的密码策略以允许与用户名相同的密码。
但是,如果无法修改网络设备配置文件,它可以成为一种解决方法。
第2步:(可选)创建接入点的身份组。
导航到管理>身份管理> Groups >用户身份组> + Add。
选择一个名称并单击Submit。
第三步:验证当前密码策略是否允许您添加MAC地址作为用户名和密码。
导航到管理>身份管理>设置>用户身份验证设置>密码策略,确保至少禁用以下选项:
注意:如果密码未更改,您也可以禁用在XX天后禁用用户帐户选项。因为这是MAC地址,所以密码从不更改。
第四步:添加AP以太网MAC地址。
导航到管理>身份管理>身份>用户> + Add。
输入所需信息。
注意:Name 和Login Passwordfields必须是AP的以太网MAC地址(全部为小写,不含分隔符)。
验证AP的授权策略
导航到策略>授权(如图所示)。
插入新规则,如图所示。
首先,选择规则名称和存储接入点的身份组(AccessPoints)。 如果您决定将MAC地址作为用户名密码进行身份验证,请选择User Identity Groups;如果您选择将AP MAC地址作为终端进行身份验证,请选择Endpoint Identity Groups。
之后,选择其他导致授权过程符合此规则的条件。在本示例中,如果授权进程使用服务类型呼叫检查并且身份验证请求来自IP地址10.88.173.52,则授权进程符合此规则。
最后,选择分配给符合该规则的客户端的授权配置文件,点击Donee并保存,如图所示。
注意:已加入控制器的AP不会失去关联。但是,如果在启用授权列表后,它们失去与控制器的通信并尝试重新加入,则会完成身份验证过程。如果它们的MAC地址未在本地或RADIUS服务器中列出,则它们无法重新加入控制器。
验证
验证9800 WLC是否已启用AP身份验证列表。
# show ap auth-list
Authorize APs against MAC : Disabled
Authorize APs against Serial Num : Enabled
Authorization Method List : <auth-list-name>
验证radius配置:
# show run aaa
故障排除
WLC 9800提供无间断跟踪功能。这样可以确保始终记录所有AP加入相关的错误、警告和通知级别消息,并且可以在发生事故或故障情况后查看日志。
注意:生成的日志量从几个小时到几天不等,呈追溯性变化。
要查看9800 WLC在默认情况下收集的跟踪,可以按照以下步骤通过SSH/Telnet连接到9800 WLC。(确保您将会话记录到文本文件)。
步骤1:检查控制器的当前时间,这样您就可以跟踪问题发生时的登录时间。
# show clock
第二步:根据系统配置的指示,从控制器缓冲区或外部系统日志收集系统日志。这样可以快速查看系统运行状况和错误(如有)。
# show logging
第三步:验证是否启用了任何调试条件。
# show debugging
IOSXE Conditional Debug Configs:
Conditional Debug Global State: Stop
IOSXE Packet Trace Configs:
Packet Infra debugs:
Ip Address Port
------------------------------------------------------|----------
注意:如果看到列出了任何条件,则意味着遇到已启用条件的所有进程(MAC地址、IP地址等)的跟踪都会记录到调试级别。这会增加日志量。因此,建议在非主动调试时清除所有条件.
第四步:假设测试的MAC地址未列为条件。在步骤3中,收集特定无线电MAC地址的“永远在线”通知级别跟踪。
# show logging profile wireless filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file always-on-<FILENAME.txt>
您可以显示会话中的内容,也可以将文件复制到外部TFTP服务器。
# more bootflash:always-on-<FILENAME.txt>
or
# copy bootflash:always-on-<FILENAME.txt> tftp://a.b.c.d/path/always-on-<FILENAME.txt>
条件调试和无线电主动跟踪
如果永远在线(always-on)跟踪不能为您提供足够的信息来确定所调查问题的触发因素,您可以启用条件调试并捕获Radio Active (RA)跟踪,从而为与指定条件(本例中为客户端MAC地址)交互的所有进程提供调试级别跟踪。
第五步:确保没有启用调试条件。
# clear platform condition all
第六步:启用要监控的无线客户端MAC地址的调试条件。
此命令开始监控提供的MAC地址达30分钟(1800秒)。您可以选择延长监控时间,最多监控 2085978494 秒。
# debug wireless mac <aaaa.bbbb.cccc> {monitor-time <seconds>}
注意:要同时监控多个客户端,请对每个MAC地址运行debug wireless MAC <aaaa.bbbb.cccc>命令。
注意:您不会在终端会话中看到客户端活动的输出,因为所有内容都在内部缓冲以备日后查看。
步骤 7.重现要监控的问题或行为。
步骤 8如果在默认或配置的监控时间开启之前重现问题,请停止调试。
# no debug wireless mac <aaaa.bbbb.cccc>
一旦监控时间过去或调试无线停止,9800 WLC将生成一个本地文件,其名称为:
ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
步骤 9 收集 MAC 地址活动的文件。 您可以将 ra trace.log 复制到外部服务器,也可以直接在屏幕上显示输出。
检查RA跟踪文件的名称:
# dir bootflash: | inc ra_trace
将文件复制到外部服务器:
# copy bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log tftp://a.b.c.d/ra-FILENAME.txt
显示内容:
# more bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
步骤 10如果根本原因仍不明显,请收集内部日志,这些日志是调试级别日志的更详细视图。您无需再次调试客户端,因为您只需进一步详细查看已收集和内部存储的调试日志。
# show logging profile wireless internal filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file ra-internal-<FILENAME>.txt
注意:此命令输出返回所有进程的所有日志记录级别的跟踪,而且非常大。在解析跟踪信息时如需帮助,请联系 Cisco TAC。
您可以将 ra-internal-FILENAME.txt 复制到外部服务器,也可以直接在屏幕上显示输出。
将文件复制到外部服务器:
# copy bootflash:ra-internal-<FILENAME>.txt tftp://a.b.c.d/ra-internal-<FILENAME>.txt
显示内容:
# more bootflash:ra-internal-<FILENAME>.txt
步骤 11删除调试条件:
# clear platform condition all
注意:请确保在故障排除会话后始终删除调试条件。
参考
将网状AP连接至9800 WLC