wifidog认证优缺点wifidog原理

portal认证方式有多重,我们选择了十分普遍额开源项目wifidog,支持openwrt,用户群体大,资料较完善,中文资料多。
主要优点:

  1. 开源(https://github.com/wifidog github,上提供了源码及基于php的认证网关源码)
  2. 国内使用wifidog的情况比较普遍,二次开发更容易。
  3. 代码可移植性高,各种平台几乎都不受限制

(总结:低成本,易上手。)

目前也存在一定的缺点

  1. 通过实际抓包发现,心跳包不断的检查用户在线情况,网关服务器性能开销较大。
  2. 基于iptables,协议繁琐,性能比较差。
  3. 隐私问题,没有加密url直接传递含隐私的信息。

下面来看下wifidog工作机制:
工作机制
/ping 心跳接口

"GET /ping/?gw_id=网关id&sys_uptime=1183&sys_memfree=105884&sys_load=0.14&wifidog_uptime=1169 HTTP/1.0"

/login 新用户认证跳转页面

GET /login/?gw_address=111&gw_port=111&gw_id=111&mac=88:72:0d:f2:88:29&url=url HTTP/1.1

/auth 用户检测

/auth/?stage=counters&ip=192.168.10.81&mac=88:72:0d:f2:a8:29&token=85ea71f2484b2c52fee&incoming=5638570&outgoing=722214&gw_id=111 HTTP/1.0

本文章由http://www.wifidog.pro/2015/04/09/wifidog%E8%AE%A4%E8%AF%81%E4%BC%98%E7%BC%BA%E7%82%B9.html整理编辑,转载请注明出处

时间: 2024-10-12 09:10:00

wifidog认证优缺点wifidog原理的相关文章

家用环境下部署wifidog认证服务器(java版)

本文所讲的是基于一个java版wifidog认证服务器的开源项目在windows环境下搭建wifidog认证服务器,并实现用户名密码的认证. 大致步骤如下: 一,准备 1.搭建硬件及网络环境 a.需要普通路由器1个,刷了apfree固件的路由器一个,Windows电脑一台,网线若干,宽带网络. b.按照下图的拓扑结构进行搭建. 2.获取软件及工具并安装 a.获取并安装jdk6 b.获取并安装MySQL c.安装MyEclipse d.获取java版wifidog认证服务器源码(https://g

Wifidog认证稳定性测试方法及说明

下面是我所使用的测试方法,有其他更好测试方法的网友也可以共享出来. 测试方法:通过软件发送多个连接请求来达到测试wifidog处理请求的能力,也就是其稳定性.通过http_load软件发送网站连接请求,查看后台监控wifidog异常,逐渐增加 发送连接请求次数直到wifidog死掉或者重启. 测试环境:将刷好的带wifidog认证的路由接入Internet和测试机(电脑或者手机).使用电脑连接到路由后台,以调试模式运行wifidog,以便随时监控wifidog. 测试条件:wifidog启动中并

在SuSE安装wifidog认证服务器和网关

在SuSE安装认证服务器和网关 在openSuSE 10.3安装wifidog 认证服务器和网关在同台设备中安装完毕.以下是openSuSE的详细安装指南.这个安装是非常初级的,所以请验证或更正. --安装openSuSE10.3需要全部软件(需要至少7GB的硬盘空间) --更新openSuSE10.3 安装wifidog认证服务器 --安装所有PHP5扩展 --安装postgresql-server --按照 http://www.novell.com/coolsolutions/featur

编写自己的WifiDog认证服务器

这次我使用的是php来编写auth_server服务器,因为这样比较简单.1.首先是login.php <?php include './tool/MySQLHelper.php'; if (!empty($_GET["mac"])){ $result = selectMacByToken($_GET["mac"]); if (!empty($result)){ header("location: http://192.168.1.1:2060/wi

无线热点认证解决方案 WifiDog

WifiDog 是一款开源的用来实现无线认证的软件,可以集成到路由器或者网关中,对于连接到路由器或者网关的设备,使其先登录云端认证服务器,然后通过认证才能上网.比如在星巴克上网,浏览器会先弹出一个广告页面,我们输入手机号,获取验证码,然后就可以上网了. 网关心跳(Ping协议) Wifidog将ping协议做为心跳机制向认证服务器发送当前状态信息.这可以实现为认证服务器每个节点的状态生成中央日志. Wifidog客户端在conf文件中进行设置,目的是通过http定期启动thread(ping_t

Wifidog分析wifidog认证网关协议v1

原文链接:http://dev.wifidog.org/wiki/doc/developer/WiFiDogProtocol_V1 网关心跳(Ping协议)Wifidog将ping协议做为心跳机制向认证服务器发送当前状态信息.这可以实现为认证服务器每个节点的状态生成中央日志.Wifidog客户端在conf文件中进行设置,目的是通过http定期启动thread(ping_thread.c)向认证服务器发送状态信息.信息格式如下: http://auth_sever/ping/? gw_id=%s

wifidog 认证Lighttpd1.4.20源码分析之bitset.c(h) -------位集合的使用

使用一个比特位来表示一个事件的两种状态,即节省内存,又可以提高运行速度.在Lighttpd中,提供了一个bitset数据结构,用来管理使用一个比特位集合. 在bitset.h中,比特位集合的数据结构定义如下: typedef struct { size_t *bits; size_t nbits; } bitset; bits指向一个size_t类型的数组,存放bit集合.size_t类型通常被定义成一个无符号的整型(int或long),其长度和具体的机器有关,这个读者可以查阅相关的资料.nbi

wifidog认证实现OpenWRT强制认证的WIFI热点

首先安装wifidog到OpenWRT的路由器: opkg update opkg install wifidog wifidog依赖下面这些模块: iptables-mod-extra iptables-mod-ipopt kmod-ipt-nat iptables-mod-nat-extra libpthread 由于trunk的固件更新会比较频繁,会导致直接opkg install wifidog安装不了,如果你凑巧又没有备份与固件对应的Packages的话,就需要到http://down

wifidog认证自带http服务器Lighttpd1.4.20源码分析之状态机返回response

前一篇介绍完了请求的处理,先面lighttpd将会把处理的结果返回给客户端.状态机进入CON_STATE_RESPONST_START.在这个状态中,服务器主要的工作在函数connection_handle_write_prepare.这个函数不算复杂,主要是根据客户端请求的method来设置response的headers,其实就是设置“Content-Length”的值.下面是函数代码,做了一些删减: static int connection_handle_write_prepare(se