Supporto volontario e collaborativo per IPFire!® in italiano

 Sostieni IPFire Italia

Sostieni IPFire Italia tramite bonifico

IBAN IT80K03268223000EMH00081013
Intestato a Umberto Parma Causale Donazione IPFire Italia

 Merchandising di IPFire Italia

Ecommerce icon Graphics 4123404 1

IPFire Captive Portal: nuove funzionalità, correzione del Bug 14006 e una nuova interfaccia

Captive portalin questi giorni ho lavorato su una modifica piuttosto interessante di una delle funzionalità native di IPFire, intervenendo direttamente sull'implementazione del Captive Portal.

L'obiettivo non è stato semplicemente quello di apportare un restyling grafico, ma di intervenire sul flusso di autorizzazione dei client, estendendo le possibilità offerte dal Captive Portal e rendendolo più flessibile in scenari di rete reali.

In particolare, il lavoro nasce dall'esigenza di gestire correttamente quei dispositivi che, per loro natura, non sono in grado di interagire con una pagina web e quindi non possono inserire manualmente un codice coupon.

🔧 Cosa è stato modificato

Gli interventi interessano principalmente tre componenti del Captive Portal:

/srv/web/ipfire/cgi-bin/captive.cgi

/srv/web/ipfire/cgi-bin/captive/index.cgi

/srv/web/ipfire/html/captive/template.html

Si tratta di componenti che intervengono in punti differenti del processo: dalla logica CGI che gestisce l'autorizzazione del client, fino alla generazione delle pagine web presentate all'utente.

Nuova gestione dell'autorizzazione

La modifica più significativa riguarda captive.cgi.

È stata introdotta una nuova possibilità nella gestione dell'autorizzazione dei dispositivi, consentendo di abilitare un client senza richiedere necessariamente l'inserimento di un codice coupon.

Questo aspetto è particolarmente interessante perché permette di estendere l'utilizzo del Captive Portal anche a dispositivi che normalmente rappresenterebbero un problema in una rete protetta da autenticazione web.

Pensiamo, ad esempio, a:

  • 🖨️ stampanti di rete;
  • 📡 dispositivi IoT;
  • 🔌 dispositivi embedded;
  • 🏠 sistemi di domotica;
  • 📺 Smart TV e dispositivi multimediali;
  • ⚙️ apparati di rete o sistemi privi di un'interfaccia utente;
  • 🔧 dispositivi che non dispongono di un browser o di un'interfaccia adatta all'inserimento del coupon.

In questi casi il problema non è tanto la connettività del dispositivo, quanto la sua incapacità di completare il normale processo di autenticazione attraverso il Captive Portal.

La nuova funzionalità permette quindi di gestire questi client in maniera più efficace, mantenendo al tempo stesso il Captive Portal come punto di controllo degli accessi alla rete.

Il risultato è un sistema decisamente più flessibile, in grado di gestire non soltanto smartphone e computer, ma anche quella crescente quantità di dispositivi IoT ed embedded che oggi fanno parte delle nostre infrastrutture di rete.

🐞 Bug 14006 e compatibilità con la build 203

Un'altra parte importante del lavoro riguarda la correzione di un problema già segnalato nel Bug 14006 di IPFire.

Il problema assume particolare rilevanza con l'aggiornamento alla build 203, dove la funzionalità interessata non risulta più utilizzabile correttamente.

L'intervento effettuato ha quindi anche lo scopo di ripristinare il corretto funzionamento del Captive Portal, intervenendo sul codice responsabile della gestione della richiesta e del relativo flusso di autenticazione.

Questo è un aspetto che ritengo particolarmente importante: non si tratta quindi soltanto di aggiungere una nuova funzionalità, ma anche di mantenere compatibile il componente con l'evoluzione del sistema IPFire.

🎨 Una nuova interfaccia, pensata anche per il mobile

Gli altri due componenti interessati sono:

/srv/web/ipfire/cgi-bin/captive/index.cgi

/srv/web/ipfire/html/captive/template.html

Questi file sono coinvolti nella gestione e nella presentazione delle pagine che l'utente visualizza durante il processo di accesso al Captive Portal e nella richiesta del codice coupon.

Anche in questo caso l'intervento non si è limitato a una semplice modifica estetica.

L'interfaccia è stata rivista, semplificata e resa più coerente con il design attuale di IPFire, cercando allo stesso tempo di migliorare l'esperienza dell'utente durante l'autenticazione.

Uno degli aspetti sui quali ho prestato maggiore attenzione è la fruizione da dispositivi mobili.

Il Captive Portal viene infatti utilizzato molto spesso proprio attraverso smartphone e tablet, motivo per cui una pagina progettata esclusivamente per la visualizzazione desktop può risultare poco pratica.

Per questo motivo l'interfaccia è stata ottimizzata utilizzando un approccio responsive, permettendo agli elementi della pagina di adattarsi alle diverse risoluzioni e dimensioni dello schermo.

L'obiettivo è rendere il processo di autenticazione:

  • più semplice;
  • più leggibile;
  • più intuitivo;
  • più veloce;
  • e soprattutto utilizzabile correttamente anche da dispositivi mobili.

In altre parole, il Captive Portal non deve essere soltanto funzionale: deve anche essere facile da utilizzare.

Dalla modifica locale al contributo per IPFire

Chi fosse interessato a provare queste modifiche sul proprio dispositivo può trovare i file necessari a questo [Link].

Naturalmente, trattandosi di modifiche che intervengono direttamente su componenti del sistema, consiglio di procedere con attenzione e di effettuare un backup dei file originali prima dell'installazione.

Questo rilascio rappresenta però soltanto il primo passo.

Parallelamente, infatti, la community di IPFire Italia sta avviando la procedura necessaria per sottoporre queste modifiche al progetto ufficiale.

L'obiettivo è quello di far analizzare e validare il codice dal team di sviluppo di IPFire, verificandone compatibilità, sicurezza e qualità dell'implementazione.

Se il contributo verrà ritenuto idoneo, l'auspicio è che possa successivamente essere integrato nel progetto ufficiale, rendendo queste funzionalità disponibili non soltanto alla community italiana, ma a tutti gli utenti IPFire.

Ed è proprio questo, a mio avviso, l'aspetto più interessante del progetto.

Una modifica nata da un'esigenza concreta può diventare un vero e proprio contributo open source, passando dalla sperimentazione locale alla revisione da parte degli sviluppatori del progetto.

IPFire, Firewall, Linux, security, IOT, network, Networking, Open Source, Captive Portal, IPFire Italia, Bug 14006, Coupon, Autenticazione, Network Administration
Cookies user preferences
We use cookies to ensure you to get the best experience on our website. If you decline the use of cookies, this website may not function as expected.
Accept all
Decline all
Leggi
Piattaforma
Statistica visite del sito
Joomla
Accetta
Decline
Marketing
Set of techniques which have for object the commercial strategy and in particular the market study.
Matomo
Monitoraggio degli utenti e misurazione e miglioramento delle prestazioni e supporto della personalizzazione
Accetta
Decline
Google
Monitoraggio degli utenti e misurazione e miglioramento delle prestazioni e supporto della personalizzazione
Accetta
Decline
statcounter
Monitoraggio degli utenti e misurazione e miglioramento delle prestazioni e supporto della personalizzazione
Accetta
Decline
Save