此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍在无线局域网控制器(WLC)上完成中央网络身份验证(CWA)所使用的配置示例。
它由此处提供的更完整的访客部署指南取代:https://communities.cisco.com/docs/DOC-77590
本文档没有任何特定的要求。
本文档中的信息基于以下软件和硬件版本:
Web身份验证的第一种方法是本地Web身份验证。在这种情况下,WLC将HTTP流量重定向到内部或外部服务器,在该服务器中系统会提示用户进行身份验证。然后,WLC获取凭证(在外部服务器的情况下通过HTTP GET请求发回)并进行RADIUS身份验证。对于访客用户,需要外部服务器(如身份服务引擎(ISE)),因为门户提供设备注册和自助调配等功能。该流程包括以下步骤:
此流程包括多个重定向。新方法是使用CWA。该流程包括以下步骤:
使用的设置为:
WLC配置相当简单。使用特技(与交换机上的特技相同)从ISE获取动态身份验证URL(因为它使用授权更改(CoA),因此必须创建会话,并且会话ID是URL的一部分)。 配置SSID以使用MAC过滤。配置ISE以返回access-accept,即使找不到MAC地址,它也会为所有用户发送重定向URL。
除此之外,必须启用ISE网络准入控制(NAC)和身份验证、授权和记帐(AAA)覆盖。ISE NAC允许ISE发送CoA请求,该请求指示用户现在已通过身份验证并能够访问网络。它还用于状态评估,在这种情况下,ISE根据状态结果更改用户配置文件。
确保RADIUS服务器已启用CoA支持(默认情况下)。
最后一步是创建重定向ACL。此ACL在ISE的access-accept中引用,并定义应重定向的流量(ACL拒绝)和不应重定向的流量(ACL允许)。 在此,您只会阻止流量重定向到ISE。您可能希望更具体,并且仅阻止端口8443(访客门户)上的ISE的流量进出,但如果用户尝试访问端口80/443上的ISE,则仍然重定向。
注意:早期版本的WLC软件(如7.2或7.3)不要求您指定域名系统(DNS),但更高的代码版本要求您允许该重定向ACL上的DNS流量。
WLC上的配置现在已完成。
在ISE上,必须创建授权配置文件。然后,配置身份验证和授权策略。WLC应已配置为网络设备。
在授权配置文件中,输入之前在WLC上创建的ACL的名称。
确保ISE接受来自WLC的所有MAC身份验证,并确保即使未找到用户也会追求身份验证。
在策略(Policy)>策略集(Policy Sets)>默认策略集(Default Policy Set)下,单击验证(Authentication)。
下图显示如何配置身份验证策略规则的示例。在本例中,配置了在检测到MAB时触发的规则。
注意:默认情况下,已在ISE上创建MAB身份验证规则。
配置授权策略。需要了解的一个重要点是身份验证/授权有两种:
要创建授权规则(如上图所示),请完成以下步骤:
注意:此新规则必须早于访客重定向规则,这非常重要。
注意:在多控制器环境中,WLC上的WLAN-ID应相同。如果不想将Airespace-Wlan-Id属性用作条件,则最好匹配Wireless_MAB(内置条件)请求。
如果分配VLAN,最后一步是客户端PC更新其IP地址。此步骤由Windows客户端的访客门户实现。如果之前未为第2个AUTH规则设置VLAN,则可跳过此步骤。这不是建议的设计,因为在客户端VLAN已获得IP地址后更改它会中断连接,有些客户端可能会对它做出错误反应,并且需要提升的Windows权限才能正常工作。
如果已分配VLAN,请完成以下步骤以启用IP续约:
注意:VLAN DHCP版本支持仅适用于Windows设备。它不适用于移动设备。如果注册的设备是移动设备,并且VLAN DHCP释放选项已启用,则会请求访客手动更新其IP地址。对于移动设备用户,我们建议在WLC上使用访问控制列表(ACL),而不是使用VLAN。
此设置还可以与WLC的自动锚点功能配合使用。唯一的问题是,由于此Web身份验证方法是第2层,因此您必须知道执行所有RADIUS工作的是外部WLC。只有外部WLC与ISE联系,且重定向ACL也必须存在于外部WLC上。外部只需要有ACL名称(不需要ACL条目)。 外部WLC将向锚点发送ACL名称,它将是应用重定向的锚点(因此需要正确的ALC内容)。
与其他场景一样,外部WLC会快速显示客户端处于RUN状态,这并不完全正确。它只是表示流量从那里发送到锚点。在锚点上可以看到实际客户端状态,锚点应显示CENTRAL_WEBAUTH_REQD。
以下是锚点外部设置中的流程:
允许WLC和ISE之间通信所需的防火墙端口有:
注意:使用集中网络身份验证(CWA)的锚点外部设置仅在版本7.3或更高版本中工作。
注意:由于Cisco Bug ID CSCul83594,您无法同时在锚点和外部上运行记帐,因为它会导致分析因为可能缺少IP到MAC绑定而变得不准确。它还会导致访客门户的会话ID出现许多问题。如果要配置记帐,请在外部控制器上配置。请注意,从8.6 WLC软件开始,会话ID将在锚点和外部控制器之间共享,然后在这两个控制器上都启用记帐。
使用本部分可确认配置能否正常运行。
WLC中的客户端详细信息显示已应用重定向URL和ACL。
在WLC客户端和AAA全部调试中,您可以看到从ISE发送的重定向URL和ACL的访问接受。
*radiusTransportThread: d0:37:45:89:ef:64 Access-Accept received from RADIUS server 10.106.32.25 (qid:4) with port:1812, pktId:24 for mobile d0:37:45:89:ef:64 receiveId = 0
*radiusTransportThread: AuthorizationResponse: 0x166ab570
*radiusTransportThread: structureSize................................425
*radiusTransportThread: resultCode...................................0
*radiusTransportThread: protocolUsed.................................0x00000001
*radiusTransportThread: proxyState...................................D0:37:45:89:EF:64-00:00
*radiusTransportThread: Packet contains 4 AVPs:
*radiusTransportThread: AVP[01] User-Name................................D0-37-45-89-EF-64 (17 bytes)
*radiusTransportThread: AVP[02] Class....................................CACS:0a6a207a0000000a5fe8f217:ISE3-1/397801666/90 (49 bytes)
*radiusTransportThread: AVP[03] Cisco / Url-Redirect-Acl.................CWA_Redirect (12 bytes)
*radiusTransportThread: AVP[04] Cisco / Url-Redirect.....................DATA (175 bytes)
*radiusTransportThread: d0:37:45:89:ef:64 processing avps[0]: attribute 1
*radiusTransportThread: d0:37:45:89:ef:64 username = D0-37-45-89-EF-64
!
*apfReceiveTask: d0:37:45:89:ef:64 Redirect URL received for client from RADIUS. Client will be moved to WebAuth_Reqd state to facilitate redirection. Skip web-auth Flag = 0
ISE中也可以验证相同的内容。导航至“操作”>“Radius实时日志”。单击该MAC的详细信息。
您可以看到,对于第一次身份验证(MAC过滤),ISE返回授权配置文件WLC_CWA,因为它符合身份验证规则MAB和授权策略访客重定向。
输入凭证后,ISE对客户端进行身份验证并发送CoA。
在WLC上,AAA所有调试中都可以看到此情况。
*radiusCoASupportTransportThread: audit session ID recieved in CoA = 0a6a207a0000000b5fe90410
*radiusCoASupportTransportThread: Received a 'CoA-Request' from 10.106.32.25 port 23974
*radiusCoASupportTransportThread: CoA - Received IP Address : 10.106.32.122, Vlan ID: (received 0)
*radiusCoASupportTransportThread: d0:37:45:89:ef:64 Calling-Station-Id ---> d0:37:45:89:ef:64
*radiusCoASupportTransportThread: Handling a valid 'CoA-Request' regarding station d0:37:45:89:ef:64
*radiusCoASupportTransportThread: Sending Radius CoA Response packet on srcPort: 1700, dpPort: 2, tx Port: 23974
*radiusCoASupportTransportThread: Sent a 'CoA-Ack' to 10.106.32.25 (port:23974)
此后,客户端将重新进行身份验证并授予对网络的访问权限。
注意:在版本7.2或更低版本中,状态CENTRAL_WEB_AUTH被称为POSTURE_REQD。
请注意,ISE返回的CoA类型会在不同版本之间演变。ISE 3.0将请求WLC使用最后一种方法(在本例中为MAB)开始重新身份验证。当WLC发送具有Authorize-Only属性的RADIUS访问请求时,WLC会重新验证用户。
ISE 3.0 CoA请求示例:
然后,WLC将不向客户端发送取消关联帧,并将再次运行RADIUS身份验证并将新结果透明地应用到客户端。自8.3以来,WLC支持在CWA SSID上设置WPA预共享密钥。用户体验与传统非PSK场景相同,WLC不会向客户端发送取消关联的帧,只需应用新的授权结果。但是,虽然从未收到来自客户端的“关联请求”,但仍会向客户端发送“关联响应”,在分析嗅探器踪迹时,这似乎很奇怪。
要排除或隔离CWA问题,请完成以下步骤:
考虑以下Cisco Bug ID,这些ID会限制移动场景(尤其是在配置记帐时)中CWA流程的效率: