分类 wifidog分析 下的文章

wifidog出现绿屏

wifidog有时会弹出如下页面:
1.png

这个页面是wifidog.conf 中HtmlMessageFile 指定的模板页面在wifidog 运行出错时再填充这个模板页面得到的页面,可以在wifidog 的源码中查看函数send_http_page 调用之处,即为页面出现的情况。
比如http.c中:

else if (!is_auth_online()) {
                /* The auth server is down at the moment - apologize and do not redirect anywhere */
                char * buf;
                safe_asprintf(&buf,
                        "<p>We apologize, but it seems that we are currently unable to re-direct you to the login screen.</p>"
                        "<p>The maintainers of this network are aware of this disruption.  We hope that this situation will be resolved soon.</p>"
                        "<p>In a couple of minutes please <a href='%s'>click here</a> to try your request again.</p>", tmp_url);

                send_http_page(r, "Uh oh! Login screen unavailable!", buf);
                free(buf);
                debug(LOG_INFO, "Sent %s an apology since auth server not online - no point sending them to auth server", r->clientAddr);
        }

这段代码其实就是显示上图的地方,send_http_page把HtmlMessageFile 的title 和内容message 提供给页面,然后就显示出来了。

本文章由 http://www.wifidog.pro/2015/02/12/wifidog%E7%BB%BF%E5%B1%8F-1.html 整理编辑,转载请注明出处

wifidog设置

使用Wifidog免装wiwiz客户端的方法来实现简单的页面跳转,这里利用wiwiz的服务器来跳转到一个页面并让用户同意条款以后就能正常上网。

首先,连接上路由器,在浏览器输入:192.168.1.1或者其他的192.168.x.1按自己的网关而定哦。登陆到路由器页面管理。如下,进入服务------热点----然后按如下图设置: 注意网关ID是指你在wiwiz申请时的Hostpost 服务器主机名是wiwiz的服务器:

Cp.wiwiz.com或者42.121.98.148鉴权服务器路劲为:/as/s/这是他服务器规定的路径了,必须是这个。

设置完以后重启一下路由器。

用电脑或者手机连接到路由器上,打开浏览器随便输入一个网址,如下图会自动跳转到接受条款的页面。但是还没有达到自己定制的页面,因为wiwiz的高级版功能要收费的。 这个wiwiz的缺点高级版的收费太高了。
1.png

2.png

本文章由 http://www.wifidog.pro/2015/02/12/wifidog%E8%AE%BE%E7%BD%AE.html 整理编辑,转载请注明出处

wifidog配置页面

openwrt上自带了wifidog 程序,界面如下:
1.png

1)wifidog守护进程:启用代表无线需要使用wifidog 来认证
2)网关ID:标识路由器的字段
3)External Interface/Internal Interface,内外网的Interface
4)端口:wifidog作为socket 服务端的监听端口
5)最大用户数:能连接的设备个数
6)检查间隔:隔多久检查一次客户端是否超时
7)客户端超时:客户端连接多久超时或者客户端多久不上网认为超时,会被下线重认证处理
8)信任的MAC列表:拥有这些MAC的设备不用做认证可以直接上网
9)鉴权服务器主机名:portal/auth/login的server 地址
10)鉴权服务器SSL启用:Auth server是否使用了HTTPS 连接
11)鉴权服务器HTTP端口:auth server http监听端口
12)鉴权服务器路径:auth server 的http 服务器根目录
13)HTTP Server authentication support:启用表示使用HTTP 服务认证
14)HTML Message file for wifidog:wifidog出错时会弹出的页面
15)防火墙规则设置:设置一些黑白名单

本文章由 http://www.wifidog.pro/2015/02/11/wifidog%E9%85%8D%E7%BD%AE-1.html 整理编辑,转载请注明出处

WifiDog 认证原理和流程

WifiDOG是一个热点系统,包含了认证服务器和客户端两部分组成,认证原理大体说下:
General Flow Description:
一般流程描述:
①The client does his initial request, as if he was already connected, (e.g.: http://www.6hl.cn)
客户端发出初始化请求,比如访问 www.6hl.cn 这个站点
②The Gateway's firewall rules mangle the request to redirect it to a local port on the Gateway. When that's the done, the Gateway provides an HTTP Redirect reply that contains the Gateway ID, Gateway FQDN and other informations
网关的防火墙规则将这个请求重定向到本地网关的端口上。当做完这个工作,网关提供一个HTTP重定向回复,包含了Gateway的ID,Gateway的FQDN以及其他的信息。
③The Client does his request to the Auth Server as specified by the Gateway, see Login Protocol
用户向认证服务器发出认证请求
http://auth_server/login?
gw_id=[GatewayID, default: "default"]
gw_address=[GatewayAddress, internal IP of router]
gw_port=[GatewayPort, port that wifidog Gateway is listening on]
url=[user requested url]

④The Gateway replies with a (potentially custom) splash (login) page
网关返回一个(可以是自定义的)splash(也称作“登录”)页面
⑤The Client provides his identification informations (username and password)
用户提供他的凭据信息,比如用户名和密码
⑥Upon succesful authentication, the client gets an HTTP Redirect to the Gateway's own web server with his authentication proof (a one-time token), http://GatewayIP:GatewayPort/wifidog/auth?token=[auth token]
成功认证的话,客户端将会被重定向到网关的自己的web页面上,并且带有一个 认证凭据(一个一次性的token),内容比如
http://GatewayIP:GatewayPort/wifidog/auth?token=[auth token]
⑦The Client then connects to the Gateway and thus gives it his token
用户就是用获取到的凭据访问网关
⑧The Gateway requests validation of the token from the Auth Server, see Client Protocol【见登录心跳】
网关去认证服务器询问token的有效性
⑨The Auth Server confirms the token
认证服务器确认token的有效性
①①The Gateway then sends a redirect to the Client to obtain the Success Page from the Auth Server, redirects to http://auth_server/portal/
网关发送重定向给客户端,以从认证服务器上获取 成功提示页面,重定向到 http://auth_server/portal/ 这个位置
①②The Auth Server notifies the Client that his request was successful
认证服务器通知客户请求成功,可以上网了

本文章由 http://www.wifidog.pro/2015/02/11/wifidog%E5%8E%9F%E7%90%86%E5%8F%8A%E6%B5%81%E7%A8%8B.html 整理编辑,转载请注明出处