配置通过外置Portal认证控制企业内部用户访问网络示例
组网需求
如图2-13所示,某公司访客区内终端通过Switch接入公司内部网络。如果该公司内存在非法接入和非授权访问的状况,将会导致企业业务系统的破坏以及关键信息资产的泄露,因此管理员希望Switch能够对用户的网络访问权限进行控制,以保证公司内网的安全。
配置思路
采用如下的思路在Switch上进行配置:
- 创建并配置RADIUS服务器模板、AAA方案以及认证域,并在认证域下绑定RADIUS服务器模板与AAA方案,以便Switch通过RADIUS服务器对接入用户进行身份认证。
- 使能Portal认证,以实现对访客区内访客的网络访问权限进行控制。
- 配置Portal服务器模板,以实现设备与Portal服务器互通。
配置本举例之前,需确保网络中各设备之间已能互通。
- 在LAN Switch系统视图下执行命令l2protocol-tunnel user-defined-protocol 802.1x protocol-mac 0180-c200-0003 group-mac 0100-0000-0002定义二层透明传输EAP报文。
- 在LAN Switch的下行与用户连接的接口以及上行与Switch连接的接口上执行命令l2protocol-tunnel user-defined-protocol 802.1x enable和bpdu enable以使能接口的二层协议透明传输功能。
本举例只包括Switch上的配置,LAN Switch和RADIUS服务器的配置这里不做相关说明。
操作步骤
- 创建VLAN并配置接口允许通过的VLAN,保证网络通畅。
# 创建VLAN10、VLAN20。
<HUAWEI> system-view [HUAWEI] sysname Switch [Switch] vlan batch 10 20
# 配置Switch与用户连接的接口GE0/0/1为Access类型接口,并将其加入VLAN10。
[Switch] interface gigabitethernet 0/0/1 [Switch-GigabitEthernet0/0/1] port link-type access [Switch-GigabitEthernet0/0/1] port default vlan 10 [Switch-GigabitEthernet0/0/1] quit [Switch] interface vlanif 10 [Switch-Vlanif10] ip address 192.168.1.10 24 [Switch-Vlanif10] quit
设备与用户连接的接口类型与接口加入的VLAN应以用户实际所属VLAN为准,此处假设所有的用户都被划分到VLAN10。
# 配置Switch连接RADIUS服务器的接口GE0/0/2为Access类型接口,并将其加入VLAN20。
[Switch] interface gigabitethernet 0/0/2 [Switch-GigabitEthernet0/0/2] port link-type access [Switch-GigabitEthernet0/0/2] port default vlan 20 [Switch-GigabitEthernet0/0/2] quit
- 创建并配置RADIUS服务器模板、AAA认证方案以及认证域。
# 创建并配置RADIUS服务器模板“rd1”。
[Switch] radius-server template rd1 [Switch-radius-rd1] radius-server authentication 192.168.2.30 1812 [Switch-radius-rd1] radius-server shared-key cipher Huawei@2012 [Switch-radius-rd1] quit
# 创建AAA认证方案“abc”并配置认证方式为RADIUS。
[Switch] aaa [Switch-aaa] authentication-scheme abc [Switch-aaa-authen-abc] authentication-mode radius [Switch-aaa-authen-abc] quit
# 创建认证域“isp1”,并在其上绑定AAA认证方案“abc”与RADIUS服务器模板“rd1”。
[Switch-aaa] domain isp1 [Switch-aaa-domain-isp1] authentication-scheme abc [Switch-aaa-domain-isp1] radius-server rd1 [Switch-aaa-domain-isp1] quit [Switch-aaa] quit
# 配置全局默认域为“isp1”。用户进行接入认证时,以格式“user@isp1”输入用户名即可在isp1域下进行aaa认证。如果用户名中不携带域名或携带的域名不存在,用户将会在默认域中进行认证。
[Switch] domain isp1
# 测试用户是否能够通过RADIUS模板的认证。(已在RADIUS服务器上配置了测试用户test@huawei.com,用户密码Huawei2012)
[Switch] test-aaa test@huawei.com Huawei2012 radius-template rd1 Info: Account test succeed.
- 在Switch上配置Portal认证。
# 将NAC配置模式切换成统一模式。
[Switch] authentication unified-mode
# 在接口GE0/0/1上使能Portal认证。[Switch] interface gigabitethernet 0/0/1 [Switch-GigabitEthernet0/0/1] authentication portal [Switch-GigabitEthernet0/0/1] authentication mode multi-authen max-user 100 [Switch-GigabitEthernet0/0/1] quit
# 创建并配置Portal服务器模板“abc”。[Switch] web-auth-server abc [Switch-web-auth-server-abc] server-ip 192.168.2.20 [Switch-web-auth-server-abc] port 50200 [Switch-web-auth-server-abc] url http://192.168.2.20:8080/webagent [Switch-web-auth-server-abc] shared-key cipher Huawei@123 [Switch-web-auth-server-abc] quit
请确保设备配置的端口号与Portal服务器使用的端口号保持一致。
# 在接口GE0/0/1上绑定Portal服务器模板“abc”。[Switch] interface gigabitethernet 0/0/1 [Switch-GigabitEthernet0/0/1] web-auth-server abc direct [Switch-GigabitEthernet0/0/1] quit
本举例中以用户采用静态分配IP地址方式为例。如果用户采用DHCP方式获取IP地址,并且DHCP服务器处于Switch的上行网络,则需使用命令authentication free-rule创建免认证规则并且保证DHCP服务器处于免认证规则内。
另一方面,如果指向Portal服务器的URL需要DNS服务器解析,并且DNS服务器处于Switch的上行网络,则同样需创建免认证规则并且保证DNS服务器处于免认证规则内。
# (推荐配置)配置指定VLAN内用户下线探测报文的源IP地址和源MAC地址。建议用户下线探测报文的源IP地址和源MAC地址配置为用户网关的IP地址和MAC地址。[Switch] access-user arp-detect vlan 10 ip-address 192.168.1.10 mac-address 2222-1111-1234
- 验证配置结果。
- 执行命令display portal和display web-auth-server configuration查看外置Portal认证的配置信息。从显示信息中能够看到接口GE0/0/1下已绑定Portal服务器模板。(web-auth-server layer2(direct))。
- 用户打开浏览器输入任意的网络地址后,将会被重定向到Portal认证页面。之后,用户可输入用户名和密码进行认证。
- 如果用户输入的用户名和密码验证正确,Portal认证页面会显示认证成功信息。用户即可访问网络。
- 用户上线后,管理员可在设备上执行命令display access-user access-type portal查看在线Portal认证用户信息。
配置文件
Switch的配置文件
# sysname Switch # vlan batch 10 20 # domain isp1 # access-user arp-detect vlan 10 ip-address 192.168.1.10 mac-address 2222-1111-1234 # radius-server template rd1 radius-server shared-key cipher %@%@BS'$!w:u7H.lu:/&W9A5=pUt%@%@ radius-server authentication 192.168.2.30 1812 weight 80 # web-auth-server abc server-ip 192.168.2.20 port 50200 shared-key cipher %@%@TsYu#cg-R~+u'])=,3Z!R5Pv%@%@ url http://192.168.2.20:8080/webagent # aaa authentication-scheme abc authentication-mode radius domain isp1 authentication-scheme abc radius-server rd1 # interface Vlanif10 ip address 192.168.1.10 255.255.255.0 # interface GigabitEthernet0/0/1 port link-type access port default vlan 10 authentication portal authentication mode multi-authen max-user 100 web-auth-server abc direct # interface GigabitEthernet0/0/2 port link-type access port default vlan 20 # return