ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

H3C AC本地转发与AD域认证配置实战指南

H3C AC本地转发与AD域认证配置实战指南 1. 为什么我推荐“本地转发 AD域认证”这套组合先聊点实在的。很多刚接触企业无线网络的朋友拿到H3C无线控制器AC和AP之后第一反应是把所有流量都集中到AC上转发觉得这样“统一管理、统一认证”。这种集中转发模式在小规模场景里确实省心但当终端数量上来、视频会议和云桌面这类大流量应用变多之后AC的转发压力会肉眼可见地变大带宽瓶颈、漫游卡顿、AC宕机全公司断网的问题都会慢慢冒出来。本地转发Local Forwarding的思路刚好反过来AP只和AC建立控制隧道CAPWAP隧道负责下发配置、上报状态而终端上网数据直接由AP通过接入交换机转发出去不再绕道AC。这样做的好处非常直接——AC的负载大幅下降数据路径变短延迟和丢包都小了即使AC出现故障已关联的终端业务也不会立刻中断。另一个容易被忽略的点是本地转发模式下AC和AP之间不需要为业务流量占用隧道带宽这对部署在分机房、跨三层组网的环境来说尤其友好。而“集成AD域做账号认证”解决的是另一个问题准入控制。企业内部绝大多数账号体系都在Windows AD域里如果无线网络能直接用AD账号做认证员工就不需要再记一套单独的Wi-Fi密码离职员工的账号也能随AD账户禁用而自动失去网络访问权限。把这两件事结合起来等于同时解决了“体验”和“安全”两个核心诉求。这篇文章适合正在做企业无线网络改造、想把H3C AC从集中转发切到本地转发并且希望用AD域账号打通无线认证的同行参考我把从组网规划到命令行配置的完整过程都梳理了一遍。2. 环境准备与组网规划比敲命令更重要很多人配置到一半发现认证不通过回头排查才发现是网络规划阶段就埋了雷。所以我先把环境规划和前提条件放在前面说这些没搞明白后面配置得再漂亮也是白搭。2.1 先搞清楚网络拓扑和VLAN划分本地转发模式下业务VLAN的划分直接决定数据流怎么走。以一个典型的中型企业场景为例我建议至少规划三个VLAN管理VLAN负责AC和AP之间的CAPWAP隧道可以单独建一个管理网段员工无线VLAN承载员工终端的业务数据这个VLAN要在接入交换机上创建并且最终能路由到公司内网和出口网关访客VLAN如果不做隔离后续安全审计会比较被动。有一个细节必须注意本地转发模式下业务VLAN的三层接口通常不在AC上终结而是在核心交换机上终结。AC只需要能路由到认证服务器AD域和RADIUS服务器即可AP通过CAPWAP隧道从AC学到业务VLAN的映射关系后在本地把无线报文打上对应VLAN标签经过接入交换机进入网络。如果你把业务VLAN的子接口配在AC上本地转发模式反而绕不回来这是新手最容易踩的坑。2.2 必须满足的基础条件和版本要求这套方案能跑起来有几个硬性前提条件缺一个都可能导致认证失败或者漫游异常AD域控制器和RADIUS服务之间需要网络互通这里说的不仅是IP通还包括端口通。AD域认证走的是LDAP协议默认端口是389非加密或636LDAPS如果直接在AC上做LDAP认证AC需要能访问AD域控的这两个端口。如果采用RADIUS服务器做中转RADIUS认证端口1812、计账端口1813要在防火墙上放通。AC和AD域控的时间必须同步。Kerberos认证对时间偏差极其敏感默认允许的最大偏差是5分钟但现实中偏差超过1分钟就会稳定报错。我在生产环境里踩过这个坑AC上电后时间默认是2015年AD域里账号认证怎么都过不去日志里全是时间戳错误。所以必须先配NTP让AC和AP都同步到公司统一的NTP服务器。AC和AP的软件版本需要确认支持本地转发和LDAP/RADIUS认证。H3C的WX系列AC配合对应版本的Fit AP本地转发已经是标配功能但老版本可能存在Bug建议升级到官网最新的稳定版本。另外如果AP是跨三层注册的DHCP需要下发Option 43字段来指定AC地址这个也要提前规划好。提示如果你用的是H3C Cloud Lab模拟器做验证遇到设备启动不了的情况先检查虚拟机的CPU虚拟化是否开启、内存是否给够建议至少分配4GB内存给AC虚拟机这2个问题占模拟器启动失败的八成原因。2.3 AD域侧要准备哪些对象AD域侧的准备工作很多人误以为只需要建好账号就行实际上还取决于你的认证方案。H3C AC支持两种对接AD域的方式一种是AC直接通过LDAP协议查询AD域控做认证另一种是AC对接RADIUS服务器由RADIUS服务器再对接AD域。两种方式各有优劣后面我会详细对比这里先说通用准备。AD域控需要开启“允许匿名LDAP查询”或者为查询专门建一个服务账号。如果AC直连AD域做LDAP认证AC需要用到管理员账号来搜索域用户这个账号必须有“读取目录信息”的权限。安全起见不要用域管理员账号单独建一个svc_wifi_query之类的服务账号密码设置为永不过期。如果采用RADIUS中转方案需要在RADIUS服务器可以是Windows NPS也可以是第三方RADIUS上配置RADIUS客户端也就是把AC或AP的IP地址加为RADIUS Client并设置共享密钥。然后需要把AD域用户加入RADIUS认证的拨入权限Windows NPS里默认是“通过NPS网络策略控制访问”这一步漏掉的话用户认证会直接拒绝。3. 两种AD域对接方案的选型对比我先说结论如果公司有现成的RADIUS服务器优先选RADIUS中转方案如果网络规模和AD域规模都不大AC直连LDAP方案更轻量。下面把两种方案放在一起详细看。3.1 AC直连LDAP认证方案AC直连AD域控使用LDAP协议查询用户信息并完成认证。AC上配置LDAP服务器模板绑定到RADIUS方案或ISP域里用户连接Wi-Fi输入AD账号密码后AC把用户名密码封装成LDAP bind请求发送给AD域控。这个方案的优点是部署链路短不需要额外部署RADIUS服务器排障点少。缺点是AC需要保存明文密码的验证逻辑而且如果你的认证策略比较复杂比如需要按用户组区分不同的VLAN或带宽策略纯LDAP方案实现起来会比较吃力。还有一个潜在问题LDAP方式无法区分“用户密码错误”和“用户被禁用”的具体原因排障日志里只能看到认证失败。3.2 RADIUS中转方案推荐RADIUS中转方案是目前企业里最常见的做法。AC作为RADIUS客户端把认证请求发给RADIUS服务器RADIUS服务器对接AD域完成用户身份校验后返回接受或拒绝结果。H3C AC自身就支持内置RADIUS服务器功能但IDU版本和企业版功能差异较大我更推荐把Windows NPSNetwork Policy Server作为RADIUS服务器因为NPS和AD域天生是一家配置起来最顺滑。我会在第4节和第5节分别给出两种方案的配置过程你根据自己的环境选择合适的路径。对比维度AC直连LDAPRADIUS中转NPS部署复杂度低中认证策略灵活性低高日志可读性一般好是否需要额外服务器否是适合场景小型网络1-2台AC中大型网络、多AC统一认证4. AD域和RADIUS服务器侧的完整配置这一节开始进入实操。我先按RADIUS中转方案来写因为这是大多数生产环境的选择AC直连LDAP的配置在第5节单独讲。4.1 Windows NPS安装与基础配置在Windows Server上安装NPS角色这一步很简单服务器管理器里添加角色和功能勾选“网络策略和访问服务”下面的“网络策略服务器(NPS)”即可。安装完之后先不要急着配置先把服务器加入AD域——如果NPS服务器本身不在域里后面读取域用户信息会非常麻烦。NPS安装完成后需要注册到AD域中。在NPS控制台左侧右键“NPS本地”选择“在Active Directory中注册服务器”这个操作会让NPS有权限在AD域中读取用户的拨入属性。我遇到不少朋友跳过了这一步导致后面NPS的策略永远匹配不上用户这个注册动作很关键。然后是配置RADIUS客户端在NPS控制台里找到“RADIUS客户端和服务器” - “RADIUS客户端”右键新建。这里要填的客户端IP地址是AC的IP地址共享密钥要设置一个足够复杂的字符串后面AC配置里要用同一个密钥。注意如果你有多台AC每台AC都要添加为RADIUS客户端。4.2 配置网络策略Network Policy网络策略是NPS最核心的配置相当于认证授权的规则引擎。我的建议是按照“先拒绝后允许”的原则来组织策略建一个“拒绝非域用户”的策略匹配条件设置为“Windows组 不等于 Domain Users”验证方法选“PEAP”或“PAP/SPAP”访问权限选“拒绝访问”。然后建“允许域用户接入”的策略匹配条件设置为“Windows组 等于 Domain Users”访问权限选“访问已授予”。如果后续要不同部门分配不同VLAN就在这个策略里配置“VLAN”属性在“设置”选项卡的“标准”里选择“VLAN ID”填入对应VLAN号并设置“VLAN类型”为“未标记”或“已标记”具体取决于你的交换机接口模式。关于身份验证方法NPS默认会启用EAP和PEAP但H3C AC走RADIUS认证时很多场景用的是PAP。为了兼容性我会在策略里同时启用“PAP/SPAP”和“PEAP”。生产环境如果允许明文密码走无线网络建议用PEAP或者EAP-TTLS替代PAP毕竟安全无小事。不过PEAP需要AC侧配置信任的CA证书复杂度高一些所以下面我先按PAP方式来写保证能跑通再提醒你后续安全加固的方向。4.3 AD域用户拨入权限设置如果你用的是Windows NPS且域功能级别是2008以上用户拨入权限默认由NPS网络策略控制单个用户属性页里的“拨入”选项卡基本不用改。但如果你发现用户认证一直被拒绝检查一下这个用户的拨入权限是不是被设置成了“拒绝访问”。这种情况在AD域从老版本升级过来时比较常见老域可能默认继承“通过NPS策略控制”之外的设置。批量设置拨入权限可以用ADSI Edit或者PowerShell如果只有几个测试账号直接在AD用户和计算机里改也行。我的习惯是建一个“无线接入用户”的AD组把需要无线上网的用户全部加进这个组NPS策略只针对这个组做匹配这样后续人员离职调岗只需要调整AD组成员关系网络权限自动跟着变不涉及NPS配置。注意NPS策略的匹配顺序是从上往下第一条匹配到的策略生效。所以一定要把“拒绝”策略放在最上面防止用户命中了后面的允许策略而绕过限制。5. H3C AC上的核心配置全过程AC侧的配置是整个链路里最需要细抠的部分。我会把命令和配置思路一起写你在实际环境里根据设备型号稍作调整即可。5.1 基础配置NTP、RADIUS模板、ISP域第一步是时间同步。在AC上执行如下命令system-view ntp-service enable ntp-service unicast-server 192.168.10.10这里192.168.10.10是你公司NTP服务器的IP如果NTP服务器本身就是AD域控也可以把AD域控的IP填进去。配置完成后用display ntp-service status查看同步状态确认时钟源是“synchronized”再继续下一步。第二步配置RADIUS方案radius scheme ad_radius primary authentication 192.168.10.20 1812 primary accounting 192.168.10.20 1813 key authentication cipher Simple123456 key accounting cipher Simple123456 user-name-format keep-original nas-ip 192.168.10.30这里的192.168.10.20是NPS服务器地址192.168.10.30是AC自己用于RADIUS通信的源IP地址。密钥必须和NPS里配置的共享密钥一致否则认证包会被NPS直接丢弃。user-name-format keep-original的意思是保留用户输入的完整用户名格式因为AD域用户可能输入“user\zhangsan”或者“zhangsandomain.com”格式不统一会导致查询失败。如果你能保证终端用户输入的都是纯用户名也可以设置为without-domain把域名剥掉再发给RADIUS服务器。第三步配置ISP域并绑定RADIUS方案domain ad_domain authentication lan-access radius-scheme ad_radius authorization lan-access radius-scheme ad_radius accounting lan-access radius-scheme ad_radius这里lan-access表示局域网接入认证无线用户属于这种接入类型。如果你还配置了Portal认证这里会多一个Portal相关的认证方法但我们现在做的是802.1X或者MAC认证所以只要RADIUS即可。5.2 WLAN服务模板配置与本地转发创建无线服务模板SSID建议直接命名为容易识别的名称比如CORP-WIFI。下面是关键配置wlan service-template ad_wifi ssid CORP-WIFI vlan 100 client forwarding-location ac client authentication-algorithm shared quit等等client forwarding-location ac是集中转发的配置本地转发要改成client forwarding-location ap。有些朋友在配置模板时看到默认就是AP转发就没在意结果业务VLAN的网关配在AC上导致本地转发模式下终端无法获取IP这个前后一致性要检查清楚。正确的本地转发配置如下wlan service-template ad_wifi ssid CORP-WIFI vlan 100 client forwarding-location ap client authentication-algorithm shared quit接下来配置802.1X认证wlan service-template ad_wifi dot1x authentication-method eap quit这里说一个容易困惑的点dot1x authentication-method eap和dot1x authentication-method pap有什么区别如果选择EAP中继方式AC把802.1X的EAP报文直接封装成RADIUS Access-Request报文发给NPSNPS和客户端之间做完整的EAP协商这种方式更安全但需要NPS配置证书支持PEAP如果选择PAP客户端密码需要以明文方式在EAP内部传输兼容性更好但安全性差一些。要让集成AD域认证顺利跑通我建议先按PAP方式调通上线前再从安全角度升级到PEAP。如果你使用的是H3C较新的版本服务模板下可能还支持dot1x authentication-method eap-peap这类选项以实际设备为准。5.3 AP注册与射频配置AP通过CAPWAP协议注册到AC后需要把服务模板绑定到射频上wlan ap ap-01 model WA6320 serial-id 219801A0CNC1234567890 radio 1 service-template ad_wifi vlan 100 radio 2 service-template ad_wifi vlan 100 quit在本地转发模式下service-template ad_wifi vlan 100这行里的VLAN是给终端分配的业务VLAN。AP会在本地把无线帧打上VLAN 100的标签发送给接入交换机。接入交换机的接口要配置为Trunk类型放通管理VLAN和业务VLAN 100否则AP能注册成功但终端数据出不去。5.4 AC直连LDAP域认证的配置方法如果你决定不走RADIUS方案AC直连LDAP的方式配置如下ldap server ad_ldap ip 192.168.10.10 port 389 version 3 login-dn cnadministrator,cnusers,dcdomain,dccom login-password cipher Simple123456 search-base dcdomain,dccom quit这里的login-dn是AC用来绑定AD域控的账号DNsearch-base是用户搜索的起始路径按你的AD域名结构填写。LDAP服务器模板配置好之后同样要在ISP域里绑定domain ad_domain authentication lan-access ldap-scheme ad_ldap authorization lan-access ldap-scheme ad_ldapLDAP直连方案的优点和缺点我在第3节都说了如果你只是验证功能用这个方案最快如果要对接到现有NPS策略体系还是RADIUS方案更合适。5.5 关键命令验证配置是否正确配置完成后先别急着连Wi-Fi测试在AC上执行以下命令检查display wlan service-template ad_wifi display radius scheme ad_radius display domain ad_domain display wlan ap all重点关注服务模板是否处于enabled状态RADIUS方案的服务器状态是否activeAP是否R/M状态运行/管理状态正常。如果AP一直显示Idle或Download优先检查AC和AP之间的管理VLAN连通性。6. 常见问题排查与经验分享这部分是我最想写的内容因为配置步骤文档里都有但排障经验真的是靠一次一次踩坑攒出来的。6.1 认证失败的排查套路当用户连接SSID后反复提示输入密码或者认证直接报错我一般按下面的顺序排查检查RADIUS通信是否正常。在AC上执行debugging radius packet然后让用户重新认证一次。如果AC完全没有发出Access-Request包说明RADIUS配置没有生效或者ISP域没绑定对如果发出去但收不到响应查看NPS的“RADIUS客户端”里是否添加了AC的IP以及共享密钥是否一致。检查NPS的事件日志。在Windows事件查看器里定位到“NPS”日志失败的认证请求都会在这里留下记录。最常见的报错是“用户被拒绝因为不符合网络策略”这说明NPS策略没匹配上回去检查策略的顺序和条件还有一种报错是“无法建立与域控制器的连接”这说明NPS到AD域控的LDAP通信有问题。检查AD账号是否被锁定或禁用。这个排查点最容易忽略尤其是设置了账户锁定阈值的域环境用户连续输错几次密码后账号被锁表现就是无线认证怎么都不通过。在域控上用net user username /domain查看账号状态。6.2 本地转发模式下终端获取不到IP这个问题在切换转发模式后非常常见。我建议按以下顺序检查接入交换机上对应AP下行接口的VLAN配置。AP上联口要放通管理VLAN和所有业务VLAN。AP的native VLAN必须是管理VLAN否则AP无法获取IP地址注册到AC。DHCP服务器位置。本地转发后终端的DHCP请求会直接发到业务VLAN的网关也就是核心交换机或者独立的DHCP服务器。如果DHCP服务器之前配置的是只为某个网段分配地址要确认新规划的业务VLAN网段已经添加到DHCP作用域里。AC上是否启用了DHCP Snooping或者IP Source Guard之类的安全功能。这些功能在某些版本下会影响AP侧地址获取如果开关配置得不正确终端会拿到地址但无法通信。6.3 AD域用户登录出现“Temp账户”问题实际运维中我碰到过一次AD域用户用无线认证成功后登录域里的电脑时系统加载的是临时配置文件桌面图标和设置全都没了看起来像换了新用户一样。这个问题其实和无线认证本身没有直接关系而是AD域用户配置文件损坏导致的。常见诱因包括用户配置文件路径错误、漫游配置文件共享权限不对、AD账号的profile属性设置异常。处理方法是备份该用户的桌面文件和注册表配置删除损坏的配置文件清除注册表里ProfileList下对应的ProfileImagePath键值然后让用户重新登录域系统会重新生成一个干净的配置文件。如果这种“Temp账户”问题频繁出现优先检查所有域控之间是否完成了同步复制。本地两台AD域控做主备时如果主域控上的用户信息没有同步到备域控用户从备域控认证时读取到的账号属性就是不完整的也会引发异常。用repadmin /replsummary检查域控同步状态确保复制正常。6.4 认证成功但无法上网的排查这类问题比较隐蔽因为认证环节通过说明RADIUS交互正常问题往往出在授权阶段。你需要在NPS网络策略里检查是否配置了下发的属性。很多情况下我建议在策略里下发VLAN属性保证用户认证成功后端口被动态划分到指定VLAN而不是默认停留在初始VLAN。另一个容易被忽略的问题是AC上的ACL或用户组授权策略。H3C AC支持在ISP域下配置authorization-attribute如果配置了特定的ACL编号但ACL规则本身是空的或者匹配顺序不对就会把用户的流量全部丢弃。检查AC上是否配置了packet-filter相关的用户授权策略确认规则内容是否有误。无线侧还有一个常见原因AP射频的接入密度过高。当一个AP同时接入大量终端时H3C AC默认开启了负载均衡和频谱导航功能新终端可能会被引导到信号更强的频段。如果这个频段的信道拥挤用户体验到的就是“连上了但刷不动”。把radio下的client max-count调低一点或者关闭频谱导航做一个对比测试就能确认。6.5 我个人的一些排障心得做这个项目调通之后我的体会有三点。第一任何认证系统的排障最先查的永远是时间对不对其次是网络通不通最后才是配置对不对。顺序错了排查效率低一半。第二改配置一定要有记录意识。AC上执行display current-configuration导出当前配置命名成带日期的文件保存下来万一改坏了可以快速回滚。第三在NPS的RADIUS日志和AC的调试日志里做交叉验证基本能把85%以上的认证问题定位出来。7. 从能用到好用这套方案后续还能怎么优化当整条链路都跑通之后你会发现这套方案真正打开了企业无线认证自动化的大门。考虑部署多台AC做集群或者负载分担时RADIUS方案天然支持多AC只需要把每台AC都添加为NPS的RADIUS客户端即可。这样即使单台AC故障其他AC能够接替认证服务。本地转发模式配合多AC组网还能减少业务流量跨AC绕行的距离这对跨楼宇办公的企业特别实用。如果你有动态VLAN下发的需求NPS策略里可以针对不同用户组下发不同的VLAN ID。这样访客用户自动划分到隔离VLAN只能访问互联网财务部用户划分到专网VLAN能访问财务系统研发部用户划分到开发网段互相之间还可以做二层隔离。整个无线网络就从一个“大广播域”变成了一个“按身份动态划分的精细网络”。如果后续担心无线空口安全可以把EAP-PEAP或EAP-TLS方案升级上去。在NPS上部署企业CA证书客户端申请证书后使用EAP-TLS做双向认证安全性比PAP方案高好几个等级。H3C AC侧只需要把dot1x authentication-method eap配置保持即可剩下的认证协商交给NPS和客户端完成。我最后再分享一个小技巧把AC的调试日志时长打开到足够大然后配置一个自动导出日志的计划任务。遇到难以复现的无线掉线问题直接翻历史日志的时间点比等用户反馈再排查要快得多。这个习惯我坚持了很多年帮我在好几个“莫名其妙的掉线”问题里找到了真正的原因——其实都是某个AP的固件有内存泄漏导致的升级AP版本后彻底解决。
返回列表