HOWTO Chillispot + altro

| 57 Comments

Bene! Dopo molti giorni dedicati a varie imprecazioni per far funzionare a dovere Chillispot, ci sono riuscito. In estrema sintesi, si tratta di un software che gestisce l'autenticazione degli utenti in una rete WiFi il quale rende tutto il processo completamente indipendente dagli access point (che, secondo il mio modo di vedere la cosa, dovrebbero essere il più dumb possibile).

Comunque, ho deciso di condividere la mia conoscenza con il mondo intero. ;-) Quindi ho scritto un HOWTO relativo all'installazione di Chillispot con Apache+MySQL+FreeRadius su Gentoo. E` su Gentoo-Wiki, quindi è in inglese.

57 Comments

ciao..anche io sto provando ad installare chillispot..mi piacerebbe leggere il tuo howto..ma non ci riesco...

Ho provato il link e mi pare funzionare. che problemi riscontri?

Michele.

grazie per lo splendido howto Michele. Non mi ha evitato di bestemmiare ma è comunque stato utile. Ciao e buone feste

ah. il filtro per i commenti non è molto piacevole...

Ciao Marco, sono contento che l'HOWTO ti sia stato in qualche modo utile!

Per quanto riguarda la moderazione dei commenti, purtroppo è necessaria poiché mi arrivano topo 50 spam al giorno. :-(

Buon Anno, Michele.

Ciao,
ti faccio i miei complimenti per il tutorial che hai scritto. Sto mettendo in piedi un wireless hotspot con autenticazione e ho provato un po' di sw tra cui nocat zonecd.... L'unica cosa che ancora non ho trovato e' il sistema di profilazione degli utenti (Nome, Cognome, Indirizzo...temporizzazione dell' accesso, generazione user e pwd) per la nuova legge dell' antiterrorismo. Tu conosci qualche sw per ottemperare alla nuova legge? Grazie di tutto e grazie per aver condiviso la tua esperienza sul hotspot wireless.
Jamil

Ciao jamil!

Per quanto riguarda la profilazione degli utenti io mi sono preparato un piccolo script Perl che crea in automatico coppie username/password su richiesta.

Nel caso ad esempio di un hotel il/la receptionista via browser entra in un'area riservata del server, inserisce nome, cognome ed eventuali altri dati dell'utente, nonché il numero di ore di durata del login, ed ottiene una coppia username/password autogenerata che può consegnare al cliente. Questo, unito ai log che ottengo con iptables ed alle informazioni di accounting di ChilliSpot, dovrebbe permettere di capire sempre "chi ha fatto cosa".

A presto, Michele.

Ciao Michele,

ho letto ora il tuo messaggio; faro' anch'io una cosa simile se non ci sono gia' delle soluzioni gia' pronte e rodate disponibili in Internet. Grazie per le info.

salve ragazzi, una domanda, avete provato milkeyway? io non riesco a farlo andare....chi di voi lo ha fatto funzionare?

Ciao davide!

MilkeyWay non l'ho mai provato, ma sembra piuttosto interessante. Facci sapere se riesci a farlo andare. ;-)

A presto,
Michele.

Ciao ragazzi, ho letto la documentazione su milkeyway ma se non ho capito male non supporta la crittografia quindi nasce il problema se si vuole utilizzare come software per hostspot.

Io ho trovato l'howto veramente ben fatto ed estremamente utile.
Grazie mille

Sapete se Chillispot puo essere impiegato anche su reti wired

Ciao Robert!

Direi di sì, nel senso che non ha importanza quale sia il "carrier" (rame, onde radio, ...): Chillispot il suo lavoro lo fa comunque, anzi direi che nemmeno si accorge della differenza. ;)

A presto,
Michele

Ciao,
ho provato a configurare Chillispot con ip statico ma nei computer dove inserisco staticamente l'ip non arrivo nemmeno al login di chillispot, hai qualche tips?

Ciao e complimenti anche da parte mia.
Purtroppo ho poca esperienza in applicativi del genere e credo che sarà dura per me configurare il tutto :-(
Mi chiedevo se ora, od in un futuro sarà possibile trovare immagini di vmware con i software già configurati. Per capirci un po' come per trixbox e asterix...

Ciao e grazie

Ciao Piero!

Beh, l'idea di avere delle immagini pronte è buona e credo anche piuttosto fattibile... ci vuole qualcuno che si dedichi alla cosa. ;-)

A presto,
Michele.

Ciao Ho Istalato in Montagna vari punti di accesso per amici PARETENDO DA UN'ANTENNA DI EOLO.IT CHE INSTALLO E FUNZIONANO BENISSIMO , vorrei provare il vostro sistema completo , sono a crudo con linux , mi coniliate per favore come fare e se ci sono dei pacchetti quasi pronti da installare.
Grazie MAURO L.

SKIPE Eolo.Varesotto

Salve , Ragazzi


Sto finendo di implementare un hotspot. Mi sorge solo un dubbio. Come gestisco la limitazione di banda? Che software uso? PERFAVORE rispondete in mfricano@alice.it

ciao a tutti.ho un gateway con shorewall installato. posso lo stesso usare freeradius , ecc ecc per installare un sistema di autenticazione?
grazie

Ciao. Sarei interessato a qualche dettaglio in piu' sul logging via iptables...

Grazie

caro michele, cari voi,
uso Chillispot/Dialup Admin per gestire il traffico nel mio ostello.
direi che funziona tutto bene sia wireless sia wired. non ho ancora capito però come limitare il tempo di connessione. credevo che mettendo 1800 (secondi) in Session Time-out la connessione terminasse allo scadere del 1800esimo secondo. invece, probabilmente, in questo modo limito a 30 i minuti per sessione (invece delle 4 ore di default), ma ogni volta che un utente vuole ri-accedere gli basta inserire id e password...cosa devo fare per limitare in assoluto a 30 minuti (1800secondi), 1 ora (3600secondi) e così via le connessioni?

grazie mille

enrico

Ciao Enrico!

Per limitare gli orari di connessione io vado direttamente ad alterare il database del server Radius. Ho fatto uno script amministrativo (web-based, in Perl) che si occupa di automatizzare ciò. Se riesco a dargli una "pulita" lunedì o martedì, vedo di metterlo online!

A presto,
Michele.

Grande Michele!
sto leggendo con molto interesse i tuoi post.
Purtroppo ad un amico non gli si riesce mai a dire di no e mi sono intestardito di fargli un AP per il suo BAR in modo che condivida internet gratuitamente (saro' presto un Foneros...).
Per farla breve... si riesce da soli a farsi un HotSpot con Captive Portal secondo legge da soli in economia? magari recuperando un vecchio pc? che dire poi delle aperture del ministero degli interni sui metodi di autenticazione ... mica si puo' chiedere alla "bella" cassiera del bar di farti fotocopia del documento e creare lei un account per la navigazione... lasciamola sorridere e continuare a far la "bella" cassiera no?!

Scherzi a parte oggi ho iniziato a configurare la macchina, un AMD 1000 vecchiotto con Ubuntu, una realtek Wireless... seguiro' il tuo HowTo... dici che sono sulla buona strada? del resto ho guardato con molto interesse zeroshell, ma non mi sembra faccia al caso mio.

RIBADISCO ... OTTIMO LAVORO... e ciao a tutti!

Intanto grazie delle preziose informazioni presenti in questa pagina.

Mi unisco anch'io alla domanda sopra: come limitare un account creato con dialupadmin? Per esempio ad un certo numero di ore totali, oppure a tot MB di traffico? O ancora meglio a tot giorni, dopodiché l'account risulterà disattivo.

E poi: è possibile da dialupadmin disattivare un account, mantenendo quindi memorizzati tutti i dati, ma senza rimuoverlo dal database? Bisogna forse usare il "badusers"?

Inoltre, non sarebbe male riuscire ad aggiungere alcuni campi nelle informazioni personali, come il documento d'identità.

Grazie e saluti a tutti.

Ciao Marco!

Non uso dialupadmin, ho creato qualche script mio. In ogni caso i login, anche se creati con dialupadmin, possono essere terminati in una maniera simile a quella usata da me.

Qui trovi quello che ho fatto, con scarsa documentazione:

http://svn.ebau.it/soft/svn/chilligrid/

Lo script "reapusers.pl" si occupa proprio di terminare gli utenti.

Per quanto riguarda l'identificazione degli utenti, io uso una tabella MySQL in più (mb_user_details) dove inserisco alcuni dati che mi interessano (nel mio caso il numero di camera in cui dormono) - in maniera simile puoi registrare altri dati. Nel repository SVN di cui sopra puoi anche trovare il dump del database.

Spero di esserti stato utile.

A presto,
Michele.

E' da un pò di giorni che Chillispot mi fa perdere tempo e quindi ho postato il mio problema sul forum:

http://www.chillispot.info/chilliforum/viewtopic.php?pid=357#p357

Marco, per favore, puoi dare un occhiata al topic?
Spero di ricevere un aiutino....

Grazie

Ciao Michele, ho trovato molto interessante il tuo HOWTO...ma purtroppo ho ancora qualche dubbio sul crearmi un hotspot.
Ci sto provando ma con scarsi risultati.
Una mia domanda è...come mai non funziona il link da te inserito?
http://svn.ebau.it/soft/svn/chilligrid/

sulla seconda scheda eth1 cosa devo attaccare?? il toppino dell'access point?

eth0 = router --- internet
eth1 = Access Point?

Poi all'interno dell'access point cosa dovrei configurare??

Cordiali Saluti Davide :D

Grazie al tuo how-to sono stati fatti notevoli progressi.

Dai un'occhiata a: http://www.mail-bank.it/opensource/

Il pacchetto wifiroute.

A presto,

Lorenzo

Ciao ragazzi, volevo ringraziare tutti quelli che hanno contribuito nel mettere informazioni sulla realizzazione di un hotspot.

Volevo chiedervi se conoscevate qualche modo per limitare la banda usata dai vari utenti, per prevenire il blocco della rete causato dai peer-to-peer e inoltre se sapevate come attribuire indirizzi statici ai vari client attraverso l'assegnazione in dhcp.

Grazie mille
a presto

Salve, voglio fare i più sentiti complimenti a Michele Beltrame per l'HOWTO. Mi è stato utilissimo per risolvere un sacco di dubbi.

Ora però Michele ho da chiederti un aiuto. Sono interessatissimo al stuo script per la gestione degli utenti, io devo fare proprio la cosa che tu hai realizzato nel tuo script, e cioè l'utente arriva e la bella segretaria compilando un form con i dati dell'utente fornisce un foglio con username e password per l'autenticazione. Che chiaramente avranno durata stabilita da me.

Mi sono segnato il link http://svn.ebau.it/soft/svn/chilligrid/ ma non so che script prendere e come installarlo. Ho visto che li hai pure modificato il file hotspotlogin.cgi, in che senso lo hai fatto?

Cmq spero mi risponda perchè è per un lavoro importante e mi saresti di fondamentale aiuto.

Ma la soluzione postata da Lorenzo Allori a questo link http://www.mail-bank.it/opensource/ riguardante WiFiroute è quella che cerco? Li c'è scritto che presto arriverà il pacchetto per ubuntu che a me servirebbe, novità in merito?

Grazie in anticipo a tutti e complimenti ancora per il lavoro svolto

Utilissimo grazie!

Con il tempo ho capito molto meglio come funziona il tutto e infatti stavo modificando il file hotspologin.cgi per adattarlo alle mie esigenze.

Per quanto riguarda gli script creati da te per la creazione/gestione degli utenti, basta che copio la cartella /adm nella mia var/www/hotspot/cgi-bin/ ? Poi chiaramente richiamando il file /adm/index.cgi dovrei visualizzare il tutto giusto?

Prima di ciò immagino che dovrei importare il tuo Database altrimenti non funzionerebbe, io lo farei con il comando

mysql "simbolo minore" radius_db_mysql.dmp -u root -p

NON CONOSCO I TAG PER METTERE IL SIMBOLO MINORE, CMQ CREDO SI CAPISCA


Spero di non aver detto baggianate :-D

Grazie mille della disponibilità Michele

Saluti
Marco

Ciao!

Grazie delle preziose info.

Io uso una Ubuntu Server, e vedendo dal file radiusd.conf la versione di freeRadius è la v1.188.2.4.2.18 (poi non so se c'è un altro modo per vedere la versione).

Io ho copiato tutto in /var/www/hotspot così da rispettare perfettamente la struttura delle directory così come le hai tu. Infatti ho tutto al suo posto. Non capisco però cosa intendi con l'installare i moduli Perl Template ecc.. Ho provato a fare una ricerca nei repository ma non esce niente che sembra riguardare Perl.

Ok, moduli installati tramite cpan, solo che ho degli errori alla fine sugli ultimi due e cioè
* DateTime::Format::Sprtime
* DateTime::Format::MySQL

purtroppo nei repository di ubuntu non ci sono i suddetti moduli. Qualche suggerimento? Appena finisco di caricarli tutti proverò nuovamente ad accedere al tuo pannello.

Ma i primi due (strict e warnings) sono anch'essi dei moduli?

Ciao

Marco

Ciao!

strict e warnings non sono moduli, ma direttive per il compilatore, quindi puoi disinteressartene. ;)

Dli altri due ti consiglio di installarli dalla shell CPAN, lanciando il comando:

cpan
(se è la prima volta ti farà delle domande di configurazione)

poi dai (ad es):

install DateTime::Format::Sprtime

se ti dà errori nel test (come forse ha dato a te), prova:

force install DateTime::Format::Sprtime

Michele.

Ciao, allora ho risolto il problema dei moduli in perl, infatti ora risultano tutti installati in cpan.

Purtroppo però sto avendo un problema con il database, infatti richiamando il file index.cgi dal browser ho il seguente errore:

Software error:

1: (can\'t connect to SQL server) at /var/www/hotspot/cgi-bin/adm/index.cgi line 39.


Importando il database con il comando sopracitato ottengo un bel

ERROR 1046 (3D000) at line 22: No database selected

Come mai? Dovrebbe essere giusta l'importazione. L'ho vista da qui

http://openskill.info/infobox.php?ID=939


Ciao

Marco

Perdonami se ti stresso, ma sono finalmente riuscito ad avviare il tuo pacchetto! In pratica sbagliavo ad importare il database che andrebbe prima creato e poi importato.

Bene accedo alla pagina iniziale dove devo mettere il "Nome cliente" e la "Stanza", solo che mi questo errore appena faccio "Crea utente":

Software error:

ecreate-1: Table 'radius.radcheck' doesn't exist at /var/www/hotspot/cgi-bin/adm/index.cgi line 108.


A leggere l'errore sembra che la tabella radius.radcheck non esista, ma io credo di aver importato correttamente il Database, purtroppo non sono per niente pratico di DB MySQL, quindi non saprei manco dove mettere la mani.

Ciao

Marco

Ciao Marco!

Il mio database include solamente alcune tabelle addizionali a quelle del server Radius, che vanno create a parte. Lo schema di quel database viene di solito fornito assieme al server Radius.

Probabilmente lo trovi sul tuo sistema nel file:

usr/share/doc/freeradius/examples/mysql.sql

o in qualche altra locazione.

A presto,
Michele.

Ciao Michele, disponibile come sempre.

Quindi se non ho capito male, devo prima importare il Database standard di freeradius così come lo avevo prima, e poi importare il tuo che andrà ad aggiungere delle tabelle a quello standard di freeradius. Giusto?

In pratica il database standard di freeradius io lo chiamo "radius", e con esso se creo utenti a mano funziona tutto alla grande, importando il tuo sullo stesso database, quindi "radius", dovrebbe solo aggiungermi quelle tabelle di cui parli e basta.

Appena posso provo subito.

Un'altra domanda, ho visto che i tuoi script Perl dovrebbero permettermi di creare una coppia di Username e Password sulla base dei campi "Nome cliente" e "Stanza", quest'ultimo campo ha delle restrizioni come argomento? Nel senso, poichè io dovrò usare il tutto in una consessionaria, a me chiaramante non interessa il numero di stanza, perciò pensavo di sostituire il campo "Stanza" con una campo tipo "Numero del Documento d'identità", che essendo alfanumerico potrebbe non essere accettato dal tuo script se definito solo per i numeri.

Poi magari per l'individuazione dell'utente potrei far conservare una copia dei dati inseriti con la fotocopia del documento d'identità.

Spero di essermi spiegato bene...

Ciao

Marco

Ho fatto grandi progressi!!
Spero che tutti questi miei interventi servano a qualcuno per utilizzare al meglio il grande lavoro di Michele Beltrame al quale vanno i miei più sentiti complimenti.

Allora caro Michele, tutto funziona alla grande tranne alcune cose che credo/spero siano solo dei dettagli aggiustabili in pochi passi.
Te li elenco di seguito con ordine

- Quando creo un nuovo utente mi viene riportata la pagina che riepiloga tutti i dati inseriti e chiaramente Username e Password per la connessione. E' troppo complicato aggiungere un pulsante per la stampa? Sarebbe comodissimo, io chiaramente non so minimamente come farlo e se per te è una cosa semplice te ne sarei infinitamente grato. Al massimo puoi indicarmi come fare se non è complicato e metto io mani al codice.

- Alcuni post sopra mi dicevi che lo script reapusers.pl che si trova nella cartella cron, serve per eliminare gli utenti scaduti e per segnalare ad server Radius di disconnettere quelli scaduti che sono al momento connessi. Come si esegue? Ho provato a richiamarlo dal browser copiando la cartella cron in /var/www/hotspot/ ma chiaramente non funzia. Immagino vada avviato da shell in qualche modo...

- Quando vado nella pagina Lista login per vedere gli utenti inseriti, nell'ultima cella se clicco su "si" che indica che l'utente è attivo, poi non posso più riattivare quell'utente?

- Ora dovrò solo personalizzare i file nella cartella /adm/t/ e dovrebbe essere fatto il grosso, anche se il mio desiderio sarebbe quello di creare un form di inserimento con tutti i dati personali dell'utente che fa richiesta del servizio, in maniera tale che poi si stampi un report di tutto quello inserito e si fa firmare al cliente per la privacy. Si allega il tutto alla copia della Carta d'identità ed il gioco è fatto...

Cmq preferisco ora far funzionare alla perfezione il tutto.

Perdonami se ti ho fatto troppe domande e spero di non scocciarti.

Ciao

Marco

Ciao! Ho provato a contattarti su irc ma non c'eri.

Allora ho aggiunto il pulsante di stampa (che poi non è altro che un link), ma la cosa non si potrà fare purtroppo e ti spiego perchè:

il comando di stampa che ho aggiunto grazie alle tue dritte, mi manda chiaramente in stampa la pagina come se facessi File->Stampa dal browser, quindi nella pagina compaiono tutti i dettagli che si vedono normalmente nella stampa delle pagine web, nessun problema se non fosse che in alto a destra (come è normale che sia) compare bello in evidenza il link da cui è stata stampata la pagina, per cui all'utente basta andare li con qualche accorgimento ;) e trovarsi davanti al pannello per cerare gli utenti. ADDIO RADIUS!!!
Cioè si eluderebbe tutto in una sola mossa.

Ora nasce spontanea un'altra domanda, ma il pannello da te creato non prevede la protezione con una password? Immagino di no... Sarebbe complicato crearla?

Scusami se ti rompo, ma mi piace così tanto il tuo lavoro che ora non posso mollarlo e riccrearmi tutto da capo una cosa mia, anche perchè non saprei come fare...

Grazie ancora attendo tuoi lumi.

P.S. Ho messo la voce in crontab per eseguire reapusers.pl ogni 2 min ;)

Ciao

Marco

Volevo semplicemente sapere se e' possibile autenticare/gestire vari access point collegati a punti Adsl diversi con un unico server con indirizzo IP pubblico.
In pratica e' possibile centralizzare la gestione di 4/5 access point 'sparsi' sul territorio e raggiungibili tramite rete Internet?

Leave a comment

About this Entry

This page contains a single entry by Michele Beltrame published on November 11, 2005 9:45 AM.

Perl.it Contest 2005 was the previous entry in this blog.

Tanto rumore per Tullia is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Categories

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.14-en