← All work
Product · 2013–14

Wireless Captive-Portal Login Panel (RouterOS)

Overview

A wireless hotspot login panel (“Wireless login panel”) built on Silex, granting network access by authenticating users, including via Facebook, and then programmatically configuring the MikroTik router through its RouterOS API. The more built-out of the author’s two wireless-panel projects, with cache/, database/, wifi/ and console.php tooling.

The Challenge

Public/guest Wi-Fi needs a captive portal that authenticates users and then actually opens their access on the network gear. The aim was a self-contained panel handling both the web auth experience and the router-side access control.

What We Built

A Silex application (src/, views/, config/, web/, console.php) integrating: the pear2/net_routeros client with pear2/cache_shm/APC for talking to MikroTik RouterOS; a Facebook service provider for social login; Browscap (PHP) for device/browser detection; Doctrine ORM via a dflydev service provider for persistence; Symfony Yaml/Config/Security/Validator components; and Monolog logging. A wifi/ directory and database/ store hold the access/session data, with a CLI console for management tasks.

Technologies & Approach

Silex was chosen for a lightweight, self-hostable portal; the RouterOS API client bridged web auth to real network access control; APC/shm caching kept device-detection and router calls fast. A pragmatic blend of micro-framework web app and network automation.

Outcome / Impact

A working captive-portal pattern that ties user authentication directly to MikroTik network access, demonstrating full-stack reach from a web login flow down to physical networking hardware.

Capabilities Demonstrated

  • Building captive-portal / hotspot login systems
  • Automating MikroTik RouterOS network devices from PHP
  • Social-login authentication and device detection (Browscap)
  • Self-contained Silex micro-applications with CLI tooling
More work See all →