GithubHelp home page GithubHelp logo

paramientos / openwrt-hotspot-management Goto Github PK

View Code? Open in Web Editor NEW
8.0 2.0 1.0 274 KB

OpenWrt Hostpot/Logging/Qos Management Bash Service

JavaScript 0.29% CSS 40.90% HTML 9.43% Shell 49.39%
openwrt wifi networking dhcp 5651 logging lede gdpr kvkk

openwrt-hotspot-management's Introduction

OpenWrt Hostpot/Logging/Qos Management Bash Service

With the OpenWrt Management Service, you can collect the data on the device and send it to the endpoint that you specified.

  • Hotspot management
  • Speed limitation with Qos Control
  • Who visited which websites with URL logging
  • Download/Upload information (both device and user) (Watching Bandwidth)
  • Device uptime information (heartbeat)
  • SSID information
  • Dhcp log information (you can sign it there if you wish).
  • Signing DHCP log files will be in the next version

(In Turkish => OpenWrt, modemimizin beceri ve yeteneklerini geliştirmek için mükemmel bir seçimdir. Bu yüzden bash tabanlı bir hizmet geliştirdim, Wi-Fi Hotspot, indirme/yükleme limitleme, 5651 log yönetimi gibi tüm ihtiyaçlarınızı yönetmek için OpenWrt cihazınıza entegre edebilirsiniz)

Working logic : All main files are located at /usr/montefi folder. Every endpoint has a variable named endpoint_url You can change the endpoint values as your desire. Foe example : If you can check /usr/montefi/alive.sh, you will see the line as this :

endpoint_url="$API_BASE_URI/device/$DEVICE_ID/status"

The variable API_BASE_URI comes from /usr/montefi/config.sh device/$DEVICE_ID/status is the endpoint part of it. You can change it if you want.

Since OpenWrt/Lede devices run on Linux, it creates many related package logs. You can provide these logs with third party tools. Since the packages used in this project produce logs in the same way, the service parses them and make sense of these log files and send them to the endpoint that you mentioned. Cronjob service is used to do that.

You can change the **API_BASE_URI** information at/ur/montefi/config.sh You can change the splash screen at/etc/banner

Installation

1- First of all, change your API_BASE_URI value at/ur/montefi/config.sh then copy all the files to the OpenWrt device's root directory (/)

$ scp -r / local / setup-files [email protected]: /

(In Windows / Linux / Mac you can use Ftp client also)

2- Connect to the device via ssh

$ ssh [email protected]
$ sh /tmp/montefi/setup.sh

3- When the installation is finished, check your cron items. You will see the tasks that OpenWrt is going to handle

$ crontab -e

4- Enjoy your new Wi-Fi friend :)

Parameters (alive.sh)
real_ip Real IP/Public IP
mac_address Mac address of the device (wan port)
hostname Hostname of the device
disk_usage_percentage Disk usage of the device
memory_usage_percentage Memory usage of the device
uptime
Parameters (bw.sh)
download Download info of the device as Kb
upload Upload info of the device as Kb
until_to The date that data was received
Parameters (dhcp_leases.sh)
leases The Dhcp leases of the device
Parameters (law_5651.sh)
leases The Dhcp leases of the device
Parameters (ssid.sh)
ssid_name Wi-Fi name
ssid_key Wi-Fi password
Parameters (url_logger.sh)
gateway_ip The gateway ip of the device
urls The url addresses that the users visited
Parameters (user_bw_usage.sh)
usage The user data usage information. For more further information about the parameters of the Wrtbwmon package, you can check : https://github.com/Kiougar/luci-wrtbwmon

The packages :

Supported versions :

  • OpenWrt 19.07.1
  • OpenWrt 19.07.0
  • OpenWrt 18.06.7
  • OpenWrt 18.06.6
  • OpenWrt 18.06.5
  • LEDE 17.01.6
  • LEDE 17.01.5
  • LEDE 17.01.4
  • LEDE 17.01.3
  • LEDE 17.01.2

RoadMap :

  • Sign dhcp log files with SSL at device

openwrt-hotspot-management's People

Contributors

paramientos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

rudidev89

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.