编写自己的WifiDog认证服务器

摘要:
˃这里没有额外的处理,只需简单地响应Pong to wifidog。空)&&isset){//**获取结果*//$result=isSubscribeByMac;isValidate;return;}否则{echo“Auth:0”;}//输出是否为合法函数Validate{if{echo“Auth:1”;}否则{echo“Auth:0”;}}?˃这里,我们根据一些参数获得$result,以决定是否允许身份验证。

这次我使用的是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/wifidog/auth?token=".$result);  
    }  
    else {  
        header("location: http://xxxxx/WelcomePage.php?mac=".$_GET["mac"]);  
    }  
}  
else {  
    header("location: http://xxxxx/WelcomePage.php?mac=".$_GET["mac"]);  
}  
?>  

2.ping.php

<?php  
echo "Pong";  
?>  

这里没有做额外的处理,只是简单地向wifidog回应一个Pong。
3.auth.php

<?php  
// 后门  
if ($_GET["token"] == "123"){  
    echo "Auth: 1";  
    return;  
}  

if (!empty($_GET["token"]) && isset($_GET["token"])){  
    //获取$result的过程//  
    isValidate($result);  
    //**后续处理**//  
    return;  
}  
else if((!empty ($_GET["mac"])) && isset($_GET["mac"])){  
    //**获取result*//  
    $result = isSubscribeByMac($_GET["mac"]);  
    isValidate($result);  
    return;  
}  
else  
{  
    echo "Auth: 0";  
}  

// 输出是否合法.  
function isValidate($result){  
    if ($result == 1){  
        echo "Auth: 1";  
    }  
    else {  
        echo "Auth: 0";  
    }  
}  
?>  

这里根据一些参数来获取$result,从而决定是否允许认证。
4.welcomePage.php以及Portal.html就不一一列举了。

本文章由http://www.wifidog.pro/2015/06/08/wifidog%E8%AE%A4%E8%AF%81%E6%9C%8D%E5%8A%A1%E5%99%A8-4.html 整理编辑,转载请注明出处

免责声明:文章转载自《编写自己的WifiDog认证服务器》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇百度地图——判断用户是否在配送范围内解决方案Jenkins打包出错下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

(转)Linux修改eth2到eth0(70-persistent-net.rules)

之前在公司提供的虚拟机器上面,一直有个问题用着很不舒服,为什么它的IP选择的设备的eth2的,但是我在/etc/sysconfig/network-scrpts/下面也没有找到ifcfg-eth2的配置文件,这样子,我就没法修改IP了,也没法使用静态IP了,每次都是虚拟机动态分配的IP,这个太麻烦了。有时间解决了下这个问题。首先我声明下,我这里是用的NAT...

macbook linux 双系统,MAC Ubuntu双系统方案

在Ubuntu上可以利用Vmware等工具安装linux系统,但是由于某些原因,需要装双系统等,可以使用以下方案:在Mac笔记本下安装ubuntu双系统的方案是利用refind、Etcher软件实现。步骤如下:1.下载Ubuntu从Canonical网站下载当前的Ubuntu LTS安装程序。2.创建您的Ubuntu安装驱动器我们将在此示例中使用U盘。驱动器...

Mac配置环境变量

Mac配置环境变量 前言 以往的开发环境都是Win10,如今切换Mac之后,一些环境就不是一些界面能解决的了,这里简单做一个记录。 1. 关于mac的配置文件,这里引用我参考的一篇博客 Mac系统下的环境变量(权限嵌套排列,如同层叠样式表): a. /etc/profile b. /etc/paths c. ~/.bash_profile...

Mac Eclipse上Android SDK manager闪退的问题!!

最近想自学一下Android,也没啥人指导,安装的过程中就花了一整天。。。。安装完ADT,安装完SDK,所有步骤都照着网上来,可是一打开SDK manager就闪退!网上所有方法都找了,可是几乎全是windows的,没啥参考性,试了好多方法,终于发现是SDK版本太新了!以后不要随便去官网下载最新版本了,各种问题。。官网下的是android-sdk-mac_...

MAC解决端口占用

1.前言 启用goagent、firefly等服务的时候,如果非正常退出,再次启动经常会遇到address already in use,端口被先前启动的服务进程所占用,导致服务无法使用。这种情况,可以注销或重启(注销不一定有用)。下面介绍另一种方法--在终端中查找占用端口的进程并杀死,然后重启服务。 2.查看端口 终端输入:lsof -i tcp:por...

解决mac iOS 上拉 下拉出现白色空白、白边

表现 pc端:mac鼠标滚动或触屏滚动时,头部、底部会多出一块白色区域 移动端: 手指按住屏幕下拉,屏幕顶部会多出一块白色区域。手指按住屏幕上拉,底部多出一块白色区域。 产生原因 在 iOS 中,手指按住屏幕上下拖动,会触发 touchmove 事件。这个事件触发的对象是整个 webview 容器,容器自然会被拖动,剩下的部分会成空白。 解决方案 监听事件...