Print

结合本地Portal实现微信公众号认证典型配置(V7)

2017-11-19 发表

有些局点在没有认证服务器的情况下可以结合AC的Portal本地认证,实现简易化的微信公众号认证,达到用户只要在关注公众号之后才可以认证上网的需求。



这种简化版的微信公众号认证,实现原理是利用AC的本地Portal功能,认证的本地Portal文件内置了一个用户名和密码能够实现自动认证。认证过程和微信没有任何关系,只是将关键的认证页面放在了公众号的聊天界面里,要想获得此认证页面必须关注公众号才能进入公众号的聊天界面,最后利用微信发起http的请求实现本地Portal认证。

步骤一:先配置AC的本地Portal认证

配置Domain域为本地认证
domain system
 authentication portal local
 authorization portal local
 accounting portal local
 authorization-attribute idle-cut 120 10000
#
配置web-server
portal web-server local-server
 url http://192.168.1.100/portal/guanzhu.htm
 captive-bypass ios optimize enable
#
配置本地认证并绑定Portal文件
portal local-web-server http 
 default-logon-page weixin.zip
#
配置服务模板
wlan service-template portal
 ssid loca-portal
 vlan 10
 portal enable method direct
 portal domain system
 portal apply web-server local-server
 service-template enable
#
以下为微信认证的标准配置,包括优化Porta弹窗、放通微信域名等
 portal host-check enable
 portal free-rule 1 destination ip 114.114.114.114 255.255.255.255
 portal free-rule 2 destination ip any udp 53
 portal free-rule 3 destination ip any tcp 53
 portal free-rule 4 destination ip any tcp 5223
 portal free-rule 10 destination short.weixin.qq.com
 portal free-rule 11 destination mp.weixin.qq.com
 portal free-rule 12 destination long.weixin.qq.com
 portal free-rule 13 destination dns.weixin.qq.com
 portal free-rule 14 destination minorshort.weixin.qq.com
 portal free-rule 15 destination extshort.weixin.qq.com
 portal free-rule 16 destination szshort.weixin.qq.com
 portal free-rule 17 destination szlong.weixin.qq.com
 portal free-rule 18 destination szextshort.weixin.qq.com
 portal free-rule 19 destination isdspeed.qq.com
 portal free-rule 20 destination wx.qlogo.cn
 portal free-rule 21 destination wifi.weixin.qq.com
 portal free-rule 23 destination open.weixin.qq.com
 portal free-rule 24 destination long.open.weixin.qq.com
#
配置本地认证的用户名密码为Guest,关键固定配置
local-user Guest class network
 password simple Guest
 service-type portal
#
将本地Portal文件上传到AC的根目录
<H3C>dir
  27 -rw-        1930 Nov 19 2017 06:25:27   weixin.zip

步骤二:编辑公众号页面

如果是没有经过审核的个人订阅号,则编辑“自动回复”"被关注回复"中的所有功能都开启,将自动回复的内容配置为<a href="http://192.168.1.100/portal/logon.htm">请点击上网</a>

当第一次关注微信或者或者发送关键字比如“上网”则微信会自动回复一个超链接“点我上网”

如果是经过认证的服务号或者订阅号,则可以配置菜单功能,菜单名称为“点我上网”,将菜单的跳转网页内容配置为 http://192.168.1.100/portal/logon.htm

 

当用户关注微信并进入微信号时,点击“点我上网”菜单即可完成本地Portal认证。

步骤三:测试

连上WIFI后自动弹出Portal页面提示关注“xxx”公众号

打开微信通过搜索公众号并关注

   

 

点击超链接即可认证成功

在设备上查看display portal user all可以看到在线用户

[H3C]display portal  user all
Total portal users: 1
Username: Guest
  AP name: ap1
  Radio ID: 1
  SSID: lvzhou-portal
  Portal server: N/A
  State: Online
  VPN instance: N/A
  MAC             IP                    VLAN    Interface                       
  f48e-92e0-4dcf  192.168.1.16          10      WLAN-BSS1/0/19                  
  Authorization information:
    DHCP IP pool: N/A
    User profile: N/A
    Session group profile: N/A
    ACL number: N/A
    Inbound CAR: N/A
    Outbound CAR: N/A


1、压缩包必须是.zip格式,附件.zip文件是自动登陆界面的一个简单例子,实际上需要根据用户的具体情况做一些定制

2、将压缩包上传到AC的跟目录

3、放通weixin地址及DNS地址

4、定制页面用户名密码为Guest,需要在本地创建一个Guest/Guest账户,注意区分大小写

5、微信平台设置自动回复关键字,使用如下格式

<a href="http://192.168.1.100/portal/logon.htm">请点击上网</a>

如果在公众号编辑的是菜单,则直接按格式填写如下格式

http://192.168.1.100/portal/logon.htm

6、本地Portal的页面文件可以根据自己的喜好进行编辑,添加图片、更改文件内容,就用简单的Html语言即可编辑。Portal文件weixin.zip在附件中可下载。