Portal认证

来源:互联网 发布:mac共享设置 编辑:程序博客网 时间:2024/05/22 06:33

portal认证

简介

大家在商场使用商场提供的wifi时,连接上来就会弹出一个页面,页面由一键认证、微信认证、web认证、qq认证。说白了就是连接wifi时弹出一个广告页面。

原理

手机、平板连上wifi后一般会发网络探测包,android系统会发网络探测包检查网络是否正常,苹果设备连接不加密的wifi时要得到苹果服务器的许可,portal认证就是抓住这两点,把手机、平板的网络探测包通过302重定向到portal页面。

过程


图1-1poral流程图


portal的过滤钩子函数一般挂在netfilters的FORWARD链上,终端设备连上wifi后发送网络探测包,除非udp/tcp的报文外其他的都重定向到302portal页面,portal会放行非udp/tcp的数据包,对于DNS报文有两种处理方式,1、放行,2、重新构造DNS报文。科普一下DNS,我们上网访问浏览网页是基于http协议,当访问baidu.com是个域名,先要进行信DNS域名解析获取对应的IP,然后用这个IP通过tcp三次握手建立连接,然后就可以访问服务器获取资源了。放行DNS是为了终端设备获取外网服务器的IP,这样对应tcp三次握手的syn、syn ack 、ack数据包放行,这样有一个缺点就是外网环境不稳定就会出现弹portal页面慢,对应第二种重新构造DNS报文携带portal web服务器的IP,这样终端就可以和portal web服务器建立tcp连接,然后把所以的http请求都回复302重定向报文,构造DNS报文的效果要更好。弹出portal界面后就进行微信认证、web认证、qq认证,这时候就要抓住特殊的Host字段放行,比如微信认证的host就是wifi\\.weixin\\.qq\\.com,放行终端微信和腾讯的微信服务器通信验证,就此认证完成。

302重定向

302重定向又称之为302代表暂时性转移(Temporarily Moved ),英文名称:302 redirect。 也被认为是暂时重定向(temporary redirect),一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL的变化时使用。

苹果设备弹portal

苹果设备接入一个不加密的无线时要获取苹果服务器的安全许可,一般会发安全网络探测包,网络探测包的URL有八个分别对应iphone、ipad ,  "www.apple.com",
 "captive.apple.com", ".push.apple.com",  "www.thinkdifferent.us", "www.airport.us", "www.ibook.info", "www.itools.info","www.appleiphonecell.com"。通过这八个特殊的URL识别是苹果设备,对应苹果设备的弹portal有两种方案,1、弹出portal页面后放行一定时间的数据包,让苹果终端和苹果服务器通信获取网络安全许可这样才能点亮wifi图标,2、portal服务器等弹出portal页面后模拟苹果服务器回Sucess给苹果终端使其通过验证,点亮wifi图标保证网络的通畅,接下来就是微信认证、qq认证、web认证。



































原创粉丝点击