简介
本文档介绍如何借助身份服务引擎(ISE)为连接到交换机的有线客户端配置集中Web身份验证。
集中Web身份验证的概念与本地Web身份验证相反,本地Web身份验证是交换机本身的常规Web身份验证。在该系统中,当dot1x/mab发生故障时,交换机将故障切换到webauth配置文件,并将客户端流量重定向到交换机上的网页。
集中式Web身份验证提供一个充当Web门户(例如,ISE)的集中式设备。与通常的本地Web身份验证相比,主要区别在于它与mac/dot1x身份验证一起转移到第2层。概念也有所不同,因为RADIUS服务器(本例中的ISE)返回的特殊属性指示交换机必须进行Web重定向。此解决方案的优势在于可消除网络身份验证启动所需的任何延迟。从全局来看,如果RADIUS服务器不知道客户端工作站的MAC地址(但也可以使用其他条件),服务器将返回重定向属性,并且交换机授权工作站(通过MAC身份验证绕行[MAB]),但放置一个访问列表以将网络流量重定向到门户。用户登录访客门户后,可以通过CoA(授权更改)退回交换机端口,以便进行新的第2层MAB身份验证。然后,ISE可以记住它是Web身份验证用户,并将第2层属性(如动态VAN分配)应用于该用户。ActiveX组件还可以强制客户端PC刷新其IP地址。
先决条件
要求
Cisco 建议您了解以下主题:
-
身份服务引擎 (ISE)
-
Cisco IOS®交换机配置
使用的组件
本文档中的信息基于以下软件和硬件版本:
注意:对于其他Catalyst交换机型号,此过程类似或相同。除非另有说明,否则您可以在所有Cisco IOS Catalyst软件版本中使用这些步骤。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
配置
概述
ISE配置由以下五个步骤组成:
- 创建可下载访问控制列表(ACL)。
- 创建授权配置文件。
- 创建身份验证规则。
- 创建授权规则。
- 启用IP续订(可选)。
创建可下载ACL
这不是强制步骤。通过中心Web身份验证配置文件发回的重定向ACL确定哪些流量(HTTP或HTTPS)被重定向到ISE。可下载ACL允许您定义允许哪些流量。通常应允许DNS、HTTP(S)和8443,并拒绝其他设置。否则,交换机将重定向HTTP流量,但允许其他协议。
要创建可下载ACL,请完成以下步骤:
- 单击Policy,然后单击Policy Elements。
- 单击结果。
- 展开Authorization,然后单击Downloadable ACLs。
- 单击Add按钮以创建新的可下载ACL。
- 在名称字段中,输入DACL的名称。本示例使用myDACL。
下图显示了典型的DACL内容,该内容允许:
- DNS -解析ISE门户主机名
- HTTP和HTTPS -允许重定向
- TCP端口8443 -用作访客门户端口
创建授权配置文件
完成以下步骤以创建授权配置文件:
- 单击Policy,然后单击Policy Elements。
- 单击结果。
- 展开Authorization,然后单击Authorization profile。
- 单击Add按钮为集中Web身份验证创建新的授权配置文件。
- 在名称字段中,输入配置文件的名称。本示例使用CentralWebauth。
- 从Access Type下拉列表中选择ACCESS_ACCEPT。
- 选中Web Authentication复选框,并从下拉列表中选择Centralized。
- 在ACL字段中,输入交换机上定义要重定向的流量的ACL名称。本示例使用redirect。
- 从Redirect下拉列表中选择Default。
- 如果您决定在交换机上使用DACL而不是静态端口ACL,请选中DACL Name复选框,并从下拉列表中选择myDACL。
Redirect属性定义ISE看到默认Web门户还是ISE管理员创建的自定义Web门户。例如,本示例中的redirect ACL会在从客户端到任何位置的HTTP或HTTPS流量上触发重定向。ACL将在本配置示例后面的部分中定义。
创建身份验证规则
完成以下步骤以使用身份验证配置文件创建身份验证规则:
- 在Policy菜单下,单击Authentication。
下图展示了如何配置身份验证策略规则的示例。在本示例中,配置了在检测到MAB时触发的规则。
- 输入身份验证规则的名称。本示例使用MAB。
- 在If条件字段中选择加号(+)图标。
- 选择Compound condition,然后选择Wired_MAB。
- 点击位于和……旁边的箭头以进一步展开规则。
- 在Identity Source字段中点击+图标,然后选择Internal endpoints。
- 从“If user not found”下拉列表中选择Continue。
此选项允许设备(通过webauth)进行身份验证,即使其MAC地址未知。Dot1x客户端仍然可以使用其凭证进行身份验证,因此不应关注此配置。
创建授权规则
现在,授权策略中有多个规则需要配置。PC插入后,它会通过MAB;假设MAC地址未知,因此会返回webauth和ACL。此MAC未知规则显示在此图像中,并在以下部分进行配置:
要创建授权规则,请完成以下步骤:
- 创建新规则,然后输入名称。本示例使用MAC not known。
- 点击条件字段中的加号(+)图标,并选择创建新条件。
- 展开expression下拉列表。
- 选择Network Access,然后展开它。
- 单击AuthenticationStatus,然后选择Equals运算符。
- 在右侧字段中选择UnknownUser。
- 在“General Authorization”页上,选择CentralWebauth(Authorization Profile)(位于单词then右侧的字段中)。
此步骤允许ISE在用户(或MAC)未知的情况下继续。
现在将为未知用户显示“登录”页。但是,一旦他们输入其凭证,他们在ISE上会再次显示身份验证请求;因此,必须为另一个规则配置一个条件,如果用户是访客用户,则必须满足该条件。在本示例中,如果使用UseridentityGroup equals Guest,则假定所有访客都属于此组。
- 单击位于MAC未知规则末尾的“操作”按钮,并选择在上方插入新规则。
注意:此新规则必须位于MAC未知规则之前。
- 输入新规则的名称。本示例使用IS-a-GUEST。
- 选择与访客用户匹配的条件。
此示例使用InternalUser:IdentityGroup Equals Guest,因为所有访客用户都已绑定到Guest组(或您在Sponsor设置中配置的其他组)。
- 在结果框(位于then一词的右侧)中选择PermitAccess。
当用户在登录页面上获得授权时,ISE在交换机端口上重新启动第2层身份验证,然后发生新的MAB。在此场景中,不同之处在于为ISE设置了不可见标志,以记住它是访客身份验证用户。此规则是第二次身份验证,条件是网络访问:UseCase等于GuestFlow。当用户通过Web身份验证进行身份验证,并且为新的MAB再次设置交换机端口时,将满足此条件。您可以分配您喜欢的任何属性。此示例分配了一个配置文件vlan90,以便用户在其第二个MAB身份验证中分配了VLAN 90。
- 点击操作(位于IS-a-GUEST规则末尾),然后选择在上面插入新规则。
- 在名称字段中输入2nd AUTH。
- 在“条件”字段中,点击加号(+)图标,然后选择创建新条件。
- 选择网络访问,然后单击使用案例。
- 选择Equals作为运算符。
- 选择GuestFlow作为正确的操作数。
- 在授权页面上,点击加号(+)图标(位于then旁边)以选择规则的结果。
在本示例中,分配了预配置的配置文件(vlan90);本文档中未显示此配置。
您可以选择Permit Access 选项或创建自定义配置文件以返回您喜欢的VLAN或属性。
启用IP续订(可选)
如果分配VLAN,最后一步是让客户端PC更新其IP地址。此步骤由Windows客户端的访客门户实现。如果之前没有为第2次身份验证规则设置VLAN,则可以跳过此步骤。
如果分配了VLAN,请完成以下步骤以启用IP续订:
- 依次单击Administration和Guest Management。
- 单击设置。
- 展开Guest,然后展开Multi-Portal Configuration。
- 点击DefaultGuestPortal或您可能已创建的自定义门户的名称。
- 单击Vlan DHCP Releaseck复选框。
注意:此选项仅适用于Windows客户端。
交换机配置(摘录)
本部分提供交换机配置的摘要。有关完整配置,请参阅交换机配置(完全)。
此示例显示一个简单的MAB配置。
interface GigabitEthernet1/0/12
description ISE1 - dot1x clients - UCS Eth0
switchport access vlan 100
switchport mode access
ip access-group webauth in
authentication order mab
authentication priority mab
authentication port-control auto
mab
spanning-tree portfast
end
VLAN 100是提供完全网络连接的VLAN。应用并定义了一个默认端口ACL(名为webauth),如下所示:
ip access-list extended webauth
permit ip any any
此示例配置提供完全网络访问,即使用户未通过身份验证;因此,您可能希望将访问限制为未通过身份验证的用户。
在此配置中,HTTP和HTTPS浏览在不进行身份验证的情况下无法运行(根据其他ACL),因为ISE配置为使用重定向ACL(命名重定向)。以下是交换机上的定义:
ip access-list extended redirect
deny ip any host <ISE ip address>
permit TCP any any eq www
permit TCP any any eq 443
必须在交换机上定义此访问列表,以便定义交换机将对哪些流量执行重定向。(它与permit匹配。) 在本示例中,客户端发送的任何HTTP或HTTPS流量都会触发Web重定向。此示例还拒绝ISE IP地址,因此发往ISE的流量将进入ISE并且不会在环路中重定向。(在这种情况下,deny不会阻止流量;它只是不重定向流量。) 如果使用异常的HTTP端口或代理,则可以添加其他端口。
另一种可能是允许对某些网站进行HTTP访问并重定向其他网站。例如,如果您在ACL中定义仅允许内部Web服务器,则客户端可以在不进行身份验证的情况下浏览Web,但如果客户端尝试访问内部Web服务器,则会遇到重定向。
最后一步是在交换机上允许CoA。否则,ISE无法强制交换机重新验证客户端。
aaa server radius dynamic-author
client <ISE ip address> server-key <radius shared secret>
交换机需要以下命令来根据HTTP流量进行重定向:
ip http server
根据HTTPS流量重定向需要以下命令:
ip http secure-server
以下命令也很重要:
radius-server vsa send authentication
radius-server vsa send accounting
如果用户尚未通过身份验证,show authentication session int <interface num>将返回以下输出:
01-SW3750-access#show auth sess int gi1/0/12
Interface: GigabitEthernet1/0/12
MAC Address: 000f.b049.5c4b
IP Address: 192.168.33.201
User-Name: 00-0F-B0-49-5C-4B
Status: Authz Success
Domain: DATA
Security Policy: Should Secure
Security Status: Unsecure
Oper host mode: single-host
Oper control dir: both
Authorized By: Authentication Server
Vlan Policy: N/A
ACS ACL: xACSACLx-IP-myDACL-51519b43
URL Redirect ACL: redirect
URL Redirect: https://ISE2.wlaaan.com:8443/guestportal/gateway?
sessionId=C0A82102000002D8489E0E84&action=cwa
Session timeout: N/A
Idle timeout: N/A
Common Session ID: C0A82102000002D8489E0E84
Acct Session ID: 0x000002FA
Handle: 0xF60002D9
Runnable methods list:
Method State
mab Authc Success
注意:尽管成功进行了MAB身份验证,但是由于ISE不知道MAC地址,因此会放置重定向ACL。
交换机配置(完整)
本部分列出完整的交换机配置。某些不必要的接口和命令行已被省略;因此,此配置示例应仅供参考,不应复制。
Building configuration...
Current configuration : 6885 bytes
!
version 15.0
no service pad
service timestamps debug datetime msec localtime show-timezone
service timestamps log datetime msec localtime show-timezone
no service password-encryption
!
!
boot-start-marker
boot-end-marker
!
enable secret 5 $1$xqtx$VPsZHbpGmLyH/EOObPpla.
!
aaa new-model
!
!
aaa group server radius newGroup
!
aaa authentication login default local
aaa authentication dot1x default group radius
aaa authorization exec default none
aaa authorization network default group radius
!
!
!
!
aaa server radius dynamic-author
client 192.168.131.1 server-key cisco
!
aaa session-id common
clock timezone CET 2 0
system mtu routing 1500
vtp interface Vlan61
udld enable
nmsp enable
ip routing
ip dhcp binding cleanup interval 600
!
!
ip dhcp snooping
ip device tracking
!
!
crypto pki trustpoint TP-self-signed-1351605760
enrollment selfsigned
subject-name cn=IOS-Self-Signed-Certificate-1351605760
revocation-check none
rsakeypair TP-self-signed-1351605760
!
!
crypto pki certificate chain TP-self-signed-1351605760
certificate self-signed 01
30820245 308201AE A0030201 02020101 300D0609 2A864886 F70D0101 04050030
31312F30 2D060355 04031326 494F532D 53656C66 2D536967 6E65642D 43657274
69666963 6174652D 31333531 36303537 3630301E 170D3933 30333031 30303033
35385A17 0D323030 31303130 30303030 305A3031 312F302D 06035504 03132649
4F532D53 656C662D 5369676E 65642D43 65727469 66696361 74652D31 33353136
30353736 3030819F 300D0609 2A864886 F70D0101 01050003 818D0030 81890281
8100B068 86D31732 E73D2FAD 05795D6D 402CE60A B93D4A88 C98C3F54 0982911D
D211EC23 77734A5B 7D7E5684 388AD095 67354C95 92FD05E3 F3385391 8AB9A866
B5925E04 A846F740 1C9AC0D9 6C829511 D9C5308F 13C4EA86 AF96A94E CD57B565
92317B2E 75D6AB18 04AC7E14 3923D3AC 0F19BC6A 816E6FA4 5F08CDA5 B95D334F
DA410203 010001A3 6D306B30 0F060355 1D130101 FF040530 030101FF 30180603
551D1104 11300F82 0D69696C 796E6173 2D333536 302E301F 0603551D 23041830
16801457 D1216AF3 F0841465 3DDDD4C9 D08E06C5 9890D530 1D060355 1D0E0416
041457D1 216AF3F0 8414653D DDD4C9D0 8E06C598 90D5300D 06092A86 4886F70D
01010405 00038181 0014DC5C 2D19D7E9 CB3E8ECE F7CF2185 32D8FE70 405CAA03
dot1x system-auth-control
dot1x critical eapol
!
!
!
errdisable recovery cause bpduguard
errdisable recovery interval 60
!
spanning-tree mode pvst
spanning-tree logging
spanning-tree portfast bpduguard default
spanning-tree extend system-id
spanning-tree vlan 1-200 priority 24576
!
vlan internal allocation policy ascending
lldp run
!
!
!
!
!
!
interface FastEthernet0/2
switchport access vlan 33
switchport mode access
authentication order mab
authentication priority mab
authentication port-control auto
mab
spanning-tree portfast
!
interface Vlan33
ip address 192.168.33.2 255.255.255.0
!
ip default-gateway 192.168.33.1
ip http server
ip http secure-server
!
ip route 0.0.0.0 0.0.0.0 192.168.33.1
!
ip access-list extended MY_TEST
permit ip any any
ip access-list extended redirect
deny ip any host 192.168.131.1
permit tcp any any eq www
permit tcp any any eq 443
ip access-list extended webAuthList
permit ip any any
!
ip sla enable reaction-alerts
logging esm config
logging trap warnings
logging facility auth
logging 10.48.76.31
snmp-server community c3560public RO
snmp-server community c3560private RW
snmp-server community private RO
radius-server host 192.168.131.1 auth-port 1812 acct-port 1813 key cisco
radius-server vsa send authentication
radius-server vsa send accounting
!
!
!
privilege exec level 15 configure terminal
privilege exec level 15 configure
privilege exec level 2 debug radius
privilege exec level 2 debug aaa
privilege exec level 2 debug
!
line con 0
line vty 0 4
exec-timeout 0 0
password Cisco123
authorization commands 1 MyTacacs
authorization commands 2 MyTacacs
authorization commands 15 MyTacacs
authorization exec MyTacacs
login authentication MyTacacs
line vty 5 15
!
ntp server 10.48.76.33
end
HTTP代理配置
如果为客户端使用HTTP代理,则意味着您的客户端:
- 对HTTP协议使用非常规端口
- 将所有流量发送到该代理
要使交换机侦听非常规端口(例如8080),请使用以下命令:
ip http port 8080
ip port-map http port 8080
您还需要配置所有客户端以继续使用其代理,但不将代理用于ISE IP地址。所有浏览器都包含一项功能,允许您输入不应使用代理的主机名或IP地址。如果不为ISE添加例外,您会遇到循环身份验证页面。
您还需要修改您的重定向ACL以允许在代理端口(本示例中为8080)上使用。
有关交换机SVI的重要说明
此时,交换机需要一个交换机虚拟接口(SVI)来回复客户端并将Web门户重定向发送到客户端。此SVI不必位于客户端子网/VLAN上。但是,如果交换机在客户端子网/VLAN中没有SVI,则必须使用其他任何SVI并发送客户端路由表中定义的流量。这通常意味着流量被发送到网络核心中的另一个网关;此流量返回客户端子网内的接入交换机。
防火墙通常会阻止来自和流向同一交换机的流量,因此重定向可能无法正常工作。解决方法是在防火墙上允许此行为,或者在客户端子网的接入交换机上创建SVI。
有关HTTPS重定向的重要说明
交换机能够重定向HTTPS流量。因此,如果访客客户端在HTTPS中有主页,则重定向会正确进行。
重定向的整个概念基于设备(在本例中为交换机)欺骗网站IP地址这一事实。但是,当交换机拦截和重定向HTTPS流量时,将会出现一个主要问题,因为交换机在传输层安全(TLS)握手中只能显示自己的证书。由于此证书与最初请求的网站不同,因此大多数浏览器都会发出重大警报。浏览器会出于安全考虑,正确处理另一个证书的重定向和呈现。对此,没有解决方法,并且交换机也不能伪装您的原始网站证书。
最终结果
客户端PC插入并执行MAB。MAC地址未知,因此ISE将重定向属性推回交换机。用户尝试访问网站并被重定向。
当登录页的身份验证成功时,ISE通过授权更改退回交换机端口,再次启动第2层MAB身份验证。
但是,ISE知道它是以前的Web身份验证客户端,并根据Web身份验证凭证对客户端进行授权(虽然这是第2层身份验证)。
在ISE身份验证日志中,MAB身份验证显示在日志底部。虽然未知,但对MAC地址进行了身份验证和分析,并返回了webauth属性。接下来,使用用户的用户名(即,用户在登录页面中键入其凭证)进行身份验证。身份验证完成后,会立即进行新的第2层身份验证,以用户名作为凭证;在此身份验证步骤中,您可以返回动态VLAN等属性。
验证
当前没有可用于此配置的验证过程。
故障排除
目前没有针对此配置的故障排除信息。
相关信息