配置访客接入WLAN网络示例(MAC优先的Portal认证)
组网图形
图1 配置WLAN MAC优先的Portal认证示例组网图
- 业务需求
- 组网需求
- 数据规划
- 配置思路
- 配置注意事项
- 操作步骤
- 配置文件
业务需求
某企业为了提高WLAN网络的安全性,采用MAC优先的外置Portal认证方式,实现对用户的接入控制。
组网需求
- AC组网方式:旁挂二层组网。
- DHCP部署方式:
- AC作为DHCP服务器为AP分配IP地址。
- 汇聚交换机SwitchB作为DHCP服务器为STA分配IP地址。
- 业务数据转发方式:隧道转发。
- 认证方式:MAC优先的Portal认证。
- 安全策略:开放认证。
数据规划
表1 AC数据规划表
配置项 | 数据 |
AP管理VLAN | VLAN100 |
STA业务VLAN | VLAN101 |
DHCP服务器 | AC作为DHCP服务器为AP分配IP地址 汇聚交换机SwitchB作为DHCP服务器为STA分配IP地址,STA的默认网关为10.23.101.2 |
AP的IP地址池 | 10.23.100.2~10.23.100.254/24 |
STA的IP地址池 | 10.23.101.4~10.23.101.254/24 |
AC的源接口IP地址 | VLANIF100:10.23.100.1/24 |
AP组 |
|
域管理模板 |
|
SSID模板 |
|
安全模板 |
|
RADIUS认证参数 | RADIUS认证方案名称:wlan-net RADIUS计费方案名称:wlan-net RADIUS服务器模板名称:wlan-net,其中:
|
Portal服务器模板 |
|
Portal接入模板 |
|
MAC接入模板 | 名称:wlan-net |
免认证规则模板 |
|
认证模板 |
|
VAP模板 |
|
配置思路
- 配置AP、AC和周边网络设备之间实现网络互通。
- 配置AP上线。
- 配置MAC优先的Portal认证。
- 配置RADIUS服务器参数。
- 配置针对外置Portal服务器的Portal接入模板,管理Portal接入控制参数。
- 配置MAC接入模板,用于MAC优先的Portal认证。
- 配置免认证规则模板,实现AC放行访问DNS服务器的报文。
- 配置认证模板,管理MAC优先Portal认证的相关配置。
- 配置WLAN业务参数。
- 配置第三方服务器参数。
配置注意事项
- 纯组播报文由于协议要求在无线空口没有ACK机制保障,且无线空口链路不稳定,为了纯组播报文能够稳定发送,通常会以低速报文形式发送。如果网络侧有大量异常组播流量涌入,则会造成无线空口拥堵。为了减小大量低速组播报文对无线网络造成的冲击,建议配置组播报文抑制功能。配置前请确认是否有组播业务,如果有,请谨慎配置限速值。
- 业务数据转发方式采用直接转发时,建议在直连AP的交换机接口上配置组播报文抑制。
- 业务数据转发方式采用隧道转发时,建议在AC的流量模板下配置组播报文抑制。
- 建议在与AP直连的设备接口上配置端口隔离,如果不配置端口隔离,尤其是业务数据转发方式采用直接转发时,可能会在VLAN内形成大量不必要的广播报文,导致网络阻塞,影响用户体验。
- 隧道转发模式下,管理VLAN和业务VLAN不能配置为同一VLAN,且AP和AC之间只能放通管理VLAN,不能放通业务VLAN。
- V200R021C00版本开始,配置CAPWAP源接口或源地址时,会检查和安全相关的配置是否已存在,包括DTLS加密的PSK、AC间DTLS加密的PSK、登录AP的用户名和密码、全局离线管理VAP的登录密码,均已存在才能成功配置,否则会提示用户先完成相关的配置。
- V200R021C00版本开始,AC默认开启CAPWAP控制隧道的DTLS加密功能。开启该功能,添加AP时AP会上线失败,此时需要先开启CAPWAP DTLS不认证方式(capwap dtls no-auth enable)让AP上线,以便AP获取安全凭证,AP上线后应及时关闭该功能(undo capwap dtls no-auth enable),避免未授权AP上线。
操作步骤
- 配置周边设备
# 配置接入交换机SwitchA的GE0/0/1和GE0/0/2接口加入VLAN100,GE0/0/1的缺省VLAN为VLAN100。
<HUAWEI> system-view
[HUAWEI] sysname SwitchA
[SwitchA] vlan batch 100
[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] port link-type trunk
[SwitchA-GigabitEthernet0/0/1] port trunk pvid vlan 100
[SwitchA-GigabitEthernet0/0/1] port trunk allow-pass vlan 100
[SwitchA-GigabitEthernet0/0/1] port-isolate enable
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] port link-type trunk
[SwitchA-GigabitEthernet0/0/2] port trunk allow-pass vlan 100
[SwitchA-GigabitEthernet0/0/2] quit
# 配置汇聚交换机SwitchB的接口GE0/0/1和GE0/0/2加入VLAN100,接口GE0/0/2和GE0/0/3加入VLAN101。
<HUAWEI> system-view
[HUAWEI] sysname SwitchB
[SwitchB] vlan batch 100 101
[SwitchB] interface gigabitethernet 0/0/1
[SwitchB-GigabitEthernet0/0/1] port link-type trunk
[SwitchB-GigabitEthernet0/0/1] port trunk allow-pass vlan 100
[SwitchB-GigabitEthernet0/0/1] quit
[SwitchB] interface gigabitethernet 0/0/2
[SwitchB-GigabitEthernet0/0/2] port link-type trunk
[SwitchB-GigabitEthernet0/0/2] port trunk allow-pass vlan 100 101
[SwitchB-GigabitEthernet0/0/2] quit
[SwitchB] interface gigabitethernet 0/0/3
[SwitchB-GigabitEthernet0/0/3] port link-type trunk
[SwitchB-GigabitEthernet0/0/3] port trunk allow-pass vlan 101
[SwitchB-GigabitEthernet0/0/3] quit
# 配置Router的接口GE1/0/0加入VLAN101,创建接口VLANIF101并配置IP地址为10.23.101.2/24。
<Huawei> system-view
[Huawei] sysname Router
[Router] vlan batch 101
[Router] interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0] port link-type trunk
[Router-GigabitEthernet1/0/0] port trunk allow-pass vlan 101
[Router-GigabitEthernet1/0/0] quit
[Router] interface vlanif 101
[Router-Vlanif101] ip address 10.23.101.2 24
[Router-Vlanif101] quit
- 配置AC与其它网络设备互通
如果AC直接连接AP,需要在AC直连AP的接口上配置缺省VLAN为管理VLAN100。
# 配置AC的接口GE0/0/1加入VLAN100和VLAN101。
<HUAWEI> system-view
[HUAWEI] sysname AC
[AC] vlan batch 100 101
[AC] interface gigabitethernet 0/0/1
[AC-GigabitEthernet0/0/1] port link-type trunk
[AC-GigabitEthernet0/0/1] port trunk allow-pass vlan 100 101
[AC-GigabitEthernet0/0/1] quit
- 配置DHCP服务器为STA和AP分配IP地址
# 在AC上配置VLANIF100接口为AP提供IP地址。
[AC] dhcp enable
[AC] interface vlanif 100
[AC-Vlanif100] ip address 10.23.100.1 24
[AC-Vlanif100] dhcp select interface
[AC-Vlanif100] quit
# 在SwitchB上配置VLANIF101接口为STA提供IP地址,并指定10.23.101.2作为STA的默认网关地址。
[SwitchB] dhcp enable
[SwitchB] interface vlanif 101
[SwitchB-Vlanif101] ip address 10.23.101.1 24
[SwitchB-Vlanif101] dhcp select interface
[SwitchB-Vlanif101] dhcp server gateway-list 10.23.101.2
[SwitchB-Vlanif101] dhcp server dns-list 8.8.8.8
[SwitchB-Vlanif101] dhcp server excluded-ip-address 10.23.101.3
[SwitchB-Vlanif101] quit
- 配置AC的缺省路由,下一跳为Router的VLANIF101
[AC] interface vlanif 101
[AC-Vlanif101] ip address 10.23.101.3 24
[AC-Vlanif101] quit
[AC] ip route-static 0.0.0.0 0.0.0.0 10.23.101.2
- 配置AP上线
# 创建AP组,用于将相同配置的AP都加入同一AP组中。
[AC] wlan
[AC-wlan-view] ap-group name ap-group1
[AC-wlan-ap-group-ap-group1] quit
# 创建域管理模板,在域管理模板下配置AC的国家码并在AP组下引用域管理模板。
[AC-wlan-view] regulatory-domain-profile name default
[AC-wlan-regulate-domain-default] country-code cn
[AC-wlan-regulate-domain-default] quit
[AC-wlan-view] ap-group name ap-group1
[AC-wlan-ap-group-ap-group1] regulatory-domain-profile default
Warning: Modifying the country code will clear channel, power and antenna gain configurations of the radio and reset the AP. Continue?[Y/N]:y
[AC-wlan-ap-group-ap-group1] quit
[AC-wlan-view] quit
# 配置AC的源接口。
V200R021C00版本开始,配置CAPWAP源接口或源地址时,会检查和安全相关的配置是否已存在,包括DTLS加密的PSK、AC间DTLS加密的PSK、登录AP的用户名和密码、全局离线管理VAP的登录密码,均已存在才能成功配置,否则会提示用户先完成相关的配置。
[AC] capwap source interface vlanif 100
Set the DTLS PSK(contains 6-32 plain-text characters, or 48 or 68 cipher-text characters that must be a combination of at least two of the following: lowercase letters a to z, uppercase letters A to Z, digits, and special characters):******
Set the DTLS inter-controller PSK(contains 6-32 plain-text characters, or 48 or 68 cipher-text characters that must be a combination of at least two of the following: lowercase letters a to z, uppercase letters A to Z, digits, and special characters):******
Set the user name for FIT APs(contains 4-31 plain-text characters, which can only include letters, digits and underlines. And the first character must be a letter):admin
Set the password for FIT APs(plain-text password of 8-128 characters or cipher-text password of 48-188 characters that must be a combination of at least three of the following: lowercase letters a to z, uppercase letters A to Z, digits, and special characters):********
Set the global temporary-management psk(contains 8-63 plain-text characters, or 48-108 cipher-text characters that must be a combination of at least two of the following: lowercase letters a to z, uppercase letters A to Z, digits, and special characters):********
# 开启CAPWAP DTLS不认证方式。(V200R021C00及之后版本)
[AC] capwap dtls no-auth enable
V200R021C00版本开始,AC默认开启CAPWAP控制隧道的DTLS加密功能。开启该功能,添加AP时AP会上线失败,此时需要先开启CAPWAP DTLS不认证方式让AP上线,以便AP获取安全凭证,AP上线后应及时关闭该功能,避免未授权AP上线。
# 在AC上离线导入AP,并将AP加入AP组“ap-group1”中。假设AP的MAC地址为60de-4476-e360,并且根据AP的部署位置为AP配置名称,便于从名称上就能够了解AP的部署位置。例如MAC地址为60de-4476-e360的AP部署在1号区域,命名此AP为area_1。
ap auth-mode命令缺省情况下为MAC认证,如果之前没有修改其缺省配置,可以不用执行ap auth-mode mac-auth。
举例中使用的AP为AP5030DN,具有射频0和射频1两个射频。AP5030DN的射频0为2.4GHz射频,射频1为5GHz射频。
[AC] wlan
[AC-wlan-view] ap auth-mode mac-auth
[AC-wlan-view] ap-id 0 ap-mac 60de-4476-e360
[AC-wlan-ap-0] ap-name area_1
Warning: This operation may cause AP reset. Continue? [Y/N]:y
[AC-wlan-ap-0] ap-group ap-group1
Warning: This operation may cause AP reset. If the country code changes, it will clear channel, power and antenna gain configuration s of the radio, Whether to continue? [Y/N]:y
[AC-wlan-ap-0] quit
# 将AP上电后,当执行命令display ap all查看到AP的“State”字段为“nor”时,表示AP正常上线。
[AC-wlan-view] display ap all
Total AP information:
nor : normal [1]
Extra information:
P : insufficient power supply
--------------------------------------------------------------------------------------------------
ID MAC Name Group IP Type State STA Uptime ExtraInfo
--------------------------------------------------------------------------------------------------
0 60de-4476-e360 area_1 ap-group1 10.23.100.254 AP5030DN nor 0 10S -
--------------------------------------------------------------------------------------------------
Total: 1
# 关闭CAPWAP DTLS不认证方式。(V200R021C00及之后版本)
[AC-wlan-view] quit
[AC] undo capwap dtls no-auth enable
[AC] wlan
- 配置RADIUS服务器模板、RADIUS认证方案和RAIUDS计费方案
请确保AC上的RADIUS服务器地址、端口号、共享密钥配置正确,并且和RADIUS服务器保持一致。
# 配置RADIUS服务器模板。
[AC] radius-server template wlan-net
[AC-radius-wlan-net] radius-server authentication 10.23.102.1 1812
[AC-radius-wlan-net] radius-server shared-key cipher Huawei123
[AC-radius-wlan-net] quit
# 创建认证方案并配置认证方式为RADIUS。
[AC] aaa
[AC-aaa] authentication-scheme wlan-net
[AC-aaa-authen-wlan-net] authentication-mode radius
[AC-aaa-authen-wlan-net] quit
# 创建计费方案并配置计费方式为RADIUS。
[AC-aaa] accounting-scheme wlan-net
[AC-aaa-accounting-wlan-net] accounting-mode radius
[AC-aaa-accounting-wlan-net] accounting realtime 15
[AC-aaa-accounting-wlan-net] quit
[AC-aaa] quit
以AC与Agile Controller-Campus对接为例,计费功能并非真实意义上的计算费用,而是通过计费报文维护终端的在线信息。
accounting realtime命令用来配置实时计费间隔。实时计费间隔的取值对设备和RADIUS服务器的性能有要求,实时计费间隔的取值越小,对设备和RADIUS服务器的性能要求就越高。请根据用户数设置实时计费间隔。
用户数 | 实时计费间隔 |
1~99 | 3min |
100~499 | 6min |
500~999 | 12min |
≥1000 | ≥15min |
- 配置Portal认证页面URL地址,在用户认证成功前,AC将用户的访问地址重定向到Portal服务器
为了重定向更安全和快速,建议采用域名方式,但需要提前在DNS服务器配置域名与服务器IP地址的映射关系。
AC上配置的URL携带的参数字段名称,和服务器侧应保持一致。
[AC] url-template name wlan-net
[AC-url-template-wlan-net] url http://portal.com:8080/portal
[AC-url-template-wlan-net] url-parameter ssid ssid redirect-url url
[AC-url-template-wlan-net] quit
- 配置Portal服务器模板
请确保AC上Portal服务器地址、URL地址、端口号、共享密钥配置正确,并且和Portal服务器保持一致。
[AC] web-auth-server wlan-net
[AC-web-auth-server-wlan-net] server-ip 10.23.103.1
[AC-web-auth-server-wlan-net] shared-key cipher Huawei123
[AC-web-auth-server-wlan-net] port 50200
[AC-web-auth-server-wlan-net] url-template wlan-net ciphered-parameter-name cpname iv-parameter-name iv-value key cipher Huawei123
[AC-web-auth-server-wlan-net] quit
- 配置Portal接入模板“wlan-net”,并配置Portal认证为二层Portal认证
[AC] portal-access-profile name wlan-net
[AC-portal-access-profile-wlan-net] web-auth-server wlan-net direct
[AC-portal-access-profile-wlan-net] quit
- 配置MAC接入模板,用于MAC优先的Portal认证
[AC] mac-access-profile name wlan-net
[AC-mac-access-profile-wlan-net] quit
- 配置免认证规则模板
[AC] free-rule-template name default_free_rule
[AC-free-rule-default_free_rule] free-rule 1 destination ip 8.8.8.8 mask 32
[AC-free-rule-default_free_rule] quit
- 配置认证模板“wlan-net”,并启用MAC优先的Portal认证
[AC] authentication-profile name wlan-net
[AC-authentication-profile-wlan-net] portal-access-profile wlan-net
[AC-authentication-profile-wlan-net] mac-access-profile wlan-net
[AC-authentication-profile-wlan-net] free-rule-template default_free_rule
[AC-authentication-profile-wlan-net] authentication-scheme wlan-net
[AC-authentication-profile-wlan-net] radius-server wlan-net
[AC-authentication-profile-wlan-net] quit
- 配置WLAN业务参数
# 创建名为“wlan-net”的安全模板,并配置安全策略为open方式的开放认证。
[AC] wlan
[AC-wlan-view] security-profile name wlan-net
[AC-wlan-sec-prof-wlan-net] security open
[AC-wlan-sec-prof-wlan-net] quit
# 创建名为“wlan-net”的SSID模板,并配置SSID名称为“wlan-net”。
[AC-wlan-view] ssid-profile name wlan-net
[AC-wlan-ssid-prof-wlan-net] ssid wlan-net
[AC-wlan-ssid-prof-wlan-net] quit
# 创建名为“wlan-net”的VAP模板,配置业务数据转发模式、业务VLAN,并且引用安全模板、SSID模板和认证模板。
[AC-wlan-view] vap-profile name wlan-net
[AC-wlan-vap-prof-wlan-net] forward-mode tunnel
[AC-wlan-vap-prof-wlan-net] service-vlan vlan-id 101
[AC-wlan-vap-prof-wlan-net] security-profile wlan-net
[AC-wlan-vap-prof-wlan-net] ssid-profile wlan-net
[AC-wlan-vap-prof-wlan-net] authentication-profile wlan-net
[AC-wlan-vap-prof-wlan-net] quit
# 配置AP组引用VAP模板,AP上射频0和射频1都使用VAP模板“wlan-net”的配置。
[AC-wlan-view] ap-group name ap-group1
[AC-wlan-ap-group-ap-group1] vap-profile wlan-net wlan 1 radio 0
[AC-wlan-ap-group-ap-group1] vap-profile wlan-net wlan 1 radio 1
[AC-wlan-ap-group-ap-group1] quit
[AC-wlan-view] quit
- 配置第三方服务器
具体配置方法建议参考相应的产品手册。 - 检查配置结果
- 完成配置后,STA可以搜索到SSID为wlan-net的无线网络。
- STA关联到无线网络上后,能够被分配相应的IP地址。
- STA上打开浏览器访问网络时,会自动跳转到外置Portal服务器提供的认证页面,在页面上输入正确的用户名和密码后,STA认证成功并可以正常访问网络。
- 假设服务器配置的MAC地址有效时间为60分钟。用户断开无线网络5分钟,重新连接无线网络时,可以直接访问;用户断开无线网络65分钟,重新连接无线网络时,会被重定向到Portal认证页面。
配置文件
- SwitchA的配置文件
#
sysname SwitchA
#
vlan batch 100
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk pvid vlan 100
port trunk allow-pass vlan 100
port-isolate enable group 1
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 100
#
return
- SwitchB的配置文件
#
sysname SwitchB
#
vlan batch 100 to 101
#
dhcp enable
#
interface Vlanif101
ip address 10.23.101.1 255.255.255.0
dhcp select interface
dhcp server gateway-list 10.23.101.2
dhcp server dns-list 8.8.8.8
dhcp server excluded-ip-address 10.23.101.3
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 100
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 100 to 101
#
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 101
#
return
- Router的配置文件
#
sysname Router
#
vlan batch 101
#
interface Vlanif101
ip address 10.23.101.2 255.255.255.0
#
interface GigabitEthernet1/0/0
port link-type trunk
port trunk allow-pass vlan 101
#
return
- AC的配置文件
#
sysname AC
#
vlan batch 100 to 101
#
authentication-profile name wlan-net
mac-access-profile wlan-net
portal-access-profile wlan-net
free-rule-template default_free_rule
authentication-scheme wlan-net
radius-server wlan-net
#
dhcp enable
#
aaa
authentication-scheme wlan-net
authentication-mode radius
accounting-scheme wlan-net
accounting-mode radius
accounting realtime 15
#
interface Vlanif100
ip address 10.23.100.1 255.255.255.0
dhcp select interface
#
interface Vlanif101
ip address 10.23.101.3 255.255.255.0
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 100 101
#
ip route-static 0.0.0.0 0.0.0.0 10.23.101.2
#
capwap source interface vlanif100
#
radius-server template wlan-net
radius-server shared-key cipher %^%#Oc6_BMCw#9gZ2@SMVtk!PAC6>Ou*eLW/"qLp+f#$%^%#
radius-server authentication 10.23.102.1 1812 weight 80
#
free-rule-template name default_free_rule
free-rule 1 destination ip 8.8.8.8 mask 255.255.255.255
#
url-template name wlan-net
url http://portal.com:8080/portal
#
web-auth-server wlan-net
server-ip 10.23.103.1
port 50200
shared-key cipher %^%#4~ZXE3]6@BXu;2;aw}hA{rSb,@"L@T#e{%6G1AiD%^%#
url-template wlan-net ciphered-parameter-name cpname iv-parameter-name iv-value key cipher %^%#4~ZXE3]6@BXu;2;aw}hA{rSb,@"L@T#e{%6G1AiD%^%#
#
portal-access-profile name wlan-net
web-auth-server wlan-net direct
#
wlan
security-profile name wlan-net
ssid-profile name wlan-net
ssid wlan-net
vap-profile name wlan-net
forward-mode tunnel
service-vlan vlan-id 101
ssid-profile wlan-net
security-profile wlan-net
authentication-profile wlan-net
ap-group name ap-group1
regulatory-domain-profile default
radio 0
vap-profile wlan-net wlan 1
radio 1
vap-profile wlan-net wlan 1
ap-id 0 type-id 35 ap-mac 60de-4476-e360 ap-sn 210235554710CB000042
ap-name area_1
ap-group ap-group1
#
mac-access-profile name wlan-net
#
return
标签:ap,AC,wlan,示例,AP,MAC,WLAN,net,模板
From: https://blog.51cto.com/MDYHCIE/9634819