portal認證方式有多重,我們選擇了十分普遍額開源項目wifidog,支持openwrt,用戶群體大,資料較完善,中文資料多。
主要優點:
- 開源(https://github.com/wifidog github,上提供了源碼及基於php的認證網關源碼)
- 國內使用wifidog的情況比較普遍,二次開發更容易。
- 代碼可移植性高,各種平台幾乎都不受限制
(總結:低成本,易上手。)
目前也存在一定的缺點
- 通過實際抓包發現,心跳包不斷的檢查用戶在線情況,網關服務器性能開銷較大。
- 基於iptables,協議繁瑣,性能比較差。
- 隱私問題,沒有加密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整理編輯,轉載請注明出處