Cauta un CaptivePortal, sunt o gramada gata facute.
De obicei autentificarea in Captive Portal este facuta intr-un server radius, iar acesta poate sa aiba in spate un mysql.
Din aplicatia ta scri direct in mysql, ce e folosit de radius, iar radius+captiveportal se ocupa de autentificare.
Pentru a-ti usura munca, iti recomand sa folosesti PfSense, este un router os, bazat pe freebsd, foarte light, ce are si captive portal, si radius.
Configurezi apoi radius sa foloseasca un mysql extern, unde ti aplicatia, partea de comanda si control. Si that's it!
CaptivePortal din PfSense suporta template-uri deci poti face o pagina faina, ce sa informeze/ceara o actiune de la user, chiar cont nou, poti folosi link extern catre partea de plati/user management a aplicatiei tale ce o whitelistezi astfel incat userul sa nu trebuiasca sa fie autentificat pentru a accesa aplicatia ta.
Mai mult poti configura din radius (efectiv din mysql) ce limite de viteza vrei pe grupuri de useri sau pe useri individuali, iar pfsense si implementarea lui de CaptivePortal se ocupa de tot!
Mai mult PfSense va trimite statistici catre radius ce vor fi stocate in mysql, si poti scoate din ele niste grafice faine, poti vedea ce useri sunt conectati, de cat timp...etc, se numeste radius accounting. PfSense se ocupa de asemenea de dhcp si toate celelalte necesare .
Spor!