PfSense as Wi-Fi Hotspot Controller

A Province-wide WiFi  is being cooked as I’m writing this and I am in need of a vendor-independent controller for all the access points we are going to install. There will be a mix of vendors such as UBNT and OpenMesh for this project, and while each of them offers a “free” controller, I still need to have a single interface for all of them. Because PfSense will be our main Firewall/Router, I have decided to look into it and see if it can do what I want.
I will be posting my progress here, also to serve as a documentation of what I have done so far.

Requirements:

  1. Utilize PfSense Captive portal(CP) feature – using vouchers. Done!
  2. DHCP range
    • All backhaul devices have static mappings, including WiFi APs. Done!
    • WiFi clients different dhcp pool. Done!
  3. Function to see all connected clients. Done! See Image 1.
    • See who and how many viewed the CP page.
    • See who among who viewed the CP have actually bought voucher and are authorized.
    • See page hits of the CP page.
    • Summary of the above.
  4. Function to see all  Access Points. Done! See Image 2.
    • Add an access point function.
    • View Device name.
    • View SSID.
    • View Status.
    • View number of clients connected.
    • View Uptime.

 

Image 1

Image 2accesspoints

Access Points requirement is SSH access. Using PHP ssh functions, I can issue CLI commands to get necessary info about the APs.

Next features:

  1. Ability to issue more commands for controlling each AP.
  2. Group WiFi clients based on which AP they are connected and display localized portal page.

Join the Conversation

16 Comments

    1. Thank you! I will. In fact I have made huge progress to the coding, added more functions and is quite near to what I want. Will be posting here soon.

      Kind regards,

  1. Really amazing project, I’ll keep following it, also is it supported on the new version as well (pfsense 2.3) when will be it available for public if possible.. thanks for your hard work

  2. Looks really good lad, This can be a great community project and can aid Pfsense project in the long run. I wish luck to all.

    1. Thanks for the compliment. I have halted this due to the recent major developments of PfSense, mainly the rewriting of its GUI in 2.x and joining of Chris Buechler to UBNT. I think let’s wait till the storm calms. 🙂

  3. Stopped the Project ???? You must be part of the PfSense development team !!!!! Congratulations on the work, hopefully one day this function has no pfsense. God be with you.
    Parou o Projeto???? Você deveria fazer parte da equipe de desenvolvimento do PfSense!!!!! Parabéns pelo trabalho, esperamos que um dia essa função tenha no pfsense. Fique com Deus.

    1. Hi! Not active anymore due to recent major changes of PfSense. But I am looking for a way to do this again. Thanks for showing interest.

Leave a comment

Leave a reply to iCafe Cancel reply