简介
本文档介绍在Cisco 9800无线局域网控制器上配置iPSK安全WLAN,并将Cisco ISE用作RADIUS服务器。
先决条件
要求
- 熟悉9800上WLAN的基本配置
- 能够将配置调整为适合您的部署
使用的组件
- 运行17.6.3的Cisco 9800-CL WLC
- 思科ISE 3.0
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
了解iPSK是什么,适合哪些场景
传统预共享密钥(PSK)安全网络对所有连接的客户端使用相同的密码。 这可能会导致与未经授权的用户共享密钥,从而造成安全漏洞和未经授权的网络访问。 此漏洞最常见的缓解措施是PSK本身的更改。 这会影响所有用户,因为许多终端设备需要更新新密钥才能再次访问网络。
通过身份PSK(iPSK),在RADIUS服务器的帮助下为相同SSID上的个人或用户组创建唯一的预共享密钥。在终端客户端设备不支持dot1x身份验证,但需要更安全和更精细的身份验证方案的网络中,这种设置非常有用。从客户端的角度来看,此WLAN看起来与传统PSK网络相同。如果其中一个PSK受到危害,则仅受影响的个人或组需要更新其PSK。连接到WLAN的其余设备不受影响。
配置9800 WLC
在Configuration > Security > AAA > Servers/Groups > Servers下,将ISE添加为RADIUS服务器:
在Configuration > Security > AAA > Servers/Groups > Server Groups下,创建一个RADIUS服务器组并将之前创建的ISE服务器添加到其中:
在AAA Method List选项卡中,创建一个Authorization列表,其中类型为“network”,组类型为“group”,指向以前创建的RADIUS服务器组:
设置记帐是可选操作,但可以通过将类型配置为“identity”并将其指向同一RADIUS服务器组来完成:
这也可通过命令行使用以下命令来执行:
radius server
address ipv4
auth-port 1812 acct-port 1813 key 0
aaa group server radius
server name
aaa authorization network
group
aaa accounting identity
start-stop group
在Configuration > Tags & Profiles > WLANs下,创建新的WLAN。 在第2层配置下:
- 启用MAC过滤并将Authorization List(授权列表)设置为之前创建的列表
- 在Auth Key Mgmt下,启用PSK
- 预共享密钥字段可以使用任何值进行填充。这样做只是为了满足Web界面设计的要求。没有用户能够使用此密钥进行身份验证。在这种情况下,预共享密钥设置为“12345678”。
可以在Advanced选项卡下实现用户分离。将其设置为Allow Private Group后,使用相同PSK的用户可以相互通信,而使用不同PSK的用户将被阻止:
在Configuration > Tags & Profiles > Policy下,创建新的策略配置文件。在访问策略选项卡中,设置此WLAN正在使用的VLAN或VLAN组:
在Advanced选项卡中,启用AAA Override并添加Accounting列表(如果之前已创建):
在Configuration > Tags & Profiles > Tags > Policy下,确保WLAN已映射到您创建的策略配置文件:
这也可通过命令行使用以下命令来执行:
wlan
mac-filtering
security wpa psk set-key ascii 0
no security wpa akm dot1x security wpa akm psk peer-blocking allow-private-group no shutdown wireless profile policy
aaa-override accounting-list
vlan
no shutdown wireless tag policy
wlan
policy
在Configuration > Wireless > Access Points下,确保此标记已应用于必须在其上广播WLAN的接入点:
ISE 配置
本配置指南介绍根据客户端MAC地址确定设备PSK的场景。 在Administration > Network Resources > Network Devices下,添加新设备,指定IP地址,启用RADIUS身份验证设置并指定RADIUS共享密钥:
在Context Visibility > Endpoints > Authentication下,添加连接到iPSK网络的所有设备(客户端)的MAC地址:
在Administration > Identity Management > Groups > Endpoint Identity Groups下,创建一个或多个组并向它们分配用户。以后可以将每个组配置为使用不同的PSK连接到网络。
创建组后,即可将用户分配给它们。选择您创建的组,然后单击Edit:
在组配置中,通过点击“添加”按钮,添加要分配给该组的客户端的MAC地址:
在Policy > Policy Elements > Results > Authorization > Authorization Profiles下,创建新的授权配置文件。将属性设置为:
access Type = ACCESS_ACCEPT
cisco-av-pair = psk-mode=ascii
cisco-av-pair = psk=
// This is the psk that the user group is using
对于必须使用不同PSK的每个用户组,请使用不同的psk av-pair创建附加结果。此处还可以配置ACL和VLAN覆盖等其他参数。
在Policy > Policy Sets下,创建一个新策略。要确保客户端与策略集匹配,请使用以下条件:
Cisco:cisco-av-pair EQUALS cisco-wlan-ssid=WLAN_iPSK // "WLAN_iPSK" is WLAN name
可以添加其他条件,使策略匹配更加安全。
通过点击Policy Set行右侧的蓝色箭头进入新创建的iPSK Policy Set配置:
确保将身份验证策略设置为“Internal Endpoints”:
在授权策略下,为每个用户组创建一个新规则。作为条件,请使用:
IdentityGroup-Name EQUALS Endpoint Identity Group:Identity_Group_iPSK // "Identity_Group_iPSK" is name of the created endpoint group
Result是之前创建的授权配置文件。确保Default规则位于底部并指向DenyAccess。
如果每个用户将拥有不同的密码,而不是创建与该终端组匹配的终端组和规则,则可以创建具有此条件的规则:
Radius-Calling-Station-ID EQUALS <client_mac_addr>
注意: MAC地址分隔符可以在WLC上的AAA > AAA Advanced > Global Config > Advanced Settings下配置。在本示例中,使用了字符“ — ”。
授权策略的规则允许使用许多其他参数来指定用户正在使用的密码。
一些最常用的规则包括:
- 根据用户位置进行匹配
在这种情况下,WLC需要将AP位置信息发送到ISE。这允许一个位置的用户使用一个密码,而另一个位置的用户使用不同的密码。可以在Configuration > Security > Wireless AAA Policy下配置此项
- 根据设备分析进行匹配
在此场景中,需要配置WLC以全局配置设备。这样,管理员可以为笔记本电脑和电话设备配置不同的密码。全局设备分类可在Configuration > Wireless > Wireless Global下启用。有关ISE上的设备分析配置,请参阅ISE分析设计指南。
除了返回加密密钥外,由于此授权发生在802.11关联阶段,因此完全可以从ISE返回其他AAA属性,例如ACL或VLAN ID。
故障排除
9800 WLC故障排除
在WLC上,收集放射性痕迹必须足以识别大多数问题。这可以在WLC Web界面的故障排除 > 放射跟踪下完成。添加客户端MAC地址,按开始并尝试重现问题。 单击Generate创建并下载文件:
重要:IOS 14和Android 10智能手机上的iPhone在关联网络时使用随机mac地址。此功能可能会完全中断iPSK配置。确保禁用此功能!
如果放射性跟踪不足以识别问题,则可以直接在WLC上收集数据包捕获。在Troubleshooting > Packet Capture下,添加捕获点。默认情况下,WLC使用无线管理接口进行所有RADIUS AAA通信。如果WLC有大量客户端,请将缓冲区大小增加到100 MB:
成功进行身份验证和记帐尝试的数据包捕获如下图所示。使用此Wireshark过滤器可过滤出此客户端的所有相关数据包:
ip.addr==
|| eapol || bootp
排除ISE故障
思科ISE的主要故障排除技术是实时日志页面,位于操作 > RADIUS > 实时日志下。可以通过将客户端的MAC地址放在Endpoint ID字段中来过滤这些地址。 打开完整的ISE报告可提供有关故障原因的更多详细信息。确保客户端符合正确的ISE策略: