WLC-9800(config)# aaa group server radius RADIUS-Group
WLC-9800(config-sg-radius)# server name ISE-lab
第三步:创建指向RADIUS服务器组的AAA身份验证登录方法。
从GUI:
仍在GUI页面中https://<WLC-IP>/webui/#/aaa,导航至选项卡AAA Method List > Authentication,然后创建身份验证方法,如此图所示。
通常,当您使用Add按钮创建身份验证方法时,会出现配置弹出窗口,类似于本图中所示的窗口。
在此弹出窗口中,提供方法的名称。选择Type“作为登录”,将在上一步中创建的组服务器添加到列表Assigned Server Groups中。对于Group Type字段,可以进行几种配置。
- 如果选择Group Type作为local,则WLC首先检查用户凭证是否存在于本地,然后回退到服务器组。
- 如果您选择Group Type作为组,并且不选中Fall back to local选项,则WLC仅针对服务器组检查用户凭证。
- 如果您选择Group Type作为组并选中Fallback to local选项,则WLC将根据服务器组检查用户凭证,并且仅在服务器未响应时才查询本地数据库。如果服务器发送拒绝消息,则用户将进行身份验证,即使它可能存在于本地数据库中。
从CLI:
如果希望只有在首先在本地未找到用户凭证时才能使用服务器组检查用户凭证,请使用:
WLC-9800(config)#aaa authentication login radius-authe-method local group RADIUS-Group
如果希望仅对服务器组检查用户凭证,请使用:
WLC-9800(config)#aaa authentication login radius-authe-method group RADIUS-Group
如果希望对服务器组检查用户凭证,并且如果最后没有使用本地条目进行响应,请使用:
WLC-9800(config)#aaa authentication login radius-authe-method group RADIUS-Group local
在本示例设置中,有些用户仅创建在本地,而有些用户仅创建在ISE服务器上,因此,请使用第一个选项。
第四步:创建指向RADIUS服务器组的AAA授权exec方法。
从GUI:
用户还必须获得授权才能获得访问权限。仍从中GUI Page Configuration > Security > AAA,导航到AAA Method List > Authorization选项卡,然后创建授权方法,如下图所示。
授权方法创建
当您使用Add按钮添加新的授权方法时,将会出现与所示的授权方法配置类似的弹出窗口。
在此配置弹出窗口中,提供授权方法的名称,选择Type作为exec,然后使用与步骤3中身份验证方法相同的组类型顺序。
从CLI:
对于身份验证方法,首先分配授权以根据本地条目检查用户,然后根据服务器组中的条目检查用户。
WLC-9800(config)#aaa authorization exec radius-autho-method local group RADIUS-Group
第五步:将方法分配给HTTP配置以及用于Telnet/SSH的VTY线路。
从GUI:
AAA Advanced > AAA Interface 已创建的身份验证和授权方法可用于HTTP和/或Telnet/SSH用户连接,可以从仍可从中的GUI WLC页面(可访问https://<WLC-IP>/webui/#/aaa)选项卡进行配置,如下图所示:
用于GUI身份验证的CLI:
WLC-9800(config)#ip http authentication aaa login-authentication radius-authe-method
WLC-9800(config)#ip http authentication aaa exec-authorization radius-autho-method
Telnet/SSH身份验证的CLI:
WLC-9800(config)#line vty 0 15 WLC-9800(config-line)#login authentication radius-authe-method
WLC-9800(config-line)#authorization exec radius-autho-method
请注意,当对HTTP配置执行更改时,最好重新启动HTTP和HTTPS服务。这可以通过以下命令实现:
WLC-9800(config)#no ip http server WLC-9800(config)#no ip http secure-server WLC-9800(config)#ip http server WLC-9800(config)#ip http secure-server
为RADIUS配置ISE
步骤1:将WLC配置为RADIUS的网络设备。
从GUI:
要将上一节中使用的WLC声明为ISE中RADIUS的网络设备,请导航至Administration > Network Ressources > Network Devices,然后打开Network devices选项卡,如下一图所示。
要添加网络设备,请使用Add按钮,该按钮将打开新的网络设备配置表。
在新窗口中,提供网络设备的名称,并添加其IP地址。选择RADIUS Authentication Settings并配置与WLC上使用的RADIUS共享密钥相同的RADIUS共享密钥。
第二步:创建授权结果,以返回权限。
从GUI:
要具有管理员访问权限,需要具有15级权限,该权限级别允许访问exec提示外壳adminuser。另一方面helpdeskuser,不需要exec提示符外壳访问,因此可以为其分配低于15的特权级别。为了向用户分配适当的权限级别,可以使用授权配置文件。可以从下一图ISE GUI Page Policy > Policy Elements > Results中所示的选项卡Authorization > Authorization Profiles下方进行配置。
要配置新的授权配置文件,请使用Add按钮,该按钮将打开新的授权配置文件配置表。要配置分配给的配置文件,此表单尤其必须如下所示adminuser。
所示配置向与其关联的任何用户授予权限级别15。如前所述,这是下一步创建adminuser的的预期行为。但是helpdeskuser,必须具有较低的权限级别,因此必须创建第二个策略元素。
的策略元素类似于上面创建的元素,不同之处在helpdeskuser shell:priv-lvl=15 ,字符串必须更改为shell:priv-lvl=X,并用所需的权限级别替换X。在本例中,使用1。
第三步:在ISE上创建用户组。
从 GUI:
ISE用户组从的选项卡User Identity Groups创建Administration > Identity Management > Groups GUI Page,如屏幕截图所示。
要创建新用户,请使用Add按钮,该按钮将打开新的用户身份组配置表单,如下所示。
提供创建的组的名称。创建上述两个用户组,即admin-group 和helpdesk-group。
第四步:在ISE上创建用户。
从 GUI:
ISE用户从的选项卡UsersAdministration > Identity Management > Identities GUI Page创建,如屏幕截图所示。
要创建新用户,请使用Add按钮打开新的网络访问用户配置表,如下所示。
向用户提供凭证,即他/她的用户名和密码,用于在WLC上进行身份验证。此外,请确保用户状态为Enabled。最后,将用户添加到其相关组(已在步骤4中创建),并在表单的末尾使用User Groups下拉菜单。
创建上述两个用户,即adminuser和helpdeskuser。
第五步:对用户进行身份验证。
从GUI:
在此方案中,ISE的默认策略集的身份验证策略(已预配置)允许默认网络访问。可以从ISE GUI页面的Policy > Policy Sets(如图所示)查看此策略集。因此,没有必要对其进行更改。
第六步:授权用户。
从GUI:
登录尝试通过身份验证策略后,需要授权该策略,ISE需要返回之前创建的授权配置文件(允许接受,以及权限级别)。
在本示例中,根据设备IP地址(即WLC IP地址)过滤登录尝试,并根据用户所属的组区分要授予的权限级别。另一个有效方法是基于用户用户名过滤用户,因为在本示例中,每个组仅包含一个用户。
完成此步骤后,为adminuser helpdesk and用户配置的凭证可用于通过GUI或Telnet/SSH在WLC中进行身份验证。
配置TACACS+ WLC
步骤1:声明TACACS+服务器。
从GUI:
首先,在WLC上创建Tacacs+服务器ISE。 这可以从可访问的GUIServers/Groups > TACACS+ > Servers WLC页面的选项卡中完成
https://<WLC-IP>/webui/#/aaa,
或者如果导航到Configuration > Security > AAA,如本图所示。
要在WLC上添加TACACS服务器,请点击上图中以红色框表示的Add按钮。这将打开所示的弹出窗口。
弹出窗口打开时,请提供服务器名称(它不必与ISE系统名称匹配)、其IP地址、共享密钥、使用的端口和超时。
在此弹出窗口中,必须提供:
- 服务器名称(请注意,它不必与ISE系统名称匹配)
- 服务器IP地址
- WLC和TACACS+服务器之间的共享密钥
可以配置其他参数,例如用于身份验证和记账的端口,但这些不是强制性的,保留为本文档的默认设置。
从CLI:
WLC-9800(config)#tacacs server ISE-lab WLC-9800(config-server-tacacs)#address ipv4 10.48.39.134 WLC-9800(config-server-tacacs)#key Cisco123
第二步:将TACACS+服务器映射到服务器组。
从GUI:
如果您有多台可用于身份验证的TACACS+服务器,建议将所有这些服务器映射到同一个服务器组。然后,WLC负责对服务器组中的服务器之间的不同身份验证进行负载均衡。TACACS+服务器组是在与步骤1.中提到的GUI页面相同Servers/Groups > TACACS > Server Groups(如图所示)的GUI页面上配置的。
对于服务器创建,当您单击先前图像(如图所示)中的Add按钮时,将出现一个弹出窗口。
在弹出窗口中,为组指定名称,并将所需服务器移至Assigned Servers列表。
从CLI:
WLC-9800(config)#aaa group server tacacs+ TACACS-Group WLC-9800(config-sg-tacacs+)#server name ISE-lab
第三步:创建指向TACACS+服务器组的AAA身份验证登录方法。
从GUI:
仍在GUI页面上https://<WLC-IP>/webui/#/aaa,导航到AAA Method List > Authentication选项卡,然后创建身份验证方法,如图所示。
通常,当您使用Add按钮创建身份验证方法时,会出现配置弹出窗口,类似于本图中所示的窗口。
在此弹出窗口中,提供方法的名称,选择Type aslogin,并将上一步中创建的组服务器添加到Assigned Server Groups列表。对于Group Type字段,可以进行几种配置。
- 如果选择Group Type作为local,则WLC首先检查用户凭证是否存在于本地,然后回退到服务器组。
- 如果您选择Group Type作为组,并且不选中Fall back to local选项,则WLC仅针对服务器组检查用户凭证。
- 如果您选择Group Type作为组并选中Fallback to local选项,则WLC将根据服务器组检查用户凭证,并且仅在服务器未响应时才查询本地数据库。如果服务器发送拒绝消息,则用户将进行身份验证,即使它可能存在于本地数据库中。
从CLI:
如果希望只有在首先在本地未找到用户凭证时才能使用服务器组检查用户凭证,请使用:
WLC-9800(config)#aaa authentication login tacacs-authe-method local group TACACS-Group
如果要仅对服务器组检查用户凭证,请使用:
WLC-9800(config)#aaa authentication login tacacs-authe-method group TACACS-Group
如果希望对服务器组检查用户凭证,并且如果最后没有使用本地条目进行响应,请使用:
WLC-9800(config)#aaa authentication login tacacs-authe-method group TACACS-Group local
在本示例设置中,有些用户仅创建在本地,而有些用户仅创建在ISE服务器上,因此使用第一个选项。
第四步:创建指向TACACS+服务器组的AAA授权exec方法。
从GUI:
用户还必须获得授权才能获得访问权限。 仍在GUI页面中Configuration > Security > AAA,导航到AAA Method List > Authorization选项卡,然后创建授权方法,如图所示。
当您使用Add按钮添加新的授权方法时,将会出现与所示的授权方法配置类似的弹出窗口。
在此配置弹出窗口中,为授权方法提供一个名称,选择Type作为exec,并使用与上一步中身份验证方法所用的Group Type顺序相同的组类型顺序。
从CLI:
WLC-9800(config)#aaa authorization exec tacacs-autho-method local group TACACS-Group
第五步:将方法分配给HTTP配置以及用于Telnet/SSH的VTY线路。
从GUI:
创建的身份验证和授权方法可用于HTTP和/或Telnet/SSH用户连接,该连接可以从选项卡进行配置,该选项卡仍可从中可访问的GUI WLC页AAA Advanced > AAA Interface,如https://<WLC-IP>/webui/#/aaa图所示。
从CLI:
对于GUI身份验证:
WLC-9800(config)#ip http authentication aaa login-authentication tacacs-authe-method
WLC-9800(config)#ip http authentication aaa exec-authorization tacacs-autho-method
对于Telnet/SSH身份验证:
WLC-9800(config)#line vty 0 15
WLC-9800(config-line)#login authentication tacacs-authe-method
WLC-9800(config-line)#authorization exec tacacs-autho-method
请注意,当对HTTP配置执行更改时,最好重新启动HTTP和HTTPS服务。这可以通过这些命令实现。
WLC-9800(config)#no ip http server
WLC-9800(config)#no ip http secure-server
WLC-9800(config)#ip http server
WLC-9800(config)#ip http secure-server
TACACS+ ISE配置
步骤1:将WLC配置为TACACS+的网络设备。
从GUI:
要将上一节中使用的WLC声明为ISE中RADIUS的网络设备,请导航至Administration > Network Resources > Network Devices,然后打开Network devices选项卡,如本图所示。
在本例中,已为RADIUS身份验证添加了WLC(请参阅配置RADIUS ISE部分的第1步。)。因此,只需修改其配置即可配置TACACS身份验证,当您在网络设备列表中选择WLC并点击Edit按钮时,即可完成此操作。这将打开网络设备配置表,如下图所示。
打开新窗口后,向下滚动到TACACS身份验证设置(TACACS Authentication Settings)部分,启用这些设置,并添加在配置TACACS+ WLC部分的第1步中输入的共享密钥。
第二步:为节点启用设备管理功能。
注:要将ISE用作TACACS+服务器,您必须具有设备管理许可证包以及基础许可证或移动许可证。
从GUI:
安装设备管理许可证后,您必须启用节点的Device Admin功能,才能将ISE用作TACACS+服务器。Administrator > Deployment 要执行此操作,请编辑使用的ISE部署节点的配置(可在下找到),然后单击其名称或借助按钮执行此操作Edit。
打开节点配置窗口后,选中Policy Service部分下的Enable Device Admin Service选项,如本图所示。
第三步:创建TACACS配置文件,以返回权限。
从GUI:
要具有管理员访问权限,需要具有15级权限,该权限级别允许访问exec提示外壳adminuser。另一方面helpdeskuser,不需要exec提示符外壳访问,因此可以为其分配低于15的特权级别。为了向用户分配适当的权限级别,可以使用授权配置文件。可以从ISE GUI页面的Work Centers > Device Administration > Policy Elements选项卡下配置Results > TACACS Profiles,如下图所示。
要配置新的TACACS配置文件,请使用Add按钮,该按钮会打开与图片中显示的配置表类似的新配置文件配置表。此表单必须特别像这样才能配置分配给的配置文件adminuser(即外壳权限级别15)。
对配置文件重复此操作helpdesk。对于最后一个,Default Privilege和Maximum Privilege均设置为1。
第四步:在ISE上创建用户组。
这与本文档的配置RADIUS ISE部分的第3步中介绍的相同。
第五步:在ISE上创建用户。
这与本文档的配置RADIUS ISE部分的第4步中介绍的相同。
第六步:创建设备管理策略集。
从GUI:
对于RADIUS访问,用户创建后,仍需在ISE上定义其身份验证和授权策略以授予其适当的访问权限。TACACS身份验证使用设备管理策略集来达到此目的,可从进行配置,Work Centers > Device Administration > Device Admin Policy Sets GUI Page如下所示。
要创建设备管理策略集,请使用上一映像中以红色框框的add按钮,这会将项目添加到策略集列表。为新创建的集合提供名称、应用该集合所必须满足的条件以及允许的协议/服务器序列(此处,Default Device Admin足够)。使用按Save钮完成策略集的添加,并使用其右侧的箭头访问其配置页面(如图所示)。
本示例中的特定策略集“WLC TACACS Authentication”过滤IP地址与示例C9800 WLC IP地址相同的请求。
作为身份验证策略,Default Rule已保留,因为它满足使用需要。已设置两个授权规则:
- 用户属于定义的组时,会触发第一个命令
admin-group。它允许所有命令(通过默认规则Permit_all)并分配权限15(通过定义的TACACS配置IOS_Admin )。
- 当用户属于定义的组时,触发第二个
helpdesk-group。 它允许所有命令(通过默认Permit_all 规则)并分配权限1(通过定义的TACACS配IOS_Helpdesk置文件)。
完成此步骤后,为adminuser helpdesk and用户配置的凭证可用于通过GUI或Telnet/SSH在WLC中进行身份验证。
故障排除
通过WLC CLI排除WLC GUI或CLI RADIUS/TACACS+访问故障
要对WLC GUI或CLI的TACACS+访问进行故障排除,请发出命令以及终端监控器debug tacacs,并在尝试登录时查看实时输出。
例如,成功登录后注销用户会生成此输出adminuser。
WLC-9800#terminal monitor
WLC-9800#debug tacacs
TACACS access control debugging is on
WLC-9800#
Dec 8 11:38:34.684: TPLUS: Queuing AAA Authentication request 15465 for processing
Dec 8 11:38:34.684: TPLUS(00003C69) login timer started 1020 sec timeout Dec 8 11:38:34.684: TPLUS: processing authentication start request id 15465 Dec 8 11:38:34.685: TPLUS: Authentication start packet created for 15465(adminuser) Dec 8 11:38:34.685: TPLUS: Using server 10.48.39.134 Dec 8 11:38:34.685: TPLUS(00003C69)/0/NB_WAIT/7FD29013CA68: Started 5 sec timeout Dec 8 11:38:34.687: TPLUS(00003C69)/0/NB_WAIT: socket event 2 Dec 8 11:38:34.688: TPLUS(00003C69)/0/NB_WAIT: wrote entire 45 bytes request Dec 8 11:38:34.688: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:34.688: TPLUS(00003C69)/0/READ: Would block while reading Dec 8 11:38:34.701: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:34.701: TPLUS(00003C69)/0/READ: read entire 12 header bytes (expect 15 bytes data) Dec 8 11:38:34.701: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:34.701: TPLUS(00003C69)/0/READ: read entire 27 bytes response Dec 8 11:38:34.701: TPLUS(00003C69)/0/7FD29013CA68: Processing the reply packet Dec 8 11:38:34.701: TPLUS: Received authen response status GET_PASSWORD (8) Dec 8 11:38:38.156: TPLUS: Queuing AAA Authentication request 15465 for processing Dec 8 11:38:38.156: TPLUS(00003C69) login timer started 1020 sec timeout Dec 8 11:38:38.156: TPLUS: processing authentication continue request id 15465 Dec 8 11:38:38.156: TPLUS: Authentication continue packet generated for 15465 Dec 8 11:38:38.156: TPLUS(00003C69)/0/WRITE/7FD3796079D8: Started 5 sec timeout Dec 8 11:38:38.156: TPLUS(00003C69)/0/WRITE: wrote entire 29 bytes request Dec 8 11:38:38.183: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:38.183: TPLUS(00003C69)/0/READ: read entire 12 header bytes (expect 6 bytes data) Dec 8 11:38:38.183: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:38.183: TPLUS(00003C69)/0/READ: read entire 18 bytes response Dec 8 11:38:38.183: TPLUS(00003C69)/0/7FD3796079D8: Processing the reply packet Dec 8 11:38:38.183: TPLUS: Received authen response status PASS (2) Dec 8 11:38:38.184: %SEC_LOGIN-5-LOGIN_SUCCESS: Login Success [user: adminuser] [Source: 10.61.80.151] [localport: 22] at 12:38:38 CET Thu Dec 8 2022 Dec 8 11:38:38.259: TPLUS: Queuing AAA Authorization request 15465 for processing Dec 8 11:38:38.260: TPLUS(00003C69) login timer started 1020 sec timeout Dec 8 11:38:38.260: TPLUS: processing authorization request id 15465 Dec 8 11:38:38.260: TPLUS: Protocol set to None .....Skipping Dec 8 11:38:38.260: TPLUS: Sending AV service=shell Dec 8 11:38:38.260: TPLUS: Sending AV cmd* Dec 8 11:38:38.260: TPLUS: Authorization request created for 15465(adminuser) Dec 8 11:38:38.260: TPLUS: using previously set server 10.48.39.134 from group TACACS-Group Dec 8 11:38:38.260: TPLUS(00003C69)/0/NB_WAIT/7FD3796079D8: Started 5 sec timeout Dec 8 11:38:38.260: TPLUS(00003C69)/0/NB_WAIT: socket event 2 Dec 8 11:38:38.260: TPLUS(00003C69)/0/NB_WAIT: wrote entire 64 bytes request Dec 8 11:38:38.260: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:38.260: TPLUS(00003C69)/0/READ: Would block while reading Dec 8 11:38:38.285: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:38.285: TPLUS(00003C69)/0/READ: read entire 12 header bytes (expect 18 bytes data) Dec 8 11:38:38.285: TPLUS(00003C69)/0/READ: socket event 1 Dec 8 11:38:38.285: TPLUS(00003C69)/0/READ: read entire 30 bytes response Dec 8 11:38:38.285: TPLUS(00003C69)/0/7FD3796079D8: Processing the reply packet Dec 8 11:38:38.285: TPLUS: Processed AV priv-lvl=15 Dec 8 11:38:38.285: TPLUS: received authorization response for 15465: PASS Dec 8 11:38:44.225: %SYS-6-LOGOUT: User adminuser has exited tty session 7(10.61.80.151) Dec 8 11:38:44.225:Socket I/O cleanup message sent to TACACS TPLUS Proc:SOCKET IO CLEANUP EVENT Dec 8 11:38:44.226: %HA_EM-6-LOG: catchall: logout Dec 8 11:39:18.689: %SYS-6-LOGOUT: User admin has exited tty session 5(10.61.80.151) Dec 8 11:39:18.690:Socket I/O cleanup message sent to TACACS TPLUS Proc:SOCKET IO CLEANUP EVENT
从这些日志中可以看到,TACACS+服务器返回了正确的权限(即AV priv-lvl=15)。
当您执行RADIUS身份验证时,会显示一个与RADIUS流量相关的类似调试输出。
相反,debug aaa authenticationdebug aaa authorization 显示当用户尝试登录时WLC选择的方法列表。
通过ISE GUI排除WLC GUI或CLI TACACS+访问故障
从第页Operations > TACACS > Live Logs,可以查看通过TACACS+进行的每一次用户身份验证(最多24小时)。要展开TACACS+授权或身份验证的详细信息,请使用与此事件相关的Details按钮。
展开后,的身份验证成功尝试helpdeskuser如下所示:
从此,您可以看到,在身份验证策略的帮助下helpdeskuser,已向网络设WLC-9800备成功对用户进行身份验证WLC TACACS Authentication > Default。此外,授权配置IOS Helpdesk文件已分配给此用户,并授予权限级别1。