32-H3C EIA 微信公众号MAC Portal认证典型配置举例
本章节下载: 32-H3C EIA 微信公众号MAC Portal认证典型配置举例 (1.27 MB)
H3C EIA 微信公众号MAC Portal认证
典型配置举例
资料版本:5W136-20260704
产品版本:EIA(E6606)
Copyright © 2026 新华三技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。
本文档中的信息可能变动,恕不另行通知。
H3C EIA (Endpoint Intelligent Access,终端智能接入)微信认证是一种EIA与微信服务器联动的认证机制,在微信公众号的基础上结合MAC Portal认证,旨在验证用户的身份合法性。
微信公众号是用户在微信公众平台上申请的帐号,通过微信平台的授权,操作员可以集中管理和配置微信公众号。
EIA通过联动微信公众号实现了网络认证,无需用户输入用户名和密码,也不需要管理员手动给每个用户进行开户。EIA配合微信能够自动获取到微信用户的身份信息,并自动开户为访客用户。当用户连接到无线网络后,系统会根据设备的MAC地址自动进行认证,用户认证信息验证通过后,用户即可获得对网络的访问权限,可以正常访问网络资源。
通过微信认证联动机制,可以简化用户认证流程,提供更便捷的用户体验和增强网络安全。
· MAC Portal认证是一种网络访问控制机制,它通过设备的MAC地址来识别和认证用户设备,不需要用户主动进行用户名和密码验证,通常用于公共无线网络或企业内部的无线网络中。
· 本文档主要介绍通过微信公众号MAC Portal认证进行网络认证的配置案例。
· 本文截图仅为示例,不同版本页面显示或有差异,请以实际页面为准。
MAC Portal认证简化了接入流程,较适合需要频繁接入网络或长期使用网络的用户群体,可以应用于企业、学校等需要为职工或受众(员工、学生、访客等)提供公共Wifi的场景。
若终端可以下载微信客户端关注公众号,则可以通过关注指定的微信公众号并点击自定义上网菜单的方式入网。
在通过微信公众号MAC Portal认证进行网络认证前,默认已完成AD-Campus控制组件相关配置,本文档不再赘述,具体操作请参见《AD-Campus 6.5 基础配置指导(IP策略)》。
· 需要提前申请微信公众号,并申请相应的开发者权限用于调用微信开放API。
· 需要在接入设备中放行微信服务器的资源,确保EIA可以和微信服务器交互。
· 需要排查网络环境配置,确保认证服务器能访问所需的外部资源,以便用户顺利使用服务。
请按照以下要求排查网络环境配置:
¡ 要求已调通本地用户MAC Portal认证。
¡ 要求Matrix集群已配置DNS服务器,且在服务器容器内可ping通第三方相关域名。
· 不能通过在服务器网卡中增加DNS配置来实现服务器对第三方相关域名的解析和访问。
· 服务器需要访问的域名和终端认证需要访问的域名并不完全相同。此处暂时按照控制器可以访问全部公网域名的方式来进行配置。
¡ 要求有公网出口IP地址。
¡ 要求公网IP有对应的域名。
¡ 要求公网IP地址nat映射内网认证服务器内网地址。(映射配置中公网IP对应80端口)
¡ 要求NAS设备ping第三方相关域名,可以解析,并且能够ping通。
¡ 要求BYOD匿名用户已认证上线,并且确保可以ping通认证服务器、可以解析域名、可以ping通第三方相关域名。另外,还需要在浏览器中访问“服务器域名+端口”,确保能够看到server working的效果。
¡ 要求微信公众号开发者平台支持创建用于认证的应用。
¡ 要求微信公众号开发者平台上配置的域名端口、设备NAT配置单独外网端口、EIA上增加的微信公众号配置域名端口,三者保持一致。
举例:某企业需要提供公共Wifi给职工使用,企业内部职工已注册微信应用,其需要通过微信应用授权来访问外部网络,组网如图2-1所示。
· 上图仅展示简单的交互情况,具体组网图请参考《AD-Campus 6.5 基础配置指导(IP策略)》。
· 在集群部署环境中,会涉及EIA服务器IP地址使用北向业务虚IP还是所在实际节点IP的问题,该地址请务必填写为北向业务虚IP。
· 微信认证服务器私网IP以192.168.3.115为例,端口为9092。
· 下述步骤为查看EIA服务器IP地址的通用步骤,涉及到的IP地址与本文档无关,仅以查看EIA服务器IP地址“10.114.117.164”为例进行介绍。
(2) 打开浏览器输入https://ip_address:8443/matrix/ui,登录Matrix页面。其中ip_address为北向业务虚IP或节点IP。
(3) 选择“部署”菜单项,选择[集群/集群参数],进入集群参数页面。
(4) 该页面中的北向业务虚IP即为EIA服务器的IP地址,如图2-2所示。
图2-2 查看EIA服务器IP地址
该案例通过关注指定的微信公众号并点击自定义菜单中的认证上网选项,实现网络接入认证。
将公众号中的一个菜单配置为认证成功后跳转的URL,终端用户通过直接在微信公众号菜单点击认证上网菜单,即可完成身份认证接入网络。
(1) 调用开放API获取用户信息:微信提供了获取微信用户相关信息的开放API,EIA会调用该接口获取微信用户信息。
(2) 用户请求至EIA服务器:用户在微信客户端的指定公众号菜单点击上网菜单后,会将请求发送至EIA服务器。
(3) EIA获取用户信息:EIA收到用户请求后,调用微信API接口获取微信用户信息。
(4) 验证用户信息并进行开户:EIA根据获取到的用户信息进行验证,如果验证通过,进行访客用户开户,建立相应的账号信息。
如果开户失败,微信公众号认证页面会弹出错误提示信息;如果开户成功,EIA会使用预配置的访客策略生成帐户名,并主动发起MAC Portal认证请求。
(5) 展示认证结果:在微信公众号认证页面会展示认证结果,用户可以直观地看到认证结果。
图3-1 业务交互过程
· 需要管理员在微信公众号开发者后台配置。
· 不同版本微信公众号平台菜单可能存在差异,请以实际为准。
(1) 登录微信公众平台开发者后台。
(2) 左侧菜单点击“功能 > 自定义菜单”,新增一个菜单项。自定义菜单名称,跳转网页地址配置为:http://EIA微信认证服务器私网IP:私网端口/weixin/weixinParam,如图3-2所示。
· EIA微信认证服务器私网IP指的是微信认证服务器在内部网络中使用的私有IP地址,用于内部网络中的通信和身份认证服务;私网端口为9092。
· 若EIA中存在多条微信公众号认证,则需手动拼接SSID,确保用户在认证过程中被使用正确的配置信息。此时需要将跳转网页地址配置为:http://EIA微信认证服务器私网IP:私网端口/weixin/weixinParam?ssid=ssid
(1) 左侧菜单点击“设置 > 公众号设置”,选择“功能设置”页签,进入功能设置页面。
(2) 单击网页授权域名对应的<设置>按钮,下载弹框中的授权文件,然后在弹框中增加EIA微信认证服务器的域名,如图3-3所示,配置完成后单击<保存>按钮即可。
· 添加网页授权域名用于指定用户授权请求发送到的域名,从而确保用户后续能够顺利进行身份认证并完成接入网络的操作。
· 下载的授权文件将用于验证网页授权域名的所有权。
· 下载的文件需存放至EIA指定路径下(在V9环境中,需要将文件传输到eia-nginx的Pod中),请参考以下步骤进行操作。
a. 将文件传输至后台服务器
图3-4 查看文件
b. 使用以下命令查询nginx相关pod名称
kubectl -n service-software get pod | grep eia-nginx
图3-5 查询nginx相关pod名称
c. 使用以下命令将文件传输至pod里面的相关目录中
kubectl -n service-software cp MP_verify_9rsoesI1j8YvvCop.txt eia-nginx-rrhx8:/usr/local/nginx/html/MP_verify_9rsoesI1j8YvvCop.txt -c eia-nginx
· MP_verify_9rsoesI1j8YvvCop.txt:下载的授权文件
· eia-nginx-rrhx8:目的Pod的名称
· /usr/local/nginx/html/MP_verify_9rsoesI1j8YvvCop.txt:Pod内的目标路径
图3-6 传输文件
d. 检查传输结果以确保文件已成功存放到指定目录。在浏览器中输入“http://北向业务虚IP:9092/文件名”可以查看传输结果,如图3-7所示,即为传输成功。
(1) 左侧菜单点击“开发 > 基本配置”,进入基本配置页面。
(2) 在IP白名单中增加EIA微信认证服务器的公网IP(多个IP之间回车换行,不能用其它的分隔符分割)。
将EIA微信认证服务器的公网IP加入IP白名单,可以确保微信认证服务器能够顺利地与企业/组织内部网络进行通信,从而实现用户身份认证服务。
图3-8 配置IP白名单
在配置访客策略时,需禁止预注册访客自动转正。
(1) 登录EIA,单击[自动化/接入服务/移动APP认证配置]菜单项,选择“微信公众号”页签,进入微信公众号配置页面。
图3-9 微信公众号配置页面
(2) 单击<增加>按钮,进入增加微信公众号页面,如图3-10所示。
部分参数说明:
¡ AppID:公众号的应用ID,在微信公众平台中启用“开发者中心”后由微信公众平台分配。UAM使用AppID和AppSecret与微信公众平台通信。该值必须与微信公众平台中分配的AppID保持一致。
¡ AppSecret:公众号的应用密钥,在微信公众平台中启用“开发者中心”后由微信公众平台分配。UAM使用AppID和AppSecret与微信公众平台通信。该值必须与微信公众平台中的AppSecret保持一致。
¡ 网页授权域名:该参数用于PC微信认证,需要跟微信公众平台中的网页授权域名保持一致。
¡ 认证成功后跳转URL:为用户指定认证成功后跳转到的URL页面。如果不配置,则默认跳转到默认页面。
¡ SSID:当配置多个微信公众号时,可通过SSID区分使用哪个微信公众号进行认证。
¡ 认证类型:认证类型支持选择Portal认证或MAC Portal认证,本手册仅介绍“MAC Portal认证”。
¡ URL:在外网可用于访问EIA的URL,微信服务器通过此URL给EIA发送消息。该URL必须是在外网可访问的,而且必须与微信公众平台中配置的URL保持一致。
¡ Token:Token即令牌,EIA使用该参数判断请求消息是否来自微信公众平台。该参数可以任意配置但必须与微信公众平台中配置的Token保持一致。
¡ 腾讯认证帐号:此公众号是否经过腾讯的认证。如果类型是服务号并且通过腾讯认证,终端用户使用微信客户端认证成功后可以通过微信公众平台获取到该用户的微信昵称和头像。
¡ 强制关注公众号:用来控制用户微信认证的时候是否必须关注公众号。如果勾选该选项,用户微信认证成功后必须关注公众号,否则会被踢下线。
· AppID和AppSecret必须填写且必须与微信公众平台中的一致。
· 网页授权域名配置为实际EIA微信认证服务器公网IP映射的域名,例如:weixin.xxx.com。
(3) 配置完成后,单击列表页面的生效图标,使配置生效。
图3-11 公众号配置生效
因为微信认证的用户在EIA中都开户为访客,所以需要增加默认访客管理员和默认访客服务,即微信认证用户默认由访客管理员管理,且都使用默认访客服务。
增加访客管理员之前需要提前配置接入用户,此处不再赘述,详情请参考产品配置指导或在线联机帮助。
(1) 单击[自动化/用户业务/访客用户]菜单项,选择“访客管理员”页签,进入访客管理员配置页面。
(2) 增加一个访客管理员,并将其设置为默认访客管理员。
图3-12 设置默认访客管理员
增加访客服务之前需要提前配置接入服务,此处不再赘述,详情请参考产品配置指导或在线联机帮助。
(1) 单击[自动化/用户业务/访客用户]菜单项,选择“访客策略”>“服务”页签,进入访客服务配置页面。
(2) 增加一个访客服务,并将其设置为默认访客服务。
图3-13 默认访客服务
需要在Matrix上添加DNS服务器及端口号,使Pod可以成功解析公网相关域名并且能够ping通。
(1) 登录Matrix页面,进入[部署/集群/集群参数]页面,单击<修改>按钮,进入集群参数配置页面。
(2) 勾选“外置DNS服务器”,单击
增加DNS服务器,在弹框中输入DNS服务器IP、端口号后单击<应用>即可添加。
(3) 配置完成后,单击页面右上角的<应用>按钮即可保存配置。
图3-14 添加DNS服务器以及端口号
添加完成后,可以通过以下命令检查DNS服务器是否生效,如图3-15所示。
图3-15 检查DNS服务器
连接到接入设备,放通域名,确保网络中的设备能够访问至特定域名。
此处以IPv4单栈,认证点在leaf设备的组网环境为例。
#
dns source-interface Vsi-interface4094 vpn-instance vpn-default
dns server 221.12.1.227 vpn-instance vpn-default //DNS服务器external-VPN,RT路由是互通
dns server 221.12.1.227 vpn-instance vpn-user //DNS服务器external-VPN,RT路由是互通
dns transparent-proxy enable authorizing
object-group dns-aging //不配置默认2小时
#
#
object-group ip address qyweixinauthv4
network host name i.work.weixin.qq.com
network host name byodmdm.h3c.com //对接企业微信后台使用的公网域名,请根据实际情况进行填写
network host name open.work.weixin.qq.com
network host name open.weixin.qq.com
#
#
acl advanced 3001
description SDN_ACL_AUTH
rule permit ip destination object-group qyweixinauthv4
#
在通向外网的网关设备接口下做NAT server映射,将内部服务器的端口映射到公网IP和端口。
配置举例:
[gate GigabitEthernet0/0/3]
nat server protocol tcp global 221.12.4.169 80 inside 80.80.80.35 9092
#221.12.4.169网关设备公网IP,域名对应byodmdm.h3c.com
# inside IP为认证服务器内网IP
图3-16 预期效果1
图3-17 预期效果2
以上配置完成后,用户即可使用微信公众号的自定义菜单进行网络认证。
(1) 用户手动连上SSID,打开微信客户端。
(2) 关注公众号之后,点击“一键上网”菜单进行认证,如图3-18所示。
(3) 无需输入账号、密码,等待认证成功即可上网。
图3-19 认证成功页面
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
