汇聚层交换机上的华为Portal认证:从零到一的实战部署指南
1. 为什么选择汇聚层做Portal认证很多刚接触企业网络的朋友可能会有疑问为什么要把Portal认证放在汇聚层交换机而不是接入层这个问题我刚开始也纠结过后来在实际项目中踩过几次坑才真正理解。简单来说汇聚层作为接入层和核心层的桥梁在这里做认证能带来三个明显好处第一是配置管理集中化。想象一下如果一个园区有50台接入交换机每台都要单独配置认证参数那运维工作量会非常恐怖。而在汇聚层做认证只需要配置几台设备就能覆盖所有接入点。我去年参与的一个校园网改造项目就是把原来分散在接入层的Portal认证迁移到汇聚层结果运维效率提升了70%以上。第二是策略统一性。在汇聚层可以基于不同VLAN或IP段实施差异化的认证策略。比如市场部的访客VLAN用简单密码认证研发部的VLAN则需要绑定MAC账号双重验证。这种灵活性在接入层很难实现。第三是减轻接入层负担。低端接入交换机性能有限大量认证请求可能导致CPU过载。有次客户反映网络卡顿排查发现就是因为接入交换机同时处理Portal认证和流量转发导致性能瓶颈。迁移到汇聚层后问题立刻解决。2. 基础网络环境搭建2.1 VLAN与IP地址规划在开始配置前我们需要先设计好网络结构。以典型园区网为例假设有以下需求员工使用VLAN 11网段10.1.11.0/24访客使用VLAN 12网段10.1.12.0/24汇聚交换机LSW1作为网关配置命令如下[LSW1]vlan batch 11 12 [LSW1-Vlanif11]ip address 10.1.11.1 24 [LSW1-Vlanif12]ip address 10.1.12.1 24这里有个细节要注意华为交换机默认VLAN接口是shutdown状态记得用undo shutdown激活。我有次排查两小时才发现是这个原因导致网络不通。2.2 接口配置要点接入层交换机连接终端的接口需要配置为access模式[LSW1-GigabitEthernet0/0/1]port link-type access [LSW1-GigabitEthernet0/0/1]port default vlan 11 [LSW1-GigabitEthernet0/0/2]port link-type access [LSW1-GigabitEthernet0/0/2]port default vlan 12如果接口要同时传输多个VLAN则需要配置为trunk模式。但Portal认证场景下建议终端直连的接口都用access模式避免后续认证策略混乱。3. AAA认证系统配置3.1 RADIUS服务器对接华为设备支持多种认证方式企业环境推荐用RADIUS协议对接认证服务器。先创建服务器模板[LSW1]radius-server template abc1 [LSW1-radius-abc1]radius-server authentication 10.1.11.11 1812 [LSW1-radius-abc1]radius-server accounting 10.1.11.11 1813 [LSW1-radius-abc1]radius-server shared-key cipher ABCabc123这里容易踩的坑是共享密钥不一致。有次项目上线后认证一直失败后来发现是交换机配置的密钥和RADIUS服务器不一致。建议用test-aaa命令提前测试[LSW1]test-aaa test ABCabc123 radius-template abc1 Info: Account test succeed # 看到这个提示才算成功3.2 认证域与方案绑定华为的认证域概念相当于用户分组不同域可以应用不同策略[LSW1]aaa [LSW1-aaa]authentication-scheme abc1 [LSW1-aaa-authen-abc1]authentication-mode radius [LSW1-aaa]domain abc1.com [LSW1-aaa-domain-abc1.com]authentication-scheme abc1 [LSW1-aaa-domain-abc1.com]radius-server abc1特别注意如果用户登录时没带域名如user1而不是user1abc1.com需要在域下配置default-admin domain指定默认域。4. Portal认证全流程配置4.1 统一模式切换华为新版本推荐使用统一模式[LSW1]authentication unified-mode这个命令需要重启生效所以最好在业务低峰期操作。我有次在白天执行导致大量用户掉线被客户投诉到怀疑人生。4.2 Portal服务器模板配置前要准备好Portal服务器的IP、端口和URL[LSW1]web-auth-server abc1 [LSW1-web-auth-server-abc1]server-ip 10.1.11.11 [LSW1-web-auth-server-abc1]port 50200 [LSW1-web-auth-server-abc1]url http://10.1.11.11:8080/portal [LSW1-web-auth-server-abc1]shared-key cipher ABCabc123URL中的/portal是常见默认路径但具体要看Portal服务器配置。曾经遇到404错误就是因为路径没配置对。4.3 认证模板绑定最后把各个模块组装起来[LSW1]portal-access-profile name abc1 [LSW1-portal-access-profile-abc1]web-auth-server abc1 direct [LSW1]authentication-profile name abc1 [Switch-authen-profile-abc1]portal-access-profile abc1 [Switch-authen-profile-abc1]access-domain abc1.com force [Switch-authen-profile-abc1]authentication mode multi-authen max-user 100 [LSW1-GigabitEthernet0/0/2]authentication-profile abc1multi-authen表示接口允许多用户认证max-user要按实际需求设置。某次活动场地网络瘫痪就是因为默认值太小导致用户数超限。5. 验证与排错技巧5.1 基础验证方法用户打开浏览器应该自动跳转到认证页面。如果没反应先检查终端是否获取到正确IP能否ping通Portal服务器交换机是否有ACL阻断HTTP流量上线后可以用命令查看在线用户display access-user access-type portal5.2 常见故障处理问题1认证页面能打开但提交后失败检查RADIUS通信是否正常在RADIUS服务器查看日志确认是否收到请求问题2认证成功但无法上网可能是策略路由没配置检查display portal interface看接口状态问题3用户频繁掉线调整下线探测参数access-user arp-detect vlan 12 ip-address 10.1.12.1 mac-address 2222-1111-1234我在实际项目中发现华为设备的Portal认证对时间同步非常敏感。如果交换机和RADIUS服务器时间差超过3分钟就可能导致认证失败。建议配置NTP时间同步这个坑真的值得记在小本本上。