ZEROTRUTH

Z ERO T RUTH
I NTERFACCIA PER IL CAPTIVE P ORTAL DI Z ERO S HELL
VERSIONE 3.0
Nello Dalla Costa
10 febbraio 2015
http://www.zerotruth.net
Spesso gli amici mi chiedono
come faccio a far scuola.
Sbagliano la domanda,
non dovrebbero preoccuparsi
di come bisogna fare scuola,
ma solo di come bisogna essere
per poter fare scuola.
— Lorenzo Milani
La scuola
` divenuta la religione universale
e
di un proletariato modernizzato
e fa vuote promesse di salvezza
ai poveri dell’era tecnologica.
— Ivan Illich
.
Nello Dalla Costa
ZeroTruth
Interfaccia per il Captive Portal di ZeroShell
c
2012-2015
N OTE L EGALI
` Nello Dalla Costa.
L’autore dei contenuti di questo manuale, ad esclusione del capitolo 2, e
` vengono forniti gratuitamente e l’autore non puo
` esseI contenuti hanno valore solo didattico e
re ritenuto responsabile per qualsiasi danno o perdita di dati causato da errori e inesattezze di
qualsiasi tipo presenti.
` distribuito gratuitamente ed e
` fornito cos`ı come e
` senza nessuna garanzia di corretto
Zerotruth e
funzionamento.
` essere ritenuto responsabile per qualsiasi danno, perdita di dati o
In nessun caso l’autore puo
mancato guadagno causato dal suo utilizzo.
I nomi commerciali, i loghi e i marchi registrati menzionati nella guida appartengono ai rispettivi
proprietari.
I contenuti di questo manuale non possono essere copiati o riprodotti neanche in parte senza l’autorizzazione dell’autore. E` invece cosa gradita il riferimento tramite hyperlink da altri siti
utilizzando l’indirizzo “http://www.zerotruth.net/controldl.php?file=ZEROTRUTH.pdf ”.
Indice
1 Z EROTRUTH E Z EROSHELL
1
2 CAPTIVE P OR TAL
2.1 H OTSPOT ROUTER PER L’ ACCESSO ALLA RETE . . . . . . . . . . . . . . . . . . .
2.2 I NEMICI DEL CAPTIVE P ORTAL . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 FALSIFICAZIONE (S POOFING ) DI IP E MAC ADDRESS . . . . . . . . . . . . . . .
2.4 D ENIAL OF S ERVICE (D O S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 R OUTER O B RIDGE ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 AUTENTICAZIONE DEGLI UTENTI . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7 RADIUS (PAP, EAP-TTLS E PEAP) . . . . . . . . . . . . . . . . . . . . . . . .
2.8 C ERTIFICATI D IGITALI X.509 (S MART CARD ) . . . . . . . . . . . . . . . . . . .
2.9 S HIBBOLETH (I D P SAML 2.0) . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10 C ONTABILIZZAZIONE DEL TEMPO, DEL TRAFFICO E DEL COSTO DI CONNESSIONE
2.11 L IMITI DI ACCESSO ALLA RETE . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12 R EGISTRAZIONE DEGLI ACCESSI E DELLE CONNESSIONI TCP/UDP NEI LOG . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
2
3
4
5
6
6
7
8
9
9
10
11
3 I NSTALLAZIONE E RIMOZIONE DI Z EROTRUTH
3.1 P REPARAZIONE DI Z EROSHELL . . . . . . . .
3.2 I NSTALLAZIONE DI Z EROTRUTH . . . . . . .
3.3 R IMOZIONE DI Z EROTRUTH . . . . . . . . .
3.4 U PGRADE DI Z EROTRUTH . . . . . . . . . .
3.5 ACCESSO ALLA GUI DI AMMINISTRAZIONE
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
12
12
14
14
14
15
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
16
16
17
18
19
19
20
20
21
23
23
24
24
25
27
29
31
32
32
33
34
34
35
39
40
41
41
42
43
44
4 C ONFIGURAZIONE
4.1 Z EROTRUTH . . . . . . . . . . . . . .
4.2 A DMIN . . . . . . . . . . . . . . . . .
4.3 U SERS ( UTENTI GESTORI ) . . . . . . .
4.4 I MMAGINE . . . . . . . . . . . . . . .
4.5 L OGO . . . . . . . . . . . . . . . . .
4.6 LOG . . . . . . . . . . . . . . . . . .
4.7 C ONTROLLO LDAP . . . . . . . . . .
4.8 K EYPAD . . . . . . . . . . . . . . . .
4.9 VSBS . . . . . . . . . . . . . . . . .
4.10 E XPORT . . . . . . . . . . . . . . . .
4.11 F ONT . . . . . . . . . . . . . . . . . .
4.12 T EST . . . . . . . . . . . . . . . . . .
4.13 CAPTIVE P ORTAL . . . . . . . . . . .
4.14 AUTO R EGISTRAZIONE . . . . . . . . .
4.14.1 R EGISTRAZIONE CON A STERISK
4.14.2 R EGISTRAZIONE CON SMS . .
4.14.3 R EGISTRAZIONE CON T ICKET .
4.15 AVVISI . . . . . . . . . . . . . . . . .
4.16 B IGLIETTO . . . . . . . . . . . . . . .
4.17 PAY PAL . . . . . . . . . . . . . . . .
4.17.1 C ONFIGURAZIONE Z EROTRUTH
4.17.2 C ONFIGURAZIONE PAYPAL . .
4.18 PAGAMENTI . . . . . . . . . . . . . .
4.19 L IBERI / BLOCCATI . . . . . . . . . . .
4.20 WALLED G ARDEN . . . . . . . . . . .
4.20.1 WALLED G ARDEN I NTERNO .
4.20.2 WALLED G ARDEN R EMOTO .
4.21 P OPUP . . . . . . . . . . . . . . . . .
4.22 I MMAGINE L OGIN . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
i
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4.23 FACEBOOK L IKE . . . . . . . . .
4.24 P ROXY . . . . . . . . . . . . . .
4.24.1 S QUID . . . . . . . . . .
4.24.2 DANSGUARDIAN . . . .
4.24.3 H AVP +C LAMAV . . . . .
4.25 S HAPER . . . . . . . . . . . . .
4.26 B LOCKER . . . . . . . . . . . .
4.26.1 IP B LOCKER . . . . . . .
4.26.2 AD B LOCKER . . . . . .
4.27 E MAIL . . . . . . . . . . . . . .
4.28 SMS . . . . . . . . . . . . . . .
4.28.1 MY SMS SCRIPT . . . . .
4.28.2 G AMMU . . . . . . . . .
4.29 M ULTI CP . . . . . . . . . . . .
4.30 B ACKUP . . . . . . . . . . . . .
4.30.1 B ACKUP CON EMAIL . .
4.30.2 B ACKUP CON FTP . . .
4.30.3 B ACKUP CON D ROP B OX
4.30.4 B ACKUP CON SCP . . .
4.30.5 R IPRISTINO B ACKUP . . .
4.31 C ONTROLLO CAPACIT A` DISCO .
4.32 G RAFICI . . . . . . . . . . . . .
4.33 AGGIORNAMENTI . . . . . . . .
4.34 U PGRADE . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5 G ESTIONE U TENTI
5.1 AGGIUNGERE UTENTI . . . . . . . . . . . . . . . . . . . . .
5.1.1 AGGIUNGERE UN UTENTE . . . . . . . . . . . . . . .
5.1.2 AGGIUNGERE DIVERSI UTENTI . . . . . . . . . . . . .
5.1.3 AGGIUNGERE UTENTI DA FILE . . . . . . . . . . . . .
5.1.4 AGGIUNGERE UTENTI VINCOLATI AL BIGLIETTO . . .
5.2 L ISTA UTENTI . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.1 TABELLA STANDARD . . . . . . . . . . . . . . . . . .
5.2.2 L ISTA UTENTI PER AUTOREGISTRAZIONE DA BIGLIETTO
5.2.3 R ICERCA UTENTI . . . . . . . . . . . . . . . . . . . .
5.2.4 TABELLA VELOCE . . . . . . . . . . . . . . . . . . .
6 P ROFILI
6.1 TABELLE P ROFILI . . . . . . . . . . . . . . .
6.2 AGGIUNGI P ROFILO . . . . . . . . . . . .
6.3 P ROFILO A PAGAMENTO . . . . . . . . . .
6.4 P ROFILO CON LIMITE DI BANDA . . . . . .
6.5 P ROFILO CON IMPOSTAZIONE INTERFACCIA
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
45
46
46
47
47
48
49
49
49
50
51
52
53
54
55
55
55
56
56
58
59
59
63
63
.
.
.
.
.
.
.
.
.
.
64
64
64
65
66
67
68
68
70
71
72
.
.
.
.
.
73
73
73
73
74
74
7 E MAIL
76
7.1 I NVIO EMAIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8 SMS
77
8.1 I NVIO SMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9 U TILIZZO CAPTIVE P OR TAL
9.1 L OGIN CAPTIVE P ORTAL . . . . .
9.1.1 L OGIN STANDARD . . . . .
9.1.2 L OGIN A PERTO . . . . . .
9.1.3 L OGIN CON CODICE QR .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
78
78
78
80
81
9.2 CAMBIO PASSWORD . . . . . . . . . . . . . . . . . .
9.3 D ETTAGLI CONNESSIONI UTENTE . . . . . . . . . . . .
9.4 AUTOREGISTRAZIONE . . . . . . . . . . . . . . . . . .
9.4.1 AUTOREGISTRAZIONE S TANDARD . . . . . . . .
9.4.2 AUTOREGISTRAZIONE CON S OCIAL N ETWORK
9.4.3 AUTOREGISTRAZIONE CON A STERISK . . . . . .
9.4.4 AUTOREGISTRAZIONE CON SMS . . . . . . . .
9.4.5 AUTOREGISTRAZIONE DA T ICKET . . . . . . . .
9.5 R ECUPERO PASSWORD . . . . . . . . . . . . . . . . .
9.5.1 R ECUPERO PASSWORD STANDARD . . . . . . .
9.5.2 R ECUPERO PASSWORD CON A STERISK . . . . .
9.6 B LOCCO CAPTIVE P ORTAL . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
81
82
83
83
84
86
87
87
88
88
88
89
A I ferri del mestiere
A.1 Midnight Commander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2 Editor Nano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.3 Direttamente da PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
90
93
94
B Scripts
96
B.1 Scripts per keypad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
iii
1
Z EROTRUTH E Z EROSHELL
I NTRODUZIONE
Mi sono avvicinato a Zeroshell cercando un applicativo per allestire un Captive Portal per il laboratorio di informatica di una piccola scuola e la piazza antistante una biblioteca comunale e mi
` del suo utilizzo. installandolo su una Alix in 10 minuti
ha piacevolmente stupito per la semplicita
tutto andava a meraviglia.
` chiamare, era poi farlo gestire ad una persona con poche competenze
Il limite, se cos`ı si puo
che, dall’interfaccia di Zeroshell, potesse aver accesso a tutte le caratteristiche.
Dopo una prima esperienza con un applicativo scritto in PHP, installato su una postazione colle` e non solo, ho deciso di
gata al server Zeroshell, che ha mostrato molti limiti in fatto di velocita
`
realizzare un’interfaccia da installare direttamente su Zeroshell, per poter aumentare la velocita
di elaborazione e accedere ad altre funzioni in quel modo non possibili.
` stata di utilizzare delle cgi-bin in bash scripts incontrando non poche difficolta,
` sopratLa scelta e
tutto per capire come lavorasse lo straordinario lavoro di Fulvio Ricciardi dal quale ho imparato
molto e copiato a piene mani.
Zeroshell dispone, tra le moltissime caratteristiche che offre, di un ottimo Captive Portal, comprensivo del modulo di accounting, sul quale Zerotruth si appoggia completamente integrando delle
funzioni aggiuntive anche attraverso l’inserimento di altri programmi compilati appositamente.
` stato quello di offrire un modo semplice, ma il piu` completo possibile, di gestire un
Il tentativo e
Captive Portal sia per installazioni destinate a pochi utenti che per quelle che devono offrire il
servizio a migliaia di persone.
` utilizzato in diversi centri sociali, biblioteche e scuole in Italia e, visto che e
` nato inizialZerotruth e
mente proprio per questo, la cosa mi rende molto contento, ma anche in hotspot cittadini per
coprire vaste aree in diversi paesi europei e in altri continenti.
` ma anche la sua pubblicita,
` Zerotruth non
Senza avere alle spalle Zeroshell, con la sua solidita
sarebbe certamente arrivato a questo punto e non avrebbe ottenuto il consenso di cos`ı tante
persone, tecnici e aziende. Neppure senza l’aiuto degli amici del forum italiano di Zeroshell, che
mi hanno sollecitato, e continuano a farlo, ad inserire nuove funzioni sarebbe stato possibile avere
lo stimolo per continuare a sviluppare il “giocattolo” inserendo molte features che probabilmente
` mai nelle mie modeste installazioni.
non usero
` Zerotruth e,
` e rimarra,
` un semplice passatempo che con piacere
Lo chiamo “giocattolo” perche
condivido con le persone che lo possono trovare utile.
Un ringraziamento quindi a tutti gli utilizzatori, agli utenti del forum di Zeroshell per i loro test, i
`
consigli e lo sviluppo diretto e un ringraziamento particolare a Fulvio Ricciardi per la disponibilita
e la fiducia che mi ha dato.
1
2
CAPTIVE P OR TAL
I testi e le immagini del capitolo sono presi, con il permesso dell’autore, dal documento “Hotspot
router per l’accesso alla rete” di Fulvio Ricciardi.
2.1
H OTSPOT
ROUTER PER L’ ACCESSO ALLA RETE
` la descrizione della realizzazione di un gateway per Hotspot Wi-Fi
Il fine di questo documento e
` in particolar modo sulle modalita
` di autenticazione
mediante l’uso di Zeroshell. Ci si soffermera
degli utenti (RADIUS, Kerberos 5 e con certificati digitali X.509) e sull’accounting RADIUS del traffico
` uno sguardo anche alla possibilita
` di ottenere un router Multie del tempo di connessione. Si dara
` di Captive Portal.
WAN con bilanciamento e failover dei collegamenti Internet con funzionalita
Figura 1: Rete in un Hotspot con Router Captive Portal
` accesso ad Internet a utenti occasionali, e
`
Negli Hotspot, ovvero nei luoghi pubblici in cui si da
`
necessario per il gestore disporre di almeno alcune delle seguenti funzionalita:
1. Autenticazione;
2. Registrazione degli accessi nei log;
3. Accounting del traffico, del tempo e dei costi di connessione.
` di poter identificare univocamente l’utente per poi autoL’autenticazione, ovvero la capacita
` avvenire mediante username e password o tramite certificato
rizzarlo all’accesso alla rete, puo
digitale X.509 eventualmente memorizzato su Smart Card.
` talvolta richiesto per legge, poiche
´ permette di risalire agli autori di attivita
`
Il log degli accessi e
illecite. Si badi bene che per logging degli accessi non si intende la registrazione degli URL o peggio dei contenuti a cui l’utente ha avuto accesso, ma semplicemente l’annotazione della data
e l’orario di inizio e di fine delle connessioni a Internet di ogni utente e dell’indirizzo IP associato al
client (generalmente un PC portatile) da cui avviene il collegamento. L’accounting invece, oltre
a tenere traccia dell’inizio e della fine del collegamento, contabilizza il tempo e il traffico di con` quello di permettere la tariffazione
nessione relativo ad un utente. Spesso il fine dell’accounting e
del traffico con costi per Megabyte di traffico generato o per minuto di collegamento.
Inoltre, tramite l’accounting, si possono impostare dei limiti al traffico e al tempo oltre i quali l’u` permettere la gestione di
tente viene disconnesso dalla rete. In particolare, l’accounting puo
connessioni prepagate in cui l’utente per poter essere in linea deve disporre di un credito.
2
` si utilizzano una o entrambi le seguenti modalita
` di accesso:
Per ottenere tali funzionalita
• Autenticazione e cifratura del traffico tramite WPA/WPA2 Enterprise
• Captive Portal
WPA/WPA2 Enterprise prevede che gli Access Point Wi-Fi associno un client solo se l’utente ha
delle credenziali valide verificate mediante un server RADIUS con protocollo 802.1x. Oltre all’au` garantita anche la cifratura del traffico tra client ed Access Point.
tenticazione, e
Nel caso di accesso mediante Captive Portal invece, gli Access Point vengono programmati in
` aperta, cioe
` senza alcuna autenticazione e cifratura. Il client si puo
` associare liberamodalita
mente e riceve immediatamente un indirizzo IP dal server DHCP. Tuttavia, il Gateway di Accesso
a Internet blocca la comunicazione con l’esterno e redirige qualsiasi richiesta Web (http e https)
verso un portale di autenticazione.
` un sistema piu` robusto dal punto di vista
Appare subito evidente che WPA/WPA2 Enterprise e
della sicurezza rispetto al Captive Portal, ma d’altra parte, richiede che l’utente configuri il suo
` facile per gli utenti occaclient (supplicant) per autenticarsi via 802.1x. Tale configurazione non e
sionali di un Hotspot ed per questo, che nella maggior parte dei casi, si preferisce dare accesso
mediante Captive Portal che non richiede alcuna configurazione sul dispositivo portatile.
Figura 2: Configurazione del Captive Portal Gateway
`
Alcuni Access Point Wireless implementano internamente un Captive Portal, ma spesso questo e
poco configurabile ed adattabile all’esigenze di un Hotspot. Risulta invece piu` flessibile e conveniente utilizzare degli Access Point economici, senza alcuna caratteristica avanzata e demandare la funzione di Captive Portal ad un router che funge da gateway verso Internet cos`ı come
illustrato nella figura 1.
2.2
I
NEMICI DEL
CAPTIVE P OR TAL
` nell’uso di un Captive Portal anche da parte di un utente inesperto e
` dovuta sopratLa semplicita
`
tutto al fatto che l’accesso al livello 2 della rete, sia che si tratti di wireless che di rete cablata, e
` privo di autenticazione). Il client appena si associa alla rete ottiene subito un IP dal
aperto (cioe
` si traduce in
server DHCP e comunica in maniera non criptata. La contropartita di tale semplicita
un’intrinseca debolezza dal punto di vista della sicurezza. Vedremo nei due successivi paragrafi
come Zeroshell tenti di mitigare tale debolezza.
3
2.3
FALSIFICAZIONE (S POOFING )
DI
IP
E
MAC
ADDRESS
` lo spoofing dell’indirizzo
Il problema di sicurezza piu` sentito quando si parla di Captive Portal e
IP e del MAC address della scheda di rete. Infatti, il firewall del Captive Portal sblocca i client
autenticati identificandoli tramite l’indirizzo IP e il MAC address (quest’ultimo solo nel caso che il
` senza che ci siacaptive portal sia direttamente connesso a livello 2 alla rete da proteggere, cioe
` su
no router in mezzo). Purtroppo questi 2 parametri possono essere impostati con estrema facilita
` esiste il rischio che qualcuno catturi il traffico con uno sniffer
qualsiasi Sistema Operativo e percio,
` autenticato e si imposti gli stessi IP e MAC address. Cio
` perturberebbe
alla ricerca di un client gia
` della
la comunicazione del client legittimamente autenticato che, notando una bassa qualita
connessione, rinuncerebbe all’uso della rete lasciando campo libero all’impostore.
` aggravato dal fatto che la maggior parte delle implementazioni di Captive Portal,
Il problema e
´ questo e
` visibile in rete senza che il
mantengono un client autenticato e quindi connesso finche
client partecipi attivamente al rinnovo dell’autenticazione. Alcune implementazioni controllano
l’ARP table per vedere se il client ha effettuato traffico di recente oppure effettuano un ARP Request per verificare la presenza in rete dell’IP. Altre utilizzano la tabella dei leases del DHCP server,
controllando se il client ha richiesto il rinnovo di recente. Tali soluzioni sono chiaramente insicure,
´ il client ha un ruolo passivo nel riaccreditamento dell’autenticazione.
poiche
` invece quella di far si che sia il client stesso a richiedere
La soluzione adottata da Zeroshell e
al Captive Portal gateway il rinnovo dell’autenticazione, presentandogli un pacchetto criptato
` un segreto condiviso soltanto dal client
con AES256, denominato Authenticator. Quest’ultimo e
` non puo
` essere catturato con uno snife dal Captive Portal (viaggia infatti in tunnel SSL e percio
fer) e pertanto anche squelloe qualcuno imposta l’IP e il MAC address di un utente autenticato,
` dell’Authenticator con cui richiedere al Captive Portal il rinnovo dell’autenticazionon disporra
ne. L’Authenticator viene memorizzato dal client all’interno di una finestra popup denominata
Network Access che si occupa mediante Java Script di spedirlo al Captive Portal per il rinnovo.
Figura 3: Network Access Popup
La finestra di Popup svolge anche altre funzioni come quella di permettere all’utente di disconnetersi e di visualizzare utili informazioni di accounting come il tempo, il traffico e il costo di connessione. E` da notare che tale finestra non viene bloccata dai sistemi anti-popup di cui quasi ogni
` dotato poiche
´ viene aperta in maniera sincrona alla richiesta di autenticazione
browser web e
` la finestra di Popup ha causato diversi problemi con l’avvento
dell’utente. D’altra parte pero,
dei dispositivi Mobile quali gli IPhone, gli iPad e altri cellulari e palmari (Android e Windows Mobile
inclusi) che non avendo un sistema multitasking effettivo dimenticavano di rinnovare l’autenticazione causando la chiusura della connessione. Per ovviare a tale problema, a partire dalla
release 1.0.beta15 di Zeroshell i dispositivi Mobile vengono riconosciuti dal Captive Portal che non
gli impone il rinnovo dell’autenticazione mediante l’invio dell’Authenticator, ma semplicemente
verificandone la presenza in rete.
4
Figura 4: Configurazione di Smartphone e dispositivi Mobile
2.4
D ENIAL
OF
S ERVICE (D O S)
Alcuni software, nel tentativo di comunicare con l’esterno a tutti i costi, dopo aver tentato la
comunicazione sulle porte TCP/UDP a loro assegnate, provano la connessione sulle porte TCP 80
e 443 sapendo che difficilmente un amministratore di rete le chiuderebbe in uscita impedendo
cos`ı la navigazione http/https e quindi l’accesso al web. L’esempio piu` noto di tale categoria
` il client VoIP di Skype, ma molti altri sistemi P2P e worm fanno altro e tanto. Si
di programmi e
intuisce subito che quando un utente con il suo client si associa alla rete, ma non si autentica
subito tramite il Captive Portal, tali richieste sulle porte 80 e 443 TCP vengono redirette verso il
` HTTP. E`
portale di autenticazione che cercherebbe invano di servirle visto che il traffico non e
ovvio, che all’aumentare dei client non ancora autenticati su cui girano i suddetti programmi,
` che si verifichi un DoS (Denial of Service) in cui il portale di autenticazione
aumenta la probabilita
` impegnato a servire richieste fasulle, non riuscendo a gestire o a gestire con molta lentezza le
e
richieste leggittime provenienti dai browser web.
Zeroshell limita il verificarsi di situazioni del genere implementando un sistema di DoS Protection
che usando il Netfilter di Linux limita il numero massimo di redirect per minuto. Il livello di protezione
` essere impostato su tre livelli (Low, Medium e High).
puo
Figura 5: captive-portal-DoS-protection
5
Inoltre, i meccanismi di Auto-Update dei Sistemi Operativi e delle Signature degli Antivirus spesso
` possono
utilizzano il protocollo http per comunicare con il repository di aggiornamento e percio
aggravare la situazione, facendo delle richieste che vanno ad aumentare il carico di lavoro del
Captive Portal. Anche in questo caso Zeroshell cerca di arginare il problema intercettando le
richieste verso i piu’ comuni repository di aggiornamento evitandone l’inutile redirect verso la
pagina di autenticazione del Captive Portal.
2.5
R OUTER
O
B RIDGE ?
Nella figura 1 il Captive Portal lavora come router di livello 3 connesso direttamente ad un modem
con cui si collega ad Internet. Esso agisce come default gateway per i client che si connettono
alla rete. In questa configurazione, detta in Routed Mode, conviene far svolgere al router anche
la funzione di DHCP e DNS server.
` lavorare anche nella modalita
` detta in Bridge Mode, in cui la rete
Il Captive Portal di Zeroshell puo
da proteggere con il Captive Portal condivide la stessa subnet IP del resto della LAN. Pertanto, un
client prende lo stesso indirizzo IP sia se si connette da una parte che dall’altra ed ha il medesimo
` un router a monte del Captive Portal. In questo caso, anche DHCP e DNS
default gateway che e
da utilizzare per la parte Hotspot possono essere gli stessi che si usano per il resto della LAN.
` di funzionaNelle precedenti versioni di Zeroshell si doveva dichiarare esplicitamente la modalita
` a riguardo: Viene
mento del Captive Portal. Dalla release 1.0.beta15, invece, ci sono 2 novita
` MULTI in cui si possono dichiarare piu` interfacce di rete su cui attivare il Captigestita la modalita
` essere attivato anche sulle VLAN 802.1q
ve Portal. Come si vede nella figura il Captive Portal puo
` bridge o router automaticamente controllan(Tagged Virtual LAN); Zeroshell sceglie la modalita
` si deduce
do se un’interfaccia fa parte o meno di un bridge. Mettendo insieme le due novita,
` lavorare sullo stesso box hardware contemporaneamente
che il Captive Portal di Zeroshell puo
come router per alcuni segmenti di LAN e come bridge per altri.
Figura 6: Captive Portal su piu` interfacce di rete
2.6
AUTENTICAZIONE
DEGLI UTENTI
` utilizzare diverse fonti di autenticazione anche contemporaneaIl Captive Portal di Zeroshell puo
mente. Per default, autentica gli utenti utilizzando il suo KDC Kerberos 5 interno che contiene
i principal relativi agli utenti archiviati nella Directory LDAP e gestiti mediante l’interfaccia web.
Tuttavia, possono essere utilizzate fonti esterne di autenticazione quali REALM Kerberos 5, server
` disponibile anche il login mediante Certificati Digitali
RADIUS e Identity Provider SAML 2. Inoltre, e
X.509 che permetterebbe l’accesso tramite Smart Card o Token USB. Nel caso di autenticazione RADIUS o Kerberos 5 gli utenti possono provenire da domini diversi. In tal caso, l’utente deve
6
selezionare il dominio di autenticazione mediante la casella di selezione presente nella pagina di accesso oppure qualificando il suo username mediante il suffisso @dominio (per esempio
[email protected]).
Figura 7: Domini autorizzati nella configurazione dell’autenticazione del Captive Portal
2.7
RADIUS (PAP, EAP-TTLS
E
PEAP)
` tra i protocolli piu` utilizzati per il riconoscimento degli utenti su dispoL’autenticazione RADIUS e
sitivi di rete quali per esempio Access Point Wireless o Switch che permettano l’accesso al layer
2 solo dopo che l’autenticazione abbia avuto successo. Il Captive Portal di Zeroshell permette
l’autenticazione RADIUS verso server esterni tramite richieste proxy. In altre parole, il captive portal
richiede l’autenticazione al suo server FreeRADIUS interno che, se si accorge di non essere autoritario per il dominio a cui l’utente appartiene, inoltra la richiesta di autenticazione al RADIUS server
competente. Chiaramente tale server RADIUS esterno deve essere configurato nella lista dei server proxy specificando lo Shared Secret. D’altra parte, anche sul RADIUS server esterno bisogna
aggiungere una entry tra i client RADIUS per abilitare l’indirizzo IP del Captive Portal utilizzando lo
` possibile aggiungere il server RADIUS di DEFAULT
stesso Shared Secret. Nella lista dei proxy radius e
` autoritario per autenticare l’utente. Il proche viene utilizzato qualora nessuno degli altri server e
xy radius di default viene spesso utilizzato anche quando il captive portal deve autenticare verso
una gerarchia di server RADIUS.
Figura 8: Hotspot distribuiti con server RADIUS di autenticazione/accounting centralizzato
7
` effettuare richieste di autenticazione PAP o 802.1x (EAP-TTLS con PAP e PEAP
Il captive portal puo
con MsCHAPv2). In quest’ultimo caso, il captive portal appare al server RADIUS come il suppli`
cant di un dispositivo Wi-Fi che tenta l’accesso tramite WPA/WPA2 Enterprise. L’utilizzo di 802.1x e
consigliato rispetto al semplice PAP qualora sia necessario un livello di sicurezza maggiore, garantito dal protocollo TLS di cui sia EAP-TTLS che PEAP (Protect EAP) si avvalgono. Kerberos 5 (Active
directory).
L’autenticazione Kerberos 5 permette di interfacciare il Captive Portal ad un dominio Windows
Active Directory. Infatti, ogni Windows Server che sia un controller di dominio ha un KDC Kerberos
5 che autentica gli utenti appartenenti al dominio Active Directory di cui fa parte. Pertanto,
basta aggiungere tra i domini autorizzati all’accesso al captive portal il nome del dominio Active
`
Directory per permettere agli utenti Windows di accedere alla rete. Si noti che qualora non e
` di discovery del REALM e dei KDC tramite i record SRV del DNS e
` necessario
attiva la funzionalita
specificare manualmente gli indirizzi IP (o gli hostname FQDN) dei KDC autoritari per il REALM.
Figura 9: Configurazione dei Realm Kerberos 5 esterni
` opportuno autorizzare l’accesso tramite Captive Portal soltando ad un grupIn alcune situazioni e
` non e
` possibile mediante Kerberos 5 poiche
´ quest’ultimo gestisce solo l’autenpo di utenti. Cio
` demandata ad LDAP. Tuttavia, si puo
` attiticazione di Active Directory, mentre l’autorizzazione e
vare sui controllori di dominio lo IAS (il Servizio RADIUS di Active Directory) e configurare il Captive
` configurare IAS per autorizzare solo gli
Portal per autenticare verso RADIUS. In questo caso, si puo
utenti che appartengano ad un determinato gruppo.
2.8
C ER TIFICATI D IGITALI X.509 (S MAR T CARD )
L’autenticazione tramite certificati digitali X.509 permette il login senza dover digitare username
e password. In altre parole, ogni utente che deve accedere alla rete deve possedere un certificato personale con la relativa chiave privata caricato nel browser web. Premendo il tasto
` firmato da una delle Autorita
` di
[X.509] presente nel portale di autenticazione, se il certificato e
Certificazione configurate all’interno del captive portal, l’utente ha accesso alla rete. L’utilizzo
` spesso legato a quello delle Smart Card o dei Token USB. Questi dispositivi
dei certificati digitali e
´ la chiave
infatti, possono custodire il certificato digitale in maniera estremamente sicura poiche,
8
` essere estratta con un’operazione di lettura dall’esterno. Le Smart Card sono
privata non puo
` dotate di un loro chip che effettua le operazioni di cifratura e decifratura richieste tramite
percio
API. Per sbloccare l’utilizzo della chiave privata da parte del browser la Smart Card richiede la
digitazione di un PIN che contribuisce ad aumentarne la sicurezza qualora la carta sia smarrita.
2.9
S HIBBOLETH (I D P SAML 2.0)
Tramite Shibboleth Service Provider, il Captive Portal di Zeroshell permette l’autenticazione degli
` e
` spesso utilizzato nelle federazioni in cui ogni memutenti verso un Identity Provider SAML 2. Cio
bro di una federazione implementa un IdP per il riconoscimento degli utenti oltre a diversi servizi
` includere l’accesso alla rete Wi-Fi, in cui, l’utenweb (Service Provider). Tra questi servizi si puo
` autenticare. Si
te viene rediretto verso il WAYF/DS da cui seleziona l’Identity Provider che lo puo
potrebbe obiettare che anche legando il captive portal ad una gerarchia di server RADIUS (tipo
` e gli Enti di Ricerca) si otterrebbe l’accesso federato
EDUROAM per quel che riguarda le Universita
alla rete. Tuttavia, mentre nel caso di 802.1x si ha la cosiddetta autenticazione End-to-End anche
` non e
` garantito. Per questo
attraversando la gerarchia di server RADIUS, con il captive portal cio
` preferibile utilizzare SAML, in cui invece, le credenziali viaggiano, partendo dal browser dell’ue
tente fino al’IdP autoritario per la sua autenticazione, sempre all’interno dello stesso tunnel cifrato
` l’autenticazione End-to-End. Per maggiori dettagli sull’uso del Capticon SSL, garantendo percio
` disponibile il documento “Configurare il Captive Portal per autenticare
ve Portal con Shibboleth e
gli utenti mediante Shibboleth ” (http://www.zeroshell.net/shibboleth-captive-portal/).
2.10
C ONTABILIZZAZIONE
DEL TEMPO, DEL TRAFFICO E DEL COSTO DI CONNESSIONE
L’accounting permette di conoscere, per ogni utente, il tempo, il traffico e il costo delle sue con` pertanto
nessioni. Il Captive Portal di Zeroshell utilizza RADIUS per trasmettere tali informazioni ed e
possibile utilizzare un server esterno che supporti l’accounting via RADIUS oppure Zeroshell stesso.
` centralizzarne la gestione su di
Cos`ı come per l’autenticazione, anche per l’accounting si puo
unico server RADIUS che raccolga le informazioni provenienti da piu` Hotspot. Si noti peraltro, che
` proprio perche
´ rispetta lo standard RADIUS, raccoglieil sistema di accounting di Zeroshell puo,
re sia le informazione dai Captive Portal, sia direttamente dagli Access Point Wi-Fi che utilizzino
WPA/WAP2 Enterprise mediante 802.1x.
Figura 10: Gestione accounting RADIUS
9
Figura 11: Dettagli di connessione di un utente
2.11
L IMITI
DI ACCESSO ALLA RETE
` possibile anche impostare dei limiti di connessione per gli utenti.
Tramite l’accounting RADIUS e
` e
` sufficiente assegnare gli utenti ad una classe di accounting a cui si attribuiscono i
Per far cio
seguenti parametri:
• Tipo di pagamento (Prepagato e postpagato)
• Costo per Megabyte di traffico
• Costo orario della connessione
• Limite massimo di traffico generato (in entrata e in uscita) in Megabyte
• Limite orario di connessione
Figura 12: Configurazione dei limiti di accesso alla rete
10
2.12
R EGISTRAZIONE
DEGLI ACCESSI E DELLE CONNESSIONI
TCP/UDP
NEI LOG
´ gia
` l’accounting mantiene traccia delle connessioni degli utenti alla rete e
` possibile avere
Benche
maggiori dettagli sull’autenticazione degli utenti consultando i messaggi di log del Captive Portal.
Figura 13: Messaggi di log del Captive Portal
` essere utile tenere
Peraltro, soprattutto se i client del Captive Portal utilizzano indirizzi IP privati, puo
´ il
traccia delle connessioni TCP e UDP che vengono stabilite con server esterni. Infatti, poiche
captive portal per far comunicare con la WAN gli indirizzi privati deve eseguire il NAT (Network
Address Translation), tutte le connessioni risultano generate dall’indirizzo IP pubblico del router.
` raccomandato valutare, prima di abilitarIl Connection Tracking va abilitato esplicitamente ed e
lo, quanto il suo utilizzo sia consentito dalle leggi sulla privacy, tenuto conto del fatto che esso non
permette di risalire ai contenuti delle comunicazioni degli utenti, ma soltanto a determinare quali
server sono stati contattati.
Figura 14: Registrazione nei log delle connessioni TCP/UDP
11
3
I NSTALLAZIONE E RIMOZIONE DI Z EROTRUTH
` molto semplice ma, come gia
` detto, appoggiandosi completamente a
Installare Zerotruth e
` necessario abilitate su quest’ultimo alcune funzioni.
Zeroshell prima e
3.1
P REPARAZIONE
DI
Z EROSHELL
Figura 15: Abilitazione SSH
` abilitare, a seconda delle proprie necessita,
` per un unico IP address, per una subnet
L’SSH si puo
o per una specifica interfaccia di rete.
` inoltre attivare, sempre dalla GUI di Zeroshell, il Captive Portal e il modulo dell’accounting
Si dovra
`
altrimenti in fase di installazione Zerotruth lo richiedera.
Figura 16: Abilitazione Captive Portal
` abilitare, a seconda della propria rete, su una o piu` interfacce di rete.
Il Captive Portal si puo
12
Il modulo dell’accounting si attiva dalla relativa pagina senza bisogno di scelte particolari.
Figura 17: Abilitazione Accounting
A questo punto potremo collegarci in SSH a Zeroshell per installare Zerotruth attraverso la bash di
un sistema GNU/Linux 1 o se si utilizza Windows con un programma come Putty. 2
Figura 18: Abilitazione Accounting
`
Il chiaro elenco dei comandi che offre Zeroshell indica che per accedere alla Shell Prompt e
necessario digitare “S”.
` ovviamente inserire le proprie credenziali che di default sono “admin” come
Al prompt si dovra
username e “zeroshell” come password.
1
` collegare a una postazione Zeroshell appena
Dalla Bash Shell di una qualsiasi distribuzione GNU/Linux ci si puo
installata con il comando “ssh [email protected]”.
2
` un programma che permette, tra l’altro, connessioni in SSH ed e
` liberamente scaricabile.
Putty e
13
3.2
I NSTALLAZIONE
DI
Z EROTRUTH
Prendendo ad esempio la versione 3.0 di Zerotruth (zerotruth-3.0.tar.gz), una volta entrati nella
` dare i seguenti comandi:
shell di Zeroshell bastera
1. cd /DB
2. wget http://www.zerotruth.net/controldl.php?file=zerotruth-3.0.tar.gz
3. tar zxvf zerotruth-3.0.tar.gz
4. cd zerotruth-3.0
5. ./install.sh
Figura 19: Installazione di Zerotruth
` tutte le operazioni necessarie mostrando a video lo stato di
Il comando “./install.sh” eseguira
avanzamento dell’installazione e gli eventuali errori riscontrati.
3.3
R IMOZIONE
DI
Z EROTRUTH
Nella stessa cartella da dove abbiamo installato il programma, nel nostro esempio “/DB/zerotruth` lo script “uninstall.sh” per disinstallare completamente Zerotruth senza modificare
3.0”, si trovera
Zeroshell.
3.4
U PGRADE
DI
Z EROTRUTH
` nePrima di effettuare l’upgrade ad una nuova versione, senza utilizzare la GUI di Zerotruth, e
cessario rimuovere la versione installata come visto precedentemente. La rimozione di Zerotruth
` tutte le configurazioni.
mantiene inalterato il database degli utenti eliminando pero
` essere effettuato direttamente
Dalla versione 1.0.beta2 l’upgrade alle versioni successive puo
` da preferire in quanto mantiene inalterate le configurazioni
dalla GUI di Zerotruth, 3 tale scelta e
precedentemente impostate.
3
` dato automatico avviso negli aggiornamenti disponili.
Se viene messa on-line una nuova versione verra
14
3.5
ACCESSO
ALLA
GUI
DI AMMINISTRAZIONE
Collegandosi con un browser all’indirizzo IP impostato per Zeroshell viene presentata la pagina di
“scelta” dalla quale si procede verso il login di Zerotruth o verso quello di Zeroshell. Scegliendo Ze` possibile accedere con l’username
rotruth viene presentato il form di autenticazione dal quale e
“admin” e password “zerotruth”.
Figura 20: Scelta tra zeroshell e Zerotruth e Login
Dopo l’autenticazione si viene indirizzati alla pagina che mostra l’elenco degli utenti del Captive
Portal per avere immediatamente riscontro dell’utilizzo del sistema.
` configurare Zerotruth utilizzando la relativa pagina. Il bottone “Config”
Al primo accesso si dovra
e la pagina di configurazione saranno visibili e accessibili solo all’amministratore del sistema. 4
Figura 21: Testata con link generali
Si tenga presente che nella testata i bottoni possono variare a seconda della configurazione, dei
` presente il bottone SMS in quanto
servizi attivi e dell’utilizzatore. Ad esempio nella figura 21 non e
` stato ancora configurato.
tale servizio non e
4
` possibile assegnare il permesso di configurare Zerotruth
Agli “utenti gestori” non sara
15
4
C ONFIGURAZIONE
Nella pagina “Config” sono presenti i link per le varie sezioni.
4.1
Z EROTRUTH
Figura 22: Testata con link generali
La sezione consente di configurare:
• il nome della postazione
` poi utilizzato nelle comunicazioni, tramite email e/o SMS, agli utenti e
Il nome impostato verra
all’amministratore oltre nei backup per identificare la postazione
• la lingua dell’interfaccia
Sono attualmente disponibili le seguenti lingue: Italiano, inglese, polacco, portoghese, spagnolo e tedesco 5
• le porte in ascolto
` modificare per esigenze particolari la porta per l’HTTP e per HTTPS, in tal caso il sistema
Si puo
` di un riavvio.
necessita
` possibile registrare Zerotruth per poter installare funzionalita
` extra 6 e acDalla stessa pagina e
` automatica, dopo aver eseguito una donazione
cedere agli aggiornamenti. La registrazione e
` previste, 7 si ricevera
` in breve tempo una email contenente
tramite Paypal o nelle altre modalita
un codice personale da inserire nel predisposto form.
` il codice autorizzato in “chiaro” in quanto non e
`
A seguito della registrazione la pagina mostrera
possibile utilizzare lo stesso su una postazione diversa.
` valido anche per le versioni successive di Zerotruth se installato sulla stessa postaIl codice sara
zione. 8
5
Sarebbe molto gradita la traduzione in altre lingue e la correzione, in caso di bisogno, di quelle installate
R
R
R
Permesso di personalizzare logo e immagine della testata, installazione di Squid,
Dansguardian,
Gammu,
registrazione tramite Social Network e modulo MultiCP.
7
` ricevere un codice di attivazione inserendo un link a www.zerotruth.net su un proprio sito
Oltre alla donazione si puo
web, scrivendo una semplice recensione o un HOWTO riguardante Zerotruth. Inolte le scuole, centri sociali, biblioteche,
associazioni, Comuni, Enti possono richiedere un codice di registrazione gratuito.
8
Il codice di registrazione verifica il MAC address della scheda di rete vista da Zeroshell come ETH00 e pertanto
anche se viene sostituita tale scheda il codice si invalida.
6
16
4.2
A DMIN
Figura 23: Configurazione admin
La sezione Imposta i dati riguardanti l’amministratore del sistema.
• L’username
• la password 9
• l’email
` utilizzata come destinatario delle notifiche, nella spedizione del Backup ecc.
che verra
• il numero di telefono
per le notifiche via SMS
` sugli utenti gestori
• la priorita
` rifiutato il collegamento finche
` l’amministratore risulta
In tal caso ad un utente gestore verra
connesso
` dell’amministratore.
• la registrazione nei Log delle attivita
` inoltre scegliere quali notifiche ricevere e attraverso quale canale se i servizi sono attivi. 10
Si puo
Molto utile a tal propostivo avere la notifica di un riavvio della postazione del Captive Portal per
poter subito controllare se la postazione funziona regolarmente dopo un precedente inatteso
arresto.
Altri avvisi saranno possibili con l’installazione di Gammu (Sez.4.28.2) che permette, attraverso una
` attiva.
Key o telefono USB, di comunicare anche se la connessione ad Internet non e
9
L’icona “occhiali” permette la visualizzazione della password.
` mostrato l’avviso dell’impossibilita
` di notificare gli
Se il servizio di email o SMS non sono configurati e attivi verra
eventi.
10
17
4.3
U SERS ( UTENTI
GESTORI )
Dalla pagina “Users” si possono inserire e configurare gli utenti gestori del sistema.11
Figura 24: Configurazione utenti gestori
Ai gestori vengono concessi i vari permessi dall’amministratore attraveso la pagina visualizzabile
dal link dell’icona “matita”.
Figura 25: Configurazione singolo utente gestore
I permessi assegnabili sono molti e auto descrittivi, si precisa il significato dei seguenti:
• Consenti gestione solo propri user
Consente di limitare all’utente gestore la visualizzazione, e quindi anche la gestione, dei soli
utenti del Captive Portal dallo stesso inseriti. 12
• Crea Log
Se abilitato tutte le operazioni effettuate dall’utente gestore verranno memorizzare dei Log del
sistema.
11
La versione 3.0 di Zerotruth elimina il numero massimo di utenti gestori che nelle precedenti era fissato a 6.
` in seguito spostare la “ proprieta”
` degli utenti da un gestore ad un altro o assegnarli a se
L’amministrazione potra
stesso.
12
18
• Consenti utilizzo dei profili
` fissare quali profili utente potra
` assegnare nelle registrazioni del Captive Portal il gestore.
Si puo
• Scadenza
` impostare una data oltre la quale il gestore non avra
` piu` accesso al sistema.
Si puo
4.4
I MMAGINE
L’immagine gestita da questa pagina viene visualizzata nella testata di ogni pagina di Zerotruth,
nella stampa dei biglietti (Sez. 6.2) e in tutte le pagine di accesso al Captive Portal.
Figura 26: Immagine generale
` essere cambiata, una volta registrato Zerotruth, con una a piacere rispettando
L’immagine puo
le misure riportate per personalizzare il sistema.
4.5
L OGO
Il “logo” viene visualizzato nella testata di ogni pagina di amministrazione.
Figura 27: Logo
` essere cambiato, una volta registrato Zerotruth, con uno a piacere rispettando le
Il logo puo
misure riportate.
19
4.6
LOG
I log possono essere visualizzati ed eventualmente cancellati attraverso questa funzione.
Figura 28: LOG
4.7
C ONTROLLO LDAP
Figura 29: Ldap
` del Database e segnala eventuali errori; e
` inoltre
La pagina permette un controllo sull’integrita
possibile riparare le incongruenze del Database attraverso il link “Controlla e ripara”.
20
4.8
K EYPAD
` di gestire diretPer quei dispositivi embedded, come Alix o APU, che non hanno la possibilita
` essere comodo poter imparire dei comandi con un
tamente una tastiera e un monitor, puo
tastierino numerico USB.
Figura 30: Keypad
` si puo
` procedere nel seguente modo:
Per verificare quale “/dev/input” utilizzi la tastiera
1. Controllare nel menu quali device di input siano mappati;
2. Collegare la tastiera;
3. Controllare quale device sia stato aggiunto e sceglierlo.
21
` sia effettuata la mappaura dei tasti e
` necessario utilizzare da
Per configurare il sistema affinche
shell il comando
“/DB/apache2/cgi-bin/zerotruth/bin/configkeys”
seguendo le indicazioni riportate.
Figura 31: configkeys
` scrivere, da GUI utilizzando la textarea del form, lo script per eseguire i
Successivamente bastera
` resti in attesa degli
comandi relativi ai codici inseriti (allegato: B.1) e far partire il demone affinche
ordini impartiti.
` possibile utilizzare ogni tastiera e ogni tasto
Essendo i tasti mappati con lo scan code relativo, sara
non necessariamente numerico.
22
4.9
VSBS
Figura 32: VSBS
` disponibile da GUI per controllare o impartire comandi al sistema. Non
Una semplice Shell e
sono disponibili tutti i comandi della Bash Shell ma per semplici operazioni consente di non dover
accedere alla Bash Shell di Zeroshell.
` essere utile nei casi di connessione remota al sistema o per problemi con l’accesso a
L’utility puo
Zeroshell.
4.10
E XPOR T
Figura 33: Export
L’utility consente di esportare gli utenti del Captive Portal in formato testo o CSV.
23
4.11
F ONT
Figura 34: Font
In alcuni casi, quando i dati inseriti nella tabella degli utenti del Captive Portal portano ad una
` ridurre, o aumentare, la misura del Font utilizzato.
scorretta impaginazione, si puo
4.12
T EST
Figura 35: Test
` di connessione verso
Si possono eseguire alcuni test sull’hardware del sistema e sulla velocita
diversi server in internet.
24
4.13
CAPTIVE P OR TAL
Il Captive Portal viene configurato in questa sezione.
Figura 36: Captive Portal
Alcune configurazioni sono intuitive, altre meritano una spiegazione piu` approfondita:
1. Servizio aperto
Zerotruth permette di impostare l’accesso ad internet in modo completamente aperto, senza
` memorizzabisogno di inserire, da parte dell’utente, i propri dati (Sez. 1). In tal caso verra
` coto sul sistema come username il MAC address del device collegato. Tale device sara
munque sottoposto alle regole impostate nella configurazione dell’autoregistrazione e i dati di
collegamento registrati nell’accounting del sistema.
2. Nome Stanza
` utile impostare anche l’appartenenza ad un determinato locale,
Per quelle situazioni dove e
` poi
per esempio una scuola (classe) o un albergo (camera), inserendone il nome nel form sara
` nelle tabelle di visualizzazione
possibile utilizzarla nella registrazione degli utenti e comparira
degli stessi e nel form di ricerca.
3. Blocca l’utente dopo login errati
25
Se impostato questo controllo un utente del Captive Portal viene bloccato se tenta di collegarsi con credenziali non valide e viene sbloccato dopo i minuti scelti.
4. Abilita tabella utenti veloce
` impostare queSe non necessita una visualizzazione completa nella tabella degli utenti si puo
` mostrata risultera
` piu` veloce nella visualizzazione e
sta scelta. La tabella che di default verra
` possibile passare alla tabella completa.
dalla stessa comunque sara
5. Abilita Walled Garden
` essere abilitato o disabiliIl Walled Garden, impostabile dalla sezione apposita (Sez. 9.2), puo
tato velocemente anche da qui.
6. Visualizza MB
` essere abilitata o disabilitata la visualizzazione, nel popup di autenticazione del Captive
Puo
Portal, del traffico generato.
` down
7. Avvisa l’utente se Internet e
Se scelta questa opzione nel caso risultasse non disponibile la connessione ad internet l’utente
` avvisato. Nel caso il sistema utilizzi una Key GMS e Gammu (Sez. 4.28.2), si pota
` anche
verra
impostare la spedizione di un avviso via SMS all’amministratore.
8. URL di reindirizzamento con codice QR
E` permesso l’accesso al sistema anche utilizzando un codice QR (Sez. 6.2).
` impostare qui il reindirizzamento che l’utente avra
` dopo l’accesso.
In tal caso si puo
9. Prefisso default
Per tutti gli utilizzi telefonici previsi da Zerotruth (autoregistrazione, recupero password ecc.) si
` impostare il prefisso nazionale che l’utente trovera
` impostato ma mofificabile.
puo
10. Prefisso Username (Multi)
Oltre alla normale registrazione Zerotruth permette di inserire velocemente gruppi anche nu` essere utile in tal caso impostare un prefisso (es. alunnno,
merosi di utenti (Sez. 5.1.2). Puo
cliente, socio...) in modo che gli utenti verranno registrati come, ad esempio,“alunno001”,
“alunno002”, “alunno0n”.
11. Disconnetti se inattivo
Possono essere impostati i minuti dopo i quali un utente se non esegue nessuna operazione
` scollagato dal sistema.
verra
12. Abilita Popup
` essere
Il popup di comunicazione agli utenti impostabile dalla sezione apposita (Sez. 9.3) puo
abilitato o disabilitato velocemente anche da qi.
13. Abilita Recupero Passord
` possibile recuperare la propria password, qui si puo
`
Dalla pagina di login del Captive Portal e
disabilitare o abilitare la funzione.
14. Visualiza costo
` essere abilitata o disabilitata la visualizzazione, nel popup di autenticazione del Captive
Puo
Portal, del costo di connessione.
15. Abilita immagine al login
La visualizzazione dell’immagine al login, che serve per possibili comunicazioni agli utenti, im` essere abilitata o disabilitata velocemente
postabile dalla sezione apposita (Sez. 9.4) puo
anche da qui.
26
16. Abilita login con scelta lingue
` scegliere con quale lingua accedere al sistema e avere gli
Un utente del Captive Portal puo
` abilitare o meno tale la possibilita.
`
avvisi. Qui si puo
4.14
AUTO R EGISTRAZIONE
` una delle funzioni piu` importanti di Zerotruth e di default e
` ipostata con invio
L’autoregistrazione e
` tuttavia essere impostato con modalita
` diverse. Inoltre
delle credenziali tramite SMS ed email. Puo
` assegnare all’autoregistrazione limiti e funzioni aggiuntive.
si puo
Figura 37: Auto Registrazione
1. Abilitazione Servizio
2. Scelta Profilo
Gli utenti che si autoregistreranno prenderanno le impostazioni piu importanti dal profilo scelto
(Sez. 6).
3. Registrazione con Asterisk
Zerotruth permette di autoregistrarsi appoggiandosi ad un PBX Asterisk per le varie configurazioni fare riferimento alla Sez. 4.14.1.
4. Consenti Registrazione con Social Network
E` possibile autoregistrarsi con le credenziali dei piu` comuni Social Network (Sez. 9.4.2).
5. Username automatico uguale al cellulare
` prevedere che sia uguaIl sistema genera automaticamente l’username dell’utente ma si puo
le al numero di telefono inserito al momento della registrazione.
6. Consenti nuova registrazione una volta scaduto
Se un utente ha superato il numero di ore massime di connessione o il numero di MB massimo
previsto dal suo profilo oppure se ha superato la data di scadenza viene disabilitato. I suoi dati
` registrarsi nuovamente. Se viene
comunque rimaranno nel datadase e pertanto non potra
` nuovamente registrasi superando il blocco.
scelta questa opzione l’utente potra
27
7. Invia password con email
Per una ulteriore sicurezza non viene mandata la password all’utente tramite email. In alcuni
` essere deciso di superare tale limitazione.
casi puo
8. Blocca nuova registrazione da MAC address per minuti
` utilizzare questa opPer scoraggiare gli eventuali tentativi massicci di autoregistrazione si puo
zione.
9. Da Ticket
` impostare Zerotruth affinche
´ accetti autoregistrazioni solamente da utenti che hanno
Si puo
` impostato (Sez. 9.4.5).
ricevuto un ticket con l’ username gia
10. Disabilita Email
` gestire la funzione.
Zerotruth manda con una email dati aggiuntivi sulla registrazione, qui si puo
11. Scadenza
` impostare la data dopo la quale l’utente verra
` etichettato come “scaduto” e non potra
`
Si puo
` possibile fisare la scadenza in un numero di giorni dalla prima
piu` collegarsi. In alternativa e
autenticazione.
12. Limite Orario
Il limite massimo di ore per giorno e per mese viene visualizzato in base al profilo scelto.
13. Limite Traffico
Il limite massimo di MB per giorno e per mese concesso all’utente viene visualizzato in base al
profilo scelto.
14. Giorni
I giorni permessi all’utente per utilizzare il servizio viene visualizzato in base al profilo scelto.
15. Orario
` utilizzare il servizio vengono visualizzate
Le due fascie orarie giornaliere nelle quali l’utente potra
in base al profilo scelto.
28
4.14.1
R EGISTRAZIONE CON A STERISK
`
Zerotruth permette di autoregistrarsi in diversi modi e, per poter avere un controllo dell’identita
` possibile verificare
dell’utente, utilizza la spedizione tramite SMS delle credenziali. Cos`ı facendo e
che l’utente autoregistrante abbia inserito dati corretti o, quantomeno, poter risalire allo stesso
tramite il contratto che ha stipuato con la compagnia telefonica in caso di illeciti.
` integrati nel sistema), tramite una
Gli SMS possono essere spediti tramite un servizio da web (gia
key o un telefono, collegati via USB, o un gatewey GSM.
In ogni caso il servizio fa assumere al gestore un costo che puo’ essere anche significativo se
utilizzato da numerosi utenti.
` nella gestione dell’auDalla versione 2.1 Zerotruth permette di avere lo stesso grado di affidabilita
`
toregistrazione, e del recupero password, utilizzando un PBX Asterisk per la verifica dell’autenticita
dell’utente senza nessun costo per il gestore del Captive Portal.
C ONFIGURAZIONE Z EROTRUTH
` molto semplice:
La configurazione di Zerotruth e
Figura 38: Attivazione registrazione con Asterisk
Nella pagina di configurazione dell’autoregistrazione:
1. spuntare il checkbox “Registrazione con Asterisk” per abilitare il servizio;
` utilizzata da Asterisk per comunicare con Zerotruth in
2. scegliere una password, che poi sara
sicurezza;
3. impostare il limite di tempo concesso per attivare la registrazione dopo il quale, se non attivato,
` rimosso dal sistema;
l’utente sara
4. inserire il numero di telefono da chiamare per l’attivazione;
5. inserire il numero di telefono da chiamare per il recupero della password.
13
13
Il numero di telefono per l’attivazione dell’account e per il recupero della password possono essere gli stessi
29
C ONFIGURAZIONE A STERISK
` che offre di
Tra le molteplici funzioni che possiede Asterisk noi andremo a sfruttare la possibilita
eseguire degli scripts (agi-bin) attraverso i comandi inviati dal chiamante.
` impostare il file di configurazione “extensions.conf ” in modo tale che ricevendo una
Bastera
chiamata ad un determinato numero esegua il nostro script.
` essere
Naturalmente il server Asterisk deve poter comunicare con la postazione Zerotruth che puo
` nella medesima LAN, oppure ha un IP pubblico o in VPN o in altri modi
raggiungibile se la stessa e
dipendenti dalla configurazione della rete.
Se Asterisk interagisce con una sola postazione Zerotruth possiamo fare in modo che esegua il
comando di conferma senza rispondere all’utente e quindi evitando una spesa per lo stesso. In
` necessario impostare l’“extensions.conf ” (che solitamente viene posto in “/etquesto caso sara
` a collegarsi
c/asterisk/ ”) e il nostro script (probabilmente in “/var/lib/asterisk/agi-bin/ ”) che andra
alla postazione Zerotruth, nel seguente modo:
Figura 39: Configurazione Asterisk e script per sbloccare l’utente
`
Nel nostro esempio il comando sara:
“curl http://IP ZEROTRUTH:8089/cgi-bin/unlockasterisk.sh?C=$1+gtTYR65fgt”
` abilitato, se chiamera
` con il numero di telefono inserito al momento della regiL’utente verra
` essere avvertito
strazione, senza avere nessun rimando, se non un seplice “ring”, e quindi dovra
di questo nelle informazioni di post registrazione.
Se si vuole che l’utente abbia una conferma anche telefonica (negli esempi sono state utiliz`
zate le googletts-agi per la lettura dei messaggi) del successo o meno dell’abilitazione si dovra
impostare la configurazione come segue.
Figura 40: Configurazione Asterisk e script per sbloccare l’utente
30
` come nel seguente esemSe Asterisk deve interfacciarsi con piu` postazioni Zerotruth si procedera
pio:
Figura 41: Configurazione Asterisk e script per sbloccare l’utente
`
Assegnando ad ogni postazione Zerotruth un codice (“xxx” ,“yyy”, ...“zzz”) diverso che dovra
essere inserito dall’utente.
Per il recupero della password da parte dell’utente si utilizzeranno, se vengono configurati numeri
telefonici diversi per l’autoregistrazione e per il recupero password, configurazioni uguali modificando il comando dello script in:
“curl http://IP ZEROTRUTH:8089/cgi-bin/forgotasterisk.sh?C=$1+gtTYR65fgt”
` uno stesso numero si dovra
` modificare gli script come nell’esempio seguenOppure se si utilizzera
te:
Figura 42: Configurazione Asterisk e script per sbloccare l’utente
4.14.2
R EGISTRAZIONE CON SMS
` nelle possibilita
` di configurazione
Se come servizio SMS si utilizza Gammu (Sez. 4.28.2) comparira
dell’ autoregistrazione “Consenti registrazione completa con invio sms”.
Figura 43: Registrazione completa con invio SMS
` molto veloce per l’utente come descritto nella
Se scelta tale opzione l’autoregistrazione risultera
Sez. 9.4.4.
31
4.14.3
R EGISTRAZIONE CON T ICKET
` optare anche per l’autoregistrazione vincolata alla consegna precedente di un ticket
Si puo
prestampato.
Figura 44: Registrazione con Ticket
` poi utilizSe nella configurazione dell’autoregistrazione si sceglie “Da Ticket” l’impostazione verra
zata dall’utente come descritto nella Sez. 9.4.5.
4.15
AVVISI
La pagina permette di inserire i vari avvisi agli utenti.
Figura 45: Avvisi
Ogni campo serve semplicemente ad inserire le informazioni relative alla propria “etichetta” che
saranno utilizzate dal sistema nelle varie pagine o funzioni.
32
4.16
B IGLIETTO
La pagina permette di impostare con quale dati verranno stampati i biglietti degli utenti.
Figura 46: Impostazione Biglietto
In alcune situazioni, come ad esempio dopo una ricerca, nell’inserimento di piu` utenti con la
` scegliere
funzione “Multi”, o con l’inserimento da file o per per l’autoregistrazione da ticket si puo
quanti biglietti stampare per pagina, in base a come sono configurati, per ottimizzare il consumo
di carta.
Figura 47: Esempio biglietti
33
4.17
PAY PAL
` previsto un pagamento anticipato,
Zerotruth permette di creare dei profili di connessione dove e
` all’utente di utilizzare il servizio e blocper MB o ore di utilizzo. Il credito registrato consentira
` lo stesso al suo esaurimento. La funzione di pagamento e
` stata introdotta in Zerotruthchera
1.0.beta2 attraverso PayPal che consente il pagamento tramite carta di credito e l’istantanea
notifica dell’avvenuto accredito (IPN).
4.17.1
C ONFIGURAZIONE Z EROTRUTH
` ancora autentiPer poter accedere al sito di PayPal durante l’autoregistrazione, dove non si e
cati, necessita ovviamente di non essere bloccati dal firewall, come avviene prima dell’accesso
` impossibile consentire l’actramite Captive Portal. PayPal non ha un range di IP fissi e quindi e
cesso esclusivo agli stessi da parte dell’utente che si sta registrando per cui, come compromesso,
` scelto di
si deve consentire l’accesso al solo registrante, in https per il tempo necessario. Si e
` consentito ad un utente di completapoter impostare per quante volte e per quanti secondi e
re l’auto-registrazione, prima di venir bloccato definitivamente. La pagina imposta, se il profilo
` PrePaid i parametri per il pagamento tramite PayPal.
dell’autoregistrazione e
Figura 48: Impostazione PayPal
Nel form si deve inserire: - il pulsante che andremo a creare sul sito di PayPal;
- l’avviso di Post pagamento;
- il numero di tentativi possibili per effettuare l’auto-registrazione;
- il numero di secondi che il sistema consente di accedere in https;
- il GMT, in quanto l’IPN di PayPal ritorna l’orario GMT -9.
` sbloccarlo
Se un utente viene bloccato, per l’eccessivo numero di tentativi, l’amministratore puo
scegliendolo dal campo “Libera MAC”.
IMPORTANTE:
` trovare il modo per ridirigere
PayPal invia l’IPN solamente tramite la porta 80 o 443 quindi si dovra
la porta scelta sul sito di PayPal sulla porta 8088 di una interfaccia di Zerotruth.
34
4.17.2
C ONFIGURAZIONE PAYPAL
Dopo l’autenticazione sul sito di PayPal, scegliere dal menu “Strumenti vendita” “Preferenze venditore”.
Figura 49: PayPal Strumenti vendita
` in tal modo al menu dove potremo impostare tutte le opzioni necessarie.
Si accedera
Figura 50: PayPal Gestione pulsanti di pagamento
1. PULSANTE PAYPAL
` creare il pulsante da incollare nel form riportato precedentemente.
Per prima cosa si dovra
Figura 51: PayPal impostazione pulsante pagamento
35
Figura 52: PayPal codice pulsante pagamento
Una volta creato copiare il codice in Zerotruth.
2. RITORNO AUTOMATICO
` inserire l’indirizzo “http://yy.yy.yy.yy:8088/cgi-bin/register.sh” dove “yy.yy.yy.yy” rappresenSi dovra
ta l’IP dell’interfaccia del nostro Captive Portal.
Figura 53: PayPal Ritorno automatico al sito
2. RITORNO AUTOMATICO
` inserire l’indirizzo “http://yy.yy.yy.yy/cgi-bin/controlpp.sh” dove “yy.yy.yy.yy” rappresenta
Si dovra
` reindirizzato ad un IP della nostra postazione sulla porta 8088.
l’IP pubblico che verra
Figura 54: PayPal Ritorno automatico al sito
A questo punto se nella configurazione del Captive Portal in Zerotruth si sceglie per l’autoregistrazione un profilo prepaid, o esiste almeno un profilo registrato prepaid, oltre ad essere attivato il
` il link “Carica Credito” necessario,
servizio PayPal, nella schermata di autenticazione comparira
nel caso di esaurimento dello stesso, per potersi nuovamente autenticare da parte di un utente
precedentemente registrato.
36
Figura 55: Login con “Carica Credito”
Figura 56: Login per “Carica Credito”
` possibile scegliere le opzioni di pagamento tramite
Dopo aver inserito le proprie credenziali sara
il “pulsante” precedentemente inserito.
Figura 57: “Carica Credito”
` avvisati dell’avvenuto pagamento e del credito disponibile.
Al termine si verra
` nel processo di auto-registrazione. Una volta autenticato l’utente
La stessa procedura avverra
` incrementare il proprio credito utilizzando il link che comparira
` nel popup di autenticazione.
potra
I pagamenti ricevuti, oltre naturalmente essere visibili nel nostro account sul sito di PayPal, vengono memorizzati in Zerotruth e sono gestibili nella sezione apposita (vedi capitolo successivo), dove
` riportato anche l’ID della transazione.
verra
37
Figura 58: Avviso post pagamento
Figura 59: Popup con “Carica Credito”
`
Se un utente non completa l’auto-registrazione o il “Carica Credito” nei tempi stabiliti verra
bloccato e avvisato.
Figura 60: Avviso blocco MAC
38
4.18
PAGAMENTI
La pagina visualizza e gestisce i pagamenti tramite PayPal e alla cassa.
Figura 61: Gestione pagamenti
Si possono ordinare i pagamenti in ordine alfabetico per utente, eliminarli e ricercare i pagamenti
di un solo utente cliccando sul nome relativo.
Figura 62: Pagamenti singolo utente
39
4.19
L IBERI / BLOCCATI
` di non essere intercettati dal Captive Portal
Alcune postazioni o servizi possono avere la necessita
e quindi potersi collegare liberamente alla rete, oppure altre postazioni devono essere bloccate
` possibile gestire tali situazioni.
e non lasciate in alcun caso collegarsi, da questa pagina e
Figura 63: Blocco/sblocco servizi e utenti
` “liberare” attraverso l’immissione del suo ip, del MAC address o di entrambi.
Una postazione si puo
` “liberare” attraverso l’immissione del suo ip, della porta ed eventualmente del
Un servizio si puo
protocollo utilizzato.
` “bloccare” attraverso l’immissione del suo MAC address .
Una postazione si puo
40
4.20
WALLED G ARDEN
` una pagina web, o delle pagine web, che l’utente puo
` liberamente visuaUn Walled Garden e
` automaticamente indirizzato.
lizzare prima di essersi autenticato e verso la quale e
` rediretto dal sistema alla pagina di autenticazione.
Se l’utente cerca di collegarsi ad altri siti verra
` essere utile in quelle installazioni dove si vuole permettere all’utente di potersi
La funzione puo
collegare a delle pagine informative, per esempio il sito web di un comune o di una scuola, e
solamente se desidera altri servizi obbligarlo ad autenticarsi.
Zerotruth permette di impostare due tipi di Walled Garden: uno interno al sistema ed uno, collegandosi ad una postazione remota di cui si conosca l’ indirizzo IP, esterno.
4.20.1
WALLED G ARDEN I NTERNO
Figura 64: Walled Garden interno
` comporre la propria pagina importando le immagini tramite GUI.
Il gestore del servizio puo
` liberamente trasformabile tranne le funzioni in javascript contenute ed e
` possibile
La pagina e
visualizzarne un’anteprima per un maggiore controllo.
41
4.20.2
WALLED G ARDEN R EMOTO
Figura 65: Walled Garden Remoto
Per impostare un Walled Garden remoto si dovranno compilare tutti i campi come descritto nella
figura permettendo in tal modo all’utente di poter visualizzare tutte le pagine, e solo quelle, del
` possibile avere un’anteprima del sito impostato per un controllo
sito scelto. Con il link “Controlla” e
maggiore.
Figura 66: Controllo Walled Garden Remoto
42
4.21
P OPUP
Figura 67: Impostazione Popup
` un riquadro che si apre automaticamente per pubblicizzare,
Il Popup impostabile in Zerotruth e
` mostrare
ad esempio, un evento o la struttura che ospita il sistema. Come il Walled Garden puo
una pagina interna al sistema o un sito remoto.
La configurazione permette inoltre di obbligare l’utente ad abilitarne nel proprio browser la visualizzazione per accedere al servizio, di mostrarne solo uno all’accesso o ad ogni rinnovo dell’au` possibile avere un’anteprima
tenticazione, impostare l’orario e le misure. Con il link “Controlla” e
di quanto configurato.
43
4.22
I MMAGINE L OGIN
` impostare una o piu` immagini che compariranno all’utente prima di poter effettuare il
Si puo
login.
Figura 68: Impostazione Immagine Login
` scegliere il tempo di visualizzazione e l’immagine specifica,
Dopo aver caricato le immagini si puo
o random, da mostrare.
` meno invasivo dell’attivazione del popup visto nella
La visualizzazione delle immagini al login e
precedente sezione e ai fini informativi probabilmente piu` utile.
44
4.23
FACEBOOK L IKE
` obbligare gli utenti a lasciare un Like su una propria pagina di Facebook per poter acceSi puo
dere al servizio. Naturaemente prima bisogna registrare una propria App e avere della stessa un
ID sul sito di sviluppo di Facebook.
Figura 69: Impostazione Like su Facebook
` semplice, basta cambiare nello script le pari segnate:
L’impostazione e
1. appId : XXXXXXXXXXXXXX,
sostituendo le X con l’ID assegnato.
2. js.src = /connect.facebook.net/it IT/sdk.js#xfbml=1&appId=XXXXXXXXXXXXXXX&version=v2.0;
sostituendo le X con l’ID assegnato.
¨
3. data-href=https://developers.facebook.com/docs/plugins
sostituendolo con l’indirizzo della pagina alla quale si vuole assegnare i Like.
45
4.24
P ROXY
`
Il sistema permette di utilizzare Squid e Havp-ClamAV anche abbinandoli tra loro. Inoltre puo
` richiedere anche un
essere attivato il Content Filtering DansGuardian. L’attivazione del proxy puo
`
minuto pertanto conviene attendere e dare un refresh della pagina per controllare se il proxy e
regolarmente in funzione. Per il corretto funzionamento del sistema le operazioni di configurazione
devono essere effettuata dalla GUI di Zerotruth installando Squid e DansGuardian, se necessitano,
dalla stessa, infatti le versioni dei due programmi non sono compatibili con quelle disponibili da
Zeroshell.
Figura 70: Configurazione Proxy
4.24.1
S QUID
` forse il piu` noto “proxy server” ed e
` molto utile per ottimizzare i collegamenti ad InSquid e
ternet, infatti memorizza in una cache tutte le richieste HTTP 14 effettuate e le ripropone molto
velocemente alle successive richieste.
14
` intercettare il protocollo HTTPS.
Squid non puo
46
Diventa quindi quasi indispensabile in quelle situazioni, come le scuole, dove le connessioni simultanee agli stessi siti Web sono prevalenti e la banda di collegamento spesso scarsa.
Zerotruth permette da GUI di configurare le caratteristiche essenziali di Squid, tra le numerosissime
presenti nel programma, compresa la memorizzazione nei Log di sistema dei collegamenti effet` puo
` essere contraria alle
tuati comprensivi dei siti visitati. Va tenuto presente che tale possibilita
leggi sulla privacy se non comunicata ed accettata dagli utilizzatori.
4.24.2
DANSGUARDIAN
` un software per filtraggio dei contenuti web e lavora come servizio accessorio
DansGuardian e
15
` attuato usando molti metodi, quali l’analisi dell’URL e del dominio,
di un proxy.
Il filtraggio e
del contenuto testuale, delle immagini, del contenuto MIME, dell’estensione del file. E` in grado
di controllare liste anche molto grandi di domini, URL, parole o frasi correlate alla pornografia e
` possibile configurare le caratteristiche basilari tenendo presente che il “Filter
non solo. Da GUI e
` piu` selettivo con valori bassi e si dovranno fare delle prove per testare l’adeguatezza
Level” sara
alle norme della struttura che ospita il Captive Portal.
4.24.3
H AVP +C LAMAV
Zerotruth utilizza Havp e ClamAV come antivirus centralizzato sulle pagine web e filtraggio dei
` disponibile in ogni installazione di Zeroshell. Pe un approfondimento si rimanda alla
contenuti gia
documentazione dettagliata presente sul sito di Zeroshell (Web Proxy Trasparente con Antivirus e
Blacklist degli URL).
15
` attivabile se non insieme, nel nostro caso, a Squid e/o Havp.
Dansguardian non e
47
4.25
S HAPER
Zerotruth dipone di uno “shaper”, uno strumento che permette di limitare il traffico che passa
` prevista sui sistemi GNU/Linux dal kernel che
per una determinata interfaccia. Questa funzione e
consente di limitare il traffico in ingresso ed in uscita per una o piu` interfacce di rete.
Per rendere piu` semplice il traffic shaping Zerotruth utilizza, adattandolo, l’ottimo script CBQ.init.
La pagina consente di attivare lo shaping e una volta inseriti nei Profili (Sez. 6) i limiti di banda
ne visualizza e aggiorna costantemente il funzionamento.
Figura 71: Attivazione e visualizzaione Shapping
Le tabelle riportano, dividendole, le connessioni attribuite ai profili o ai singoli utenti.
48
4.26
B LOCKER
`
I sistema permette di attivare e gestire un sistema per bloccare tentativi di intrusione e pubblicita
indesiderata.
4.26.1
IP B LOCKER
Nella sezione Blocker Zerotruth consente di inserire un numero di tentativi falliti di accesso alla GUI
di amministrazione o in SSH dopo i quali un IP viene bloccato.
` soggetto al controllo.
Viene permesso anche di marcare un IP come fidato che non sara
Figura 72: Configurazione IP Blocker e Ad Blocker
4.26.2
AD B LOCKER
` di attivare e aggiornare un AD Blocker di
La seconda parte della pagina invece offre la possibilita
` avvenire
molti siti solitamente indesiderati. L’aggiornamento dell’elenco dei siti indesiderati puo
manualmente o programmato per giorno, settimana o mese.
49
4.27
E MAIL
Il servizio di invio email messo a disposizione da Zerotruth si deve appoggiare ad un server di posta
elettronica con SMTP per inviare i messaggi. In base al servizio che si vuol utilizzare si dovranno
impostare opportunamente i vari parametri.
` configurato per utilizzare Gmail come Realy Server e, in questo caso, bastera
`
Di default Zerotruth e
unicamente inserire il proprio indirizzo di posta elettronica e la propria password lasciando invariati
gli altri dati.
Figura 73: Configurazione Email
Il Form consente anche di inserire una intestazione e un footer che compariranno in tutte le email
inviate.
Molte comunicazioni con gli utenti avvengono in modo automatico attraverso l’invio di una email,
` avvenga
come al momento della registrazione o di un aggiornamento. Se non si vuole che cio
deselezioneare “Notifiche utente”.
` inoltre importante per il Backup di sistema e per gli avvisi all’ammiIl servizio di posta elettronica e
nistratore.
50
4.28
SMS
L’ invio di SMS si deve normalamente appoggiare ad un servizio SMS da WEB offerto da numerosi
provider.
Figura 74: Configurazione SMS
` gia
` configurato per utilizzare alcuni dei piu` noti ed affidabili servizi presenti in rete:
Zerotruth e
• Skebby
• Mobyt
• Smsglobal
• Aimon
• Subitosms
• Smsbiz
` anche visualizzare il credito residuo e il numero di SMS
Se il servizio scelto lo permette si potra
` indispensabile,
ancora disponibili. Zerotruth utilizza la spedizione di SMS in numerose funzioni ed e
se non si utilizza Asterisk (Sez.1), per l’autoregistrazione degli utenti. Oltre all’autoregistrazione il
` utilizzato per:
servizio SMS e
• Recupero password
• Notifiche agli utenti (se selezionato il relativo check box)
• Notifiche all’Amministratore
` di utilizzare un proprio Gateway GSM, una Key GSM o un telefono USB
Esiste anche la possibilita
per essere completamente autonomi e non sottostare ad eventuali scollegamenti da Internet.
51
4.28.1
MY
SMS SCRIPT
` possibile utilizzare la
Nel caso si volesse disporre di uno script personalizzato per il servizio SMS e
funzione “my SMS script”.
Figura 75: Configurazione my SMS script
` essere composto direttamente da GUI utilizzando il Form proposto e utilizzando le
Lo script puo
` assegnate visualizzabili nelle righe commentate dello stesso.
variabili gia
52
4.28.2
G AMMU
Per utilizzare una propria Key GSM oun telefono USB Zerotruth si avvale del supporto di “Gammu”.
` un’utility da riga di comando per gestire molti modelli di device GSM.
Gammu e
Figura 76: Configurazione Gammu
Per configurare adeguatamente il device fare riferimento alle tabelle presenti sul sito WEB di
Gammu, in particolare accertarsi di riportare correttamente il parametro di connessione.
Se di ha un solo device USB la porta dovrebbe esere “/dev/ttyUSB0” altrimenti accertarsi tramite
i comandi “lsusb” e/o “dmesg” come il sistema “mappi” ildevice.
Se la configurazione va a buon fine la pagia dovrebbe riportare il corretto device e lo status
` utilizzare per inviare gli SMS come nelle configurazioni precedenti.
positivo, e si potra
In vantaggio utilizzare di una Key GSM sta nel fatto che, naturalmente, non risente di un eventuale
scollegamento della rete Internet e potra quindi, ad esempio, inviare alert all’amministratore.
` quella di poter ricevere degli SMS e quindi poter essere utilizzata
Un’altra importante funzione e
` descritto nella sezione dell’autoregistrazione, sia
sia per l’autoregistrazione degli utenti, come gia
ricevere comandi per il sistema.
` preparare un proprio script che, utilizzando le
Utilizzando il Form proposto nella pagina si puo
` assegnate, esegua dei comandi ed eventualmente invii all’amministratore delle rivariabili gia
sposte.
53
4.29
M ULTI CP
Il sistema permette di gestire, in modo centralizzato, dei Captive Portal remoti con tutte le funzioni
` disponibile in Zeroshell.
di Zerotruth e non solamente per l’autenticazione Radius gia
Figura 77: Configurazione MultiCP
` necessario che tutte le postazioni 16 siano dotate di Zeroshell e ZeroPer realizzare l’infrastruttura e
` possibile abilitarne la funzione “server” o “client” dopo aver
truth. Una volta installato Zerotruth e
naturalmente permesso il collegamento delle varie postazioni. Per maggior sicurezza si consiglia
di collegare i vari sistemi tramite una VPN a “stella” che risulta essere facilmente implementabi` possibile gestire completamente
le dall’interfaccia di Zeroshell. Dalla postazione “server” sara
tutte le postazioni come se si trattasse di un unico Captive Portal rendendo molto agevole il mantenimento del servizio offerto, ad esempio, da scuole con sedi distaccate, servizi comunali sul
territorio o catene di esercizi commerciali.
Figura 78: MultiCp: aggiornamento Client
Figura 79: MultiCP lato client
` disponibile il manuale ZT MULTICP.pdf .
Per la completa trattazione dell’argomento e
16
Dalla versione 3.0 Zerotruth supera il limite delle 6 postazioni massime.
54
4.30
B ACKUP
I backup possono essere scaricati immediatamente o resi automatici con cadenza giornaliera,
` diverse anche combinate tra di loro.
settimanale o mensile 17 con modalita
` possibile cancellare al termine della spedizione dei backup, o dell’immediato download,
Inoltre e
i log di sistema e gli utenti eliminati 18 per poter recuperare dello spazio sul nostro disco nel caso si
ritenga opportuno.
Figura 80: Configurazione Backup
4.30.1
B ACKUP CON EMAIL
Se viene configurato e abilitato il servizio email inviare i backup attraverso questo canale risulta
molto semplice e non necessita nessun altro tipo di configurazione. I backup verranno inviati
all’Amministratore in formato compresso “tgz”.
4.30.2
B ACKUP CON FTP
Inviare i backup ad un server remoto attraverso un collegamento FTP necessita, ovviamente, di
avere un account su di esso e inserire le proprie credenziali sul form proposto allo scopo.
17
I backup verranno inviati alle ore 00:01:00 ogni giorno, se viene scelta la cadenza giornaliera, o ogni luned`ı, se
viene scelta la cadenza settimanale, o il primo giorno del mese se viene scelta quella mensile.
18
Si ricorda che gli utenti eliminati dal dabtabase vengono archiviati in una apposita directory per non perdere i loro
dati di accountig.
55
4.30.3
B ACKUP CON D ROP B OX
` necessario registrare su “https://www.dropbox.com/developers/apps” una
Se si utilizza Dropbox e
nostra applicazione e consentire a Zerotruth di potersi interfacciare per caricare il backup. La
` questa modalita
` Dropbox chiedera
` a Zerotruth il permesso di utilizzo
prima volta che si utilizzera
` essere concesso.
che dovra
Figura 81: Conferma accesso a Dropbox
4.30.4
B ACKUP CON SCP
Una valida alternativa per eseguire i backup consiste nell’utilizzare un canale sicuro, attraverso il
protocollo SSH, con il programma SCP.
` creata automaticamente la chiave pubblica e privata per
Se viene utilizzato questo sistema verra
poter consentire la comunicazione tra il sistema e il server remoto senza dover, come nei normali
collegamenti SSH, autenticarsi con una password mantenendo lo stesso grado di sicurezza.
` su
Il sistema consiste nell’inserire una chiave pubblica, generata con quella privata che risiedera
Zerotruth, all’interno della configurazione del server remoto. In tal modo ad ogni connessione
` controllato se la nostra chiave privata e quella pubblica fanno
utilizzando il protocollo SSH verra
` consentito senza chiedere
parte della stessa coppia e, in caso positivo, l’accesso al sistema sara
` di autenticazione e
` molto sicura infatti trovare una chiave
altre autenticazioni. Tale modalita
` praticamente impossiile e sicuramente molto piu` complicato
privata partendo da una pubblica e
di trovare una password.
Figura 82: Backup con SCP
Viene mostrata, al termine della configurazione, attraverso il link “SSH Key” la chiave pubblica da
` presenti,
inserire sul server remoto, eventualmente aggiungendola su una nuova riga a quelle gia
nel file “/home/USER REMOTE/.ssh/authorized keys” o “/root/.ssh/authorized keys” se si imposta
un collegamento con le credenziali di “root” .
` crearlo e successivamente, dalla Shell di ZeroSe il file “authorized keys” non esiste si dovra
shell, collegarsi in SSH per la prima volta al server remoto in modo da memorizzarlo tra gli hosts
conosciuti e fidati.
In questa fase, non avendo ancora copiato la chiave pubblica e non avendo ancora effettuato
` la mancata connessione
un primo collegamento in SSH con il server remoto, il sistema segnalera
sicura con un “bollino rosso”.
` utilizzare un modo piu` semplice descritto
Per copiare la chiave pubblica sul server remoto si puo
nella prossima pagina.
56
Per facilitare l’operazione Zerotruth mette a disposizione lo script “ssh-copy-id”, opportunamente
modificato, che si deve eseguire dalla Shell di Zeroshell comprensivo di “path” .
“/DB/apache2/cgi-bin/zerotruth/scripts/ssh-copy-id”
Figura 83: Esportazione chiave pubblica
` esito positivo verra
` riportato altrimenti verra
` segnalato l’errore.
Se il procedimento avra
` ora visualizzato
Tornando alla GUI di Zerotruth e ricaricando la pagina della sezione backup verra
` di controllare i backup effettuati sul server remoto.19
il collegamento sicuro attivato e la possibilita
Figura 84: Visualizzazione collegamento SSH sicuro
Figura 85: Controllo Backup effettuati
` possibile cancellare singoli backup remoti, esegure un download o
Da quest’ultima pagina e
ripristinarli attraverso i link delle relative icone.
19
Ad ogni apertura, o refresh, della pagina il sistema invia un file al sistema remoto per essere certi dell’effettivo
funzionamento segnalando quindi lo stato reale del collegamento.
57
4.30.5
R IPRISTINO B ACKUP
` possibile aggiornare o ripristinare il sistema caricando un backup, della stessa versione atInoltre e
tualmente installata 20 , precedentemente salvato o, se utilizzato SCP come canale di trasmissione,
` visto nella Sez. 4.30.4.
come gia
,
Figura 86: Scelta backup da caricare
Dopo aver scelto il backup da caricare si potranno fare ulteriori scelte per ripristinare anche
singole parti dello stesso.
Figura 87: Scelta sezioni di backup
` visualizzato il corretto o meno caricamento di ogni singolo eleAl termine dell’operazione verra
mento.
Figura 88: Visualizzazione esito caricamento backup
20
` scelto di
Per gli importanti cambiamenti strutturali che ogni versione di Zerotruth ha avuto fino alla versione 3.0 si e
non permettere il caricamento di backup da versioni precedenti. Probabilmente nelle prossime versioni questo limite
` rimosso .
verra
58
4.31
C ONTROLLO
` DISCO
CAPACIT A
` installato su device embedded puo
` essere importante tenere
Soprattutto quando il sistema e
` residua del supporto di memorizzazione dei dati.
sotto controllo la capacita
Figura 89: Configurazione Avviso MB liberi Hard Disk
` e i MB ancora disponibili Zerotruth permette di essere avvisati, tramite
Oltre a mostare la capacita
SMS o email se opportunamente configurati, nel caso venga superata una determinata soglia e
anche di eliminare i LOG di sistema che possono occupare notevole spazio.
4.32
G RAFICI
Vengono messi a disposizione diversi grafici per il controllo del sistema, alcuni relativi all’utilizzo
delle risorse, CPU, RAM e rete, altri all’utilizzo del Captive Portal.
Il grafico relativo all’utilizzo della CPU viene aggiornato in tempo reale.
Figura 90: Grafico utilizzo CPU
59
Il grafico relativo all’utilizzo della RAM viene aggiornato in tempo reale.
Figura 91: Grafico utilizzo RAM
Il grafico relativo all’utilizzo della rete viene aggiornato in tempo reale.
Figura 92: Grafico utilizzo rete
I grafici relativi all’utilizzo del Captive Portal vengono aggiornati alle ore 00.01 di ogni giorno e
mostrano l’utilizzo del sistema sia per ore di collegamento che per traffico in MB. Esiste comunque
` di aggiornarli manualmente dal relativo link presente nella pagina.
la possibilita
Figura 93: Grafico utilizzo CP per anni
60
Figura 94: Grafico utilizzo CP per mesi
Figura 95: Grafico utilizzo CP per giorni
Figura 96: Grafico utilizzo CP per ore
61
Figura 97: Grafico top ten utenti
Il grafico “Top Ten” visualizza i 10 utenti che hanno maggiormente utilizzato il Captive Portal sia
per ore di connessione che per MB (RX+TX).
Figura 98: Scelta range dati
E` possibile selezionare i dati impostando una precisa fascia temporale per un controllo piu` accurato.
62
4.33
AGGIORNAMENTI
La pagina permette di accedere agli aggiornamenti di Zerotruth che vengono visualizzati, se
` di installarli.
presenti, con la possibilita
Figura 99: Aggiornamento Zerotruth
Gli aggiornamenti possono essere automatizzati e, se configurato e attivato il servizio email, essere
avvisati quando questi avvengono.
Figura 100: Post aggiornamento
Il processo di aggiornamento mostra, al termine, l’esito dell’operazione. Ogni giorno, ad un orario
casuale per ogni singola installazione di Zerotruth 21 viene effettuata la verifica degli aggiornamenti disponibili online ed eventualmente segnalati con un bollino rosso sul bottone “Config” e
sul bottone “Aggiorna”.
Figura 101: Avviso aggiornamenti disponibili
Figura 102: Avviso aggiornamenti disponibili
4.34
U PGRADE
` se presente, il possibile “upgrade” ad una versione
La pagina per l’aggiornamento mostrera,
` di effettuarlo da GUI. 22
successiva con la possibilita
21
` stato scelto per non caricare il server di aggiornamento con numerose chiamate
L’orario casuale e
contemporanee
22
` solamante l’avviso
La versione 2.1 di Zerotruth, per le strutturali modifiche inserite nella versione successiva, riportera
` essere installata da “shell”.
e la versione 3.0 dovra
63
5
G ESTIONE U TENTI
La visualizzazione e la gestione degli utenti registrati avviene nelle pagina “Lista Utenti” e “Aggiungi Utente”.
5.1
AGGIUNGERE
UTENTI
` visto come Zerotruth permetta l’ autoregistrazione. Esistono altri quattro modi per
Abbiamo gia
inserire gli utenti nel database del sistema da parte del gestore.
5.1.1
AGGIUNGERE UN UTENTE
` di default consente di aggiungere un utente registrando le carattristiche che lo
La modalita
definiranno.
Figura 103: Inserimento utente
` possibile modificarlo
1. Il valore del campo “Username” viene proposto automaticamente ma e
a piacere.
` possibile modificarlo
2. Il valore del campo “Password” viene proposto automaticamente ma e
a piacere e visualizzato ciccando sull’icona occhiali
` obbligatorio a meno che non si sia configurato diversamente
3. Il valore del campo “Nome” e
nella sezione Captive Portal alla voce “Consenti Utenti Anonimi”.
` obbligatorio a meno che non si sia configurato diversamen4. Il valore del campo “Cognome” e
te nella sezione Captive Portal alla voce “Consenti Utenti Anonimi”.
` obbligatorio.
5. Il valore del campo “Email” non e
` obbligatorio. Nel caso del suo inserimento dev’essere
6. Il valore del campo “Telefono” non e
senza gli zeri o segni iniziali.
7. Il valore imposta il profilo assegnato. Viene proposto di default il profilo “DEFAULT ” che non ha
nessun limite per l’utente.
` atttivo il profilo. Si vedra
` nella sezione Profili (Sez. 6)
8. Il campo riporta su quale interfaccia e
come sia possibile assegnare agli stessi interfacce diverse.
9. E` permesso “nascondere” determinati utenti alla vista, e quindi alla gestione, agli utenti gestori.
` vedere e gestire l’utente.
Se selezionato “Nascosto” soltanto l’amministratore potra
64
` definito “Sca10. I campi relativi alla “Scadenza” impostano la data oltre la quale l’utente verra
` durata illimitata.
duto”. Se non impostato L’utente avra
` impostare una data di scadenza in un numero di giorni dalla prima autenticazione.
11. Si puo
` inserire un credito iniziale.
12. Se scelto un profilo prepagato si puo
` autenticarsi. Se non scelti potra
`
13. E` possibile assegnare all’utente gli unici giorni nei quali puo
autenticarsi ogni giorno.
` limitare la possibilita
` di autenticazione all’utente in due fasce orarie giornaliere.
14. Si puo
` bloccare l’utente se supera un certo numero di ore di connessione per giorno o mese.
15. Si puo
` bloccare l’utente se supera un certo numero di MB utilizzati nelle connessioni per giorno
16. Si puo
o mese.
17. E` possibile visualizzare e stampare il biglietto per l’utente in tutte le lingue installate in Zerotruth
nel formato deciso nella configurazione relativa ai biglietti.
18. Al termine della registrazione il campo consente di inviare all’utente, se inserita l’email e/o il
numero di telefono, i dati di registrazione.
` essere utile inserire delle note relative all’utente.
19. Talvolta puo
5.1.2
AGGIUNGERE DIVERSI UTENTI
` di inserire molti utenti contemporaneamente esite il form relativo attivabile
Se si ha la necessita
dal link “Multi” della pagina “Aggiungi Utente”.
Figura 104: Link per Multi utenti
La funzione permette, ad esempio, di stampare diversi biglietti per consegnarli alla reception di
` caricati di un credito.
un albergo e gia
Figura 105: Link per Multi utenti
1. Numero di utenti da inserire
2. Eventuale prefisso nell’username dell’utente.
3. Inserisce l’eventuale credito nella tabella “Pagamenti” della sezione “Captive Portal”.
Al termine del procedimento verranno visualizzati a video, pronti per essere stampati, i biglietti
degli utenti.
65
5.1.3
AGGIUNGERE UTENTI DA FILE
` in possesso di un file con i dati degli utenti, come ad esempio l’anagrafica di una scuola,
Se si e
` usare per inserire gli utenti nel database. Il file deve essere in formato puro testo ottenibile
si puo
con un editor come gedit, nano o notepad.
Figura 106: Link per inserimento utenti da file
Figura 107: Esempio file da caricare
La pagina mostra un avviso sul formato accettato e permette il caricamento del file.
Figura 108: Caricamento file
` visualizzato il form per impostare l’inserimento degli utenti riportandone
Dopo il caricamento verra
il numero trovato nel file.
Figura 109: Inserimento utenti da file
Al termine del procedimento verranno visualizzati a video, pronti per essere stampati, i biglietti
degli utenti.
66
5.1.4
AGGIUNGERE UTENTI VINCOLATI AL BIGLIETTO
` anche la possiSe nelle impostazioni dell’autoregistrazione viene abilitato “Da Ticket” comparira
` di registrare gli utenti i quali saranno gli unici abilitati ad autoregistrarsi.
bilita
Figura 110: Link per inserimento utenti vincolati al biglietto
Figura 111: Link per inserimento utenti vincolati al biglietto
Figura 112: Biglietti per autoregistrazione
` sezione successiva (Sez. 5.2) come gestire tali utenti.
Si vedra
67
5.2
L ISTA
UTENTI
Il tipo di visualizzazione delle tabelle che elencano gli utenti inseriti nel sistema viene scelto nella
sezione “Captive Portal” (Sez. 4.13) alla voce “Abilita tabella utenti veloce”.
` in modalita
` standard
Se tale opazione non viene selezionata la visualizzazione degli utenti avverra
` della visualizzazione anche se con
altrimenti con una tabella chiamata “veloce” per la rapidita
meno dettagli.
5.2.1
TABELLA STANDARD
La tabella standard consente di visualizzare ed intervenire su molti aspetti degli utenti attraverso i
relativi link-bottone e icone.
Figura 113: Lista utenti standard
1. La colonna riporta il numero progressivo degli utenti visualizzati che collega ad una scheda
dettagliata del singolo utente.
Figura 114: Lista utenti standard
68
` di visualizzarle
2. La colonna riporta il numero di sessioni effettuate dall’utente con la possibilita
anche in determinati range di tempo.
Figura 115: Lista connessioni utente
3. La colonna riporta gli utenti validi, contrassegnati con una icona verde, e quelli scaduti, contrasssegnati da un’icona rossa. Un utente viene catalogato cone scaduto quando ha supera` utilizzare o, nel
to la data di scadenza, le ore massime di collegamento, i MB massimi che puo
caso di profili a pagamento, non ha piu` credito.
4. La colonna riporta se per l’utente sono state inserite delle informazioni aggiuntive, nel qual
` molto utile in quanto
caso possono essere visualizzate. In alcuni processi tale caratteristica e
` autoregistrato, e
` in attesa di competamento di registrazione
viene visualizzato se l’utente si e
(autoregistrazione con Asterisk), ecc.
` eliminare un utente dal database.
5. Dall’icona di questa colonna si puo
6. La colonna riporta gli utenti attualmente collegati. Il link dell’eventuale icona di collegamento
consente di disconnettere immediatamente l’utente relativo.
` abilitata la connessione simultanea e l’utente risulta collegato con due o piu` device
Se e
l’icona riporta un punto rosso.
Figura 116: Collegamento simultaneo
` l’utente da tutti i device utilizzati. Se si vuole scollegare l’utente da
In tal caso il link scolleghera
` necessario utilizzare il link sul numero delle connessioni che aprira
` la pagina
un solo device e
relativa.
Figura 117: Connessioni utente
` scegliere il link “Attivo” sulla riga desidePer scollegare l’utente da un singolo device si dovra
rata.
69
` essere bloccato o sbloccato ma7. La colonna riporta gli utenti liberi o bloccati. Un utente puo
nualmente dal link dell’icona oppure automaticamente dal sistema se ha superato il tempo
massimo consentito giornaliero o mensile impostato, i MB utilizzabili giornalieri o mensili impostati, non rientra nell’orario o nei giorni consentiti di collegamento. Superati i limiti impostati un
utente bloccato ritorna libero.
` un link che porta alla pagina per la modifica dei dati relativi all’utente.
8. I’icona matita e
Figura 118: Modifica utente
Il form, uguale a quello dell’inserimento di un singolo utente, riporta i dati dell’utente, ne
permette la modifica, la stampa del nuovo biglietto e l’invio, se scelto, delle nuove credenziali.
5.2.2
L ISTA UTENTI PER AUTOREGISTRAZIONE DA BIGLIETTO
` stata abilitata la funzione “Da Ticket”
Se nella sezione relativa all’autoregistrazione (sez. 4.14) e
` il link per gestire tale caratteristinella pagina che visulizza la lista degli utenti registrati comparira
ca.
Figura 119: Link utenti in attesa
Figura 120: Gestione utenti in attesa di autoregistrazione
E` possibile bloccare o sbloccare, eliminare e stampare nuovamente i biglietti per gli utenti in
attesa di autoregistrarsi.
Dalla stessa pagina, si possono aggiugere altri utenti.
70
5.2.3
R ICERCA UTENTI
` presente il link per poter effettuare delle ricerche nel dataNella pagina della lista degli utenti e
base.
Figura 121: Link ricerca utenti
Figura 122: Form Ricerca utenti
Possono essere combinati nella ricerca i diversi campi proposti.
La pagina risultante di una ricerca permette di eseguire delle operazioni su gruppi di utenti.
Figura 123: Ricerca utenti
Le azioni possibili sono:
• Elimina
Si ricorda che gli utenti eliminati vengono cancellati dal database ma non dal sistema. In tal
` recuperare lo “storico” del’utilizzo del Captive Portal e le sessioni effettuate per un
modo si puo
eventuale controllo.
• Scollega
Gli utenti selezionati verranno, se risultano con una connesione attiva, scollegati.
• Blocca
Gli utenti selezionati verranno bloccati e non potranno collegarsi al Captive Porta; se risultano
` il loro scollegamento.
connessi l’operazione contemporaneamente effettuera
71
• Sblocca
Gli utenti selezionati verranno, se risultano bloccati, sbloccati .
• Rendi nascosto
` rendere nascosto, e quindi visibile e gestibile solo dall’amministratore, il blocco degli
Si puo
utenti selezionati.
• Rendi pubblico
` rendere pubblico, e quindi visibile e gestibile anche dagli utenti gestori, il blocco degli
Si puo
utenti selezionati.
• Download sessioni
` eseguire immediatamente un backup delle sessioni degli utenti selezionati.
Si puo
• Cancella sessioni
` cancellare dal sistema le sessioni del blocco degli utenti selezionati. Questa operazione
Si puo
` dell’utilizzo sul Captive Portal degli utenti interessati e va quindi
comporta la non rintracciabilita
eseguita con attenzione e dopo aver eseguito un backup delle sessioni registrate sul sistema.
• Cambia profilo
` cambiare profilo, e quindi le caratteristiche di base, degli utenti selezionati.
Si puo
• Cambia gestore
` cambiare il “proprietario” degli utenti selezionati.
Si puo
• Stampa biglietto
5.2.4
TABELLA VELOCE
Se nella confiurazione del Captive Portal viene impostato “Abilita tabella utenti veloce” (Img: 36),
` nel modo seguente.
la pagina “Lista Utenti” si presentera
Figura 124: Tabella veloce
La “Tabella Veloce” mostra gli utenti del Captive Portal su tre colonne e con meno dettagli di
quella di standard ma nella visualizzazione risulta essere piu` veloce.
E` possibile comunque passare alla visualizzazione standard utilizzando l’apposito bottone-link.
72
6
P ROFILI
I profili sono delle “categorie” alle quali tutti gli utenti del Captive Portal appartengono sia che
`
vengano inseriti dai gestori nel database sia che si siano autoregistrati attraverso le varie modalita
permesse.
6.1
TABELLE P ROFILI
Figura 125: Pagina profili
I profili inseriti possono essere modificati o cancellati ad esclusione del profilo “DEFAULT ” che rim` come profilo base con nessun limite per l’utente. Se un profilo viene cancellato tutti gli
marra
utenti associati allo stesso passeranno al profilo “DEFAULT ”.
6.2
AGGIUNGI P ROFILO
Il bottone-link “Aggiungi Profilo” porta al form di inserimento di un nuovo profilo.
I profili definiscono le caratteristiche base degli utenti e i limiti di utilizzo del sistema. Si possono
inserire piu` profili con configurazioni diverse per consentire agli utenti accessi diversi, in una scuola,
ad esempio, si possono prevedere profili specifivi per i docenti, gli alunni, la segreteria etc.
6.3
P ROFILO
A PAGAMENTO
I pagamenti, se impostati, possono essere anticipati o posticipati.
` memorizzato il costo delle connessioni in base al costo per ora o
Nel caso sia posticipato verra
per MB impostati da presentare al cliente al termine, ad esempio, del suo soggiorno in albergo o
` disattivato e avra
` necessita
` di riattiin un campeggio o quando per i limti del profilo stesso verra
` prevedere un tempo libero iniziale durante il
vare la connessione. Nel caso sia anticipato si potra
` incrementare il proprio credito attraverso un pagamento alla cassa, in quequale l’utente potra
` lo stato dell’utente immettendo il versamento ricevuto
sto caso il gestore del sistema aggiornera
o, se configurato, autonomamente utilizzando Paypal. Se viene selezionato il tipo di pagamento
` la possibilita,
` visualizzandolo, di inserire il Tempo libero in minuti.
anticipato il form dara
73
Figura 126: Inserimento profilo
Figura 127: Pagamento anticipato
6.4
P ROFILO
CON LIMITE DI BANDA
` possibile assegnare agli utenti un
Se abilitato lo shaper (Sez. 4.25) nell’impostazione dei profili sara
` configurabile per “profilo” o per
limite di banda sia in download che in upload. Il limite di banda e
` divisa tra tutti gli utenti collegati appartenenti al
“user”. Nel primo caso la banda assegnata sara
` assegnata per singolo utente.
profilo mentre nel secondo verra
Figura 128: Inserimento profilo con Shaping
6.5
P ROFILO
CON IMPOSTAZIONE INTERFACCIA
` attivo su piu` intefacce di rete comparira
` nelle impostazioni da immettere
Se il Captive Portal e
` di assegnarle ai singoli profili.
anche la possibilita
Figura 129: Inserimento profilo per interfacce di rete
Gli utenti appartenenti al profilo potranno collegarsi solamente alle interfacce selezionate.
Ad esempio in una scuola si possono dividere gli utenti in profili diversi dove gli alunni possano
collegarsi solamente sulla rete wired (aula informatica) mentre i docenti anche su quella wireless.
` attivo su piu` intefacce di rete verra
` riportato anche nell’elenco dei profili.
Se il Captive Portal e
74
Figura 130: Pagina profili con interfacce di rete
`
In Zeroshell i proflili vengono definiti classi, si scelto in Zerotruth di chiamarli in tal modo perche
essendo stato inizialmente sviluppato per una scuola poteva creare confusione ai gestori scambiandoli per le classi scolastiche.
75
7
E MAIL
Gli utenti inseriti nel database possono essere contattati o avvisati attraverso email. La funzione
` trovare un valido motivo per avvisi riguardanti manutenzioni o programmate interruzioni del
puo
servizio del Captive Portal oppure, negli esercizi commerciali, per inviare auguri o inviti.
7.1
I NVIO
EMAIL
Viene inizialmente visualizzato il form di ricerca, naturalmente dei soli utenti con email registrata,
` possibile combinate i vari campi per una ricerca accurata.
dove e
Figura 131: Email - Ricerca utenti
Figura 132: Compilazione email
` possibile scegliere, attraverso i relativi check box, i soli utenti ai quali si vuole
Successivamnete sara
inviare l’email.
Le email conterranno automaticamente, oltre al testo immesso nel form, anche una intestazione
` di pagina come inserito nella configurazione degli “avvisi” del Captive Portal (Sez. 4.15).
e un pie
Le email inviate verranno memorizzate nei LOG di sistema dove potranno essere visualizzate e/o
cancellate.
76
8
SMS
Gli utenti inseriti nel database possono essere contattati anche attraverso SMS.
8.1
I NVIO SMS
Viene inizialmente visualizzato il form di ricerca, naturalmente dei soli utenti con numero di telefo` possibile combinate i vari campi per una ricerca accurata.
no registrato, dove e
Figura 133: SMS - Ricerca utenti
Figura 134: Compilazione sms
` possibile scegliere, attraverso i relativi check box, i soli utenti ai quali si vuole
Successivamente sara
` superate i 160 caratteri.
inviare il messaggio che non potra
` aggiornato il credito residuo in modo da
Se il fornitore del servizio lo consente ad ogni invio verra
` o meno di inviare ulteriori messaggi.
avere il controllo delle spese effettuate e la possibilita
Gli SMS inviati verranno memorizzati nei LOG di sistema dove potranno essere visualizzati e/o
cancellati.
77
9
U TILIZZO CAPTIVE P OR TAL
Come riportanto da Wikipedia “ La tecnica di Captive Portal forza un client http connesso ad una
rete di telecomunicazioni a visitare una speciale pagina web (usualmente per l’autenticazione)
` si ottiene intercettando tutti i pacchetti, relativi
prima di poter accedere alla navigazione. Cio
a indirizzi e porte, fin dal momento in cui l’utente apre il proprio browser e tenta l’accesso a
` richiedere
Internet. In quel momento il browser viene rediretto verso una pagina web la quale puo
l’autenticazione oppure semplicemente l’accettazione delle condizioni d’uso del servizio. ”
9.1
L OGIN CAPTIVE P OR TAL
Una volta collegato alla rete, sia essa wired o wireless, Zerotruth ridirige l’utente ad una pagina di
login a meno che sia stato impostato un “ servizio aperto” (Sez. 4.13).
9.1.1
L OGIN STANDARD
Figura 135: Form Login
Gli elementi possono variare nella pagina in base ai device utilizzati quali smartphone e tablet.
` visualizzata nella lingua impostata nella configurazione del sistema ma
La pagina di login verra
` scegliere una delle lingue presenti in Zerotruth cliccando sulle relative icone “bandiera”.
si potra
L’utente visualizzera le pagine di autenticazione e ogni informazione successiva in base alla lingua
scelta.
78
` inoltre possibile visualizzare le informazioni neccessarie, inserite nella configurazione “avvisi”
Sara
del Captive Portal (Sez. 4.15), per l’accesso o altre notizie attraverso il link “Info”.
Figura 136: Informazioni utente
` se queste risultano autorizzate, abilitato
Dopo aver immesso le proprie credenziali l’utente verra,
` mostrato il popup di autenticazione.
all’accesso e verra
Figura 137: Popup di autenticazione
` disabiliare la visualizzazione del Traffico e/o del Costo se si ritiene utile nella configurazione
Si potra
del Captive Portal (Sez. 4.13).
Figura 138: Popup di autenticazione con solo “Tempo”
79
9.1.2
L OGIN A PER TO
Se nella configurazione del Captive Portal (Sez. 4.13) viene impostato il “servizio aperto” l’utente
` accedere senza dover inserire nessun dato in modo quindi molto veloce.
potra
` alla rete e che
Alla prima connessione verranno visualizzati i dati e i limiti con i quali si accedera
` accettare per prosegure.
l’utente dovra
Figura 139: Autoregistrazione con Captive Portal aperto
` solamente utilizzare l’apposito bottoneSuccessivamente, e cos`ı per ogni ulteriore accesso, si dovra
link per essere autenticati.
Figura 140: Login con Captive Portal aperto
La pagina di login del sistema aperto permette all’utente di cancellare il proprio account.
Si considereri comunque che, anche in questo caso, Zerotruth quando elimina un utente esegue
una copia dei relativi dati, comprensivi delle sessioni effettuate, che potranno essere recuperati
tramite backup.
80
9.1.3
L OGIN CON CODICE QR
I biglietti con le credenziali degli utenti, come visto nella pagina i configurazione dei biglietti (Sez.
6.2), possono contenere anche un codice QR con le credenziali per l’accesso alla rete. Il sistema
` molto pratico per quei device che possono installare, o hanno gia installato, un lettore di codici
e
` velocemente all’autenticazione automatica e all’accesso alla rete.
QR che li indirizzera
9.2
CAMBIO PASSWORD
` possibile, attraverso il link “Cambia Password”, cambiare la propria
Dal popup di autenticazione e
password.
Figura 141: Reimpostare la password
`
Risulta necessario avere il servizio email abilitato per tale funzione in quanto all’utente verra
spedito un codice di controllo da inserire nel form successivo per una ulteriore sicurezza.
Figura 142: Inserimento codice controllo
Naturalmente per il successo dell’operazione l’utente deve essere stato inserito nel sistema anche
con il proprio indirizo email.
` confiEsistono altre procedure per modificare la password da parte di un utente se il sistema e
gurato per l’auto-registrazione con Asterisk (Sez. 9.4.3) o Gammu (Sez.4.28.2) o con invio di SMS
(Sez.4.14.2).
81
9.3
D ETTAGLI
CONNESSIONI UTENTE
` possibile per l’utente, attraverso il link “Dettagli Connessioni”,
Dal popup di autenticazione e
visualizzare una scheda che riassume i propri dati e l’utilizzo del Captive Portal.
Figura 143: Dettagli utente
Figura 144: Connessioni utente
` possibile accedere ai dati dell’accounting con l’elenco di ogni singola
Dalla scheda inoltre e
connessione dove viene specificato:
• l’ndirizzo IP e il MAC address del device che ha effettuato il collegamento;
• la data e l’ora di inizio connessione;
• la data e l’ora di fine collegamento;
• i MB in download;
• I MB in upload
• il traffico totale;
• il tempo totale ;
• l’eventuale costo.
` inoltre possibile fare una ricerca per un determinato range di
Per un controllo piu` dettagliato e
tempo.
82
9.4
AUTOREGISTRAZIONE
Zetrotruth consente l’autoregistrazione in modi dversi ma sempre avendo cura di poter risalire
` Nel caso si imposti la registrain modo preciso al reale utente nel caso vi sia la necessita.
zione in modo aperto, utile soprattutto in reti wired dove si voglia avere un maggior controllo
` la registrazione del MAC address e quindi la possibilita
` di risalire alla
sulle connessioni, si avra
postazione.
9.4.1
AUTOREGISTRAZIONE S TANDARD
` permessa di default solo se si e
` abilitato il servizio email e SMS. Infatti le
L’ Autoregistrazione e
credenziali verranno mandate all’utente in modo completo, ma senza password, via email ed
essenziali ma comprensive di password via SMS.
Figura 145: Auto Registrazione
Dopo aver inserito le proprie credenziali l’utente, se inserite negli “avvisi” del Captive Portal (Sez.
` accettare le “norme” di utilizzo del servizio.
4.15), per proseguire dovra
Figura 146: Norme per utilizzo del servizio
83
` la conferma dell’esito che
AL termine del procedimento di autoregistrazione l’utente visualizzera
` quanto inserito nella configurazione degli “avvisi” del Captive Portal (Sez. 4.15).
riportera
Figura 147: Avvio post registrazione
9.4.2
AUTOREGISTRAZIONE CON S OCIAL N ETWORK
Una volta installato il modulo relativo Zerotruth consente l’autoregistrazione con i piu` popolari
Social Network: Facebook, Google+ e Twitter.
Zerotruth verifica che le credenziali siano valide e registra l’utente con l’indirizzo email inserito e
la password registrata non in chiaro nel database come per gli altri utenti ma codificata in MD5.
In tal modo sia l’amministratore che gli utenti gestori non potranno visualizzare la reale password
` Per tali utenti quindi non sara
` possibile recudegli utenti che si sono registrati in questa mdalita.
perate la propria password se viene smarrita mentre potranno modificarla anche diversamente
di quanto registrato sul Social Network.
Figura 148: Autoregistrazione con Facebbok
84
Figura 149: Autoregistrazione con Google+
Figura 150: Autoregistrazione con Twitter
85
9.4.3
AUTOREGISTRAZIONE CON A STERISK
Dopo aver opportunamente configurato l’autoregistrazione tramite chiamata ad un PBX Asterisk
` descritto, evita ai gestori del
(Sez. 4.14.1) gli utenti utilizzeranno questo canale che, come gia
servizio i costi di spedizione delle credenziali attraverso SMS.
` come al solito, attraverso il form richiamabile dal link Registrazione
L’autoregistrazione avverra,
presente nella pagina di login del Captive Portal.
Figura 151: Form auto registrazione con Asterisk
` avvisato della necessita,
` per completare la registrazioAl termine del procedimento l’utente verra
ne, di chiamare il numero del centralino Asterisk con la SIM del numero inserito nella registrazione.
Figura 152: Avviso post registrazione
` visualizato l’username e la password assegnata.
Nello stesso avviso verra
86
Nella lista utenti troveremo a questo punto l’utente registrato contrassegnato con il logo di Aste` bloccato in attesa di conferma e non potra
` essere modificato dai gestori o
risk. L’utente risultera
dall’admin ma solo, eventualmente, eliminato.
Figura 153: Tabella users con utente in attesa di conferma
` la chiamata telefonica per il controllo del’autenticita
` del numero
Quando l’utente effettuera
` l’utente come definitivamente registrato eventualmente mostrando i
inserito la tabella riportera
limiti assegnati dal profilo assegnato.
9.4.4
AUTOREGISTRAZIONE CON SMS
Se viene configurata l’autoregistrazione “completa con invio sms” (Sez. 4.14.2) la procedura diventa facile per l’utente che deve essere a conoscenza del numero telefonico del servizio. Infatti
basta inviare un sms al numero del device impostato su Zerotruth con un’unica parola scelta
come password.
` registrato come “username”.
Il numero di telefono del chiamante verra
` risulta essere efficace in quelle strutture dove i clienti possono essere avvisati del
La modalita
sistema .
` disabilitato quello di default.
Se si abilita tale sistema di auto registrazione verra
9.4.5
AUTOREGISTRAZIONE DA T ICKET
L’autoregistrazione da Ticket risulta adeguata per quelle strutture nelle quali esiste un contatto
diretto con l’utente quali un albergo o un campeggio e si configura nelle impostazioni del Captive
portal (Sez. 4.14.3)
All’utente viene consegnato un ticket preparato in precedenza (Sez. 5.1.4) con inserito solo
l’username.
Figura 154: Biglietto per auto registrazione
Solamente gli utenti in possesso del biglietto potranno autoregistrarsi inserendo nel campo username del form di autoregistrazione quanto riportato.
Per il resto il processo di autoregistrazione rimane invariato. Se si abilita tale sistema di auto
` disabilitato quello di default.
registrazione verra
87
9.5
R ECUPERO PASSWORD
Zerotruth permette all’utente di recuperare la propria password in relazione all’impostazione del
sistema.
9.5.1
R ECUPERO PASSWORD STANDARD
` possibile per l’utente recuperare la propria password se dimenticata.
Dalla pagina di login e
Figura 155: Recupero password
L’utente deve essere in possesso comunque del proprio username e inserire la propria email e il
` utilizzato per inviare la password attraverso un SMS.
numero di telefono che sara
9.5.2
R ECUPERO PASSWORD CON A STERISK
` impostato per essere utilizzato con Asterisk l’utente potra
`
Se il sistema di autoregistrazione e
recuperare la propria password attraverso una chiamata telefonica come descritto nella Sez.
4.14.1.
88
9.6
B LOCCO CAPTIVE P OR TAL
` e
` possibile bloccare l’accesso al Captive Portal
u-linuxdddd Per manutenzioni o altre necessita
dandone avviso agli utenti che tentano di collegarsi.
Il blocco del servizio avviene se il Captive Portal, pur essendo attivato, non viene posto online. (
Sez. 4.13).
Figura 156: Configurazione Captive Portal fuori servizio
Figura 157: Captive Portal fuori servizio
` all’utente sara
` modificabile nell’impostazione degli avvisi del Captive
L’avviso che comparira
Portal (Sez. 4.15).
89
Allegati
A
I ferri del mestiere
Zeroshell e Zerotruth permettono di configurare e gestire il Captive Portal completamente dall’interfaccia grafica facilitando molto il lavoro di configurazione. Talvolta comunque necessita, per
una verifica o per l’esigenza di modificare uno script, di dover accedere alla Bash Shell o montare
il file system di Zeroshell sul nostro PC.
Nel primo caso Zeroshell mette a disposizione i comandi della Bash Shell e l’editor “vi”, presente in
tutte le distribuzioni gnu-Linux e assolutamente da saper utilizzare almeno nelle funzioni principali,
` intervenire per ogni necessita.
`
con i quali si puo
` essere comunque agevole disporre di un editor piu` intuitivo e di un file manager visuale.
Puo
Zerotruth mette a disposizione come add-on un pacchetto con Midnight Commander e Nano
compilati e configurati specificatamente per il sistema.
L’installazione dell’add-on deve avvenire da shell con i seguenti comandi:
• “cd /DB”
• “wget http://zerotruth.net/download/zt-mc-nano.tar.gz”
• “tar zxvf zt-mc-nano.tar.gz”
• “./install.sh”
Figura 158: Installazione di Midnignt Commander e Nano
` necessaPer poter utilizzare subito i due programmi, senza eseguire un reboot della macchina, e
rio far rileggere alla bash shell attiva il nuovo profilo memorizzato nell’installazione, che aggiunge
il path corretto, con il comando:
“. /root/.bash profile”
facendo attenzione ad inserire il punto iniziale.
A.1
Midnight Commander
` un veloce file manager visuale per i terminali a caratteri e corrisponde
Midnight Commander e
all’eseguibile “mc”. Si tratta di un programma molto simile a Norton Commander, un software
` facilmente configurabile e permette di gestire fiproprietario per DOS. Midnight Commander e
` accedere
le e directory in modo molto intuitivo anche con l’utilizzo del mouse. Inoltre si puo
velocemente a file compressi e a server remoti usando il protocollo FTP. In questo documen` solamente alcune possibilita
` rimandando alle numerose guide presenti in Internet
to si esporra
`
l’approfondimento delle notevoli potenzialita.
90
` sufficiente usare da shell il comando “mc”.
Per eseguire Midnight Commander e
Figura 159: Midnight Commander
I comandi principali vengono riportati nei riquadri in basso dell’interfaccia e possono essere attivati con il mouse o con il corrispondente tasto funzione (F1, F2... F10) mentre con il tasto Tab ci si
sposta tra le due finestre.
` sufficiente selezionarlo e premere invio sulla tastiera cosi come per scomPer eseguire uno script e
` editarpattare un archivio compresso. Con il tasto F3 si visualizza un file mentre con F4 si puo
` possibile utilizzare Nano installato
lo. Midnight Commander disponde di un proprio editor ma e
assieme al programma.
Per configurare il file manager per l’utilizzo di default di Nano aprire il menu Options e spostarsi in
Configuration.
Figura 160: Midnight Commander
91
` si dovra
` semplicemente togliere la spunta a “Use internal editor”.
Nella scheda che si aprira
Figura 161: Midnight Commander
` l’editor Nano. Un’altra imIn tal modo se viene editato un file Midnight Commander utilizzera
` la possibilita
` di
portante caratteristica utile per trasferire, o scaricare, file da un server remoto e
utilizzare il programma come client FTP. Per accedere ad un server FTP aprire il menu Left o Right,
a seconda che di voglia utilizzare la finestra di sinistra o di destra per collegarsi, e spostarsi in FTP
link
Figura 162: Midnight Commander
dove si dovranno inserire le credenziali di autenticazione per il server remoto nel formato
“user:password@IP”
Figura 163: Midnight Commander
92
` stabilito potremo utilizzare i soliti comandi da mouse o tastiera per trasfeSe il collegamento verra
rire i file da o per il server remoto.
Figura 164: Midnight Commander
A.2
Editor Nano
Per utilizzare Nano si deve eseguirlo da Shell con il comando “nano”. Se seguito dal nome di un
` e si potra
` editarlo con gli intuitivi comandi descritti in basso nella finestra
file esistente lo aprira
dell’editor.
Figura 165: Midnight Commander
Figura 166: Midnight Commander
` confidenza dei principali comandi e diventera
` uno strumento abituale
In breve tempo si prendera
nella gestione di Zerotruth e Zeroshell.
93
A.3
Direttamente da PC
` possibile
Per chi si trovasse a disagio a gestire il file manager e l’editor direttamente da shell e
montare il file system di Zeroshell sulla postazione con la quale ci si collega al sistema.
` possibile montare il file system di Zeroshell utilizzando sftp e poi gestirlo come se facesse
Infatti e
parte del nostro sistema locale.
` necessario modificare la login shell
Per abilitare Zeroshell ad accettare un collegamento sftp e
impostata di default su “localman” in “/bin/bash”.
` sufficiente, dopo l’autenticazione, digitare il comando:
Per eseguire tale operazione e
“chsh”
e alla richiesta della nuova login shell inserire “/bin/bash”
Figura 167: Modifica login shell
` montare Zeroshell sul nostro PC in una cartella a nostro piacimento come evidenziato
Ora si potra
` la configurazione se riavviato.
nella figura seguente tenendo presente che Zeroshell eliminera
` le credenziali di autenticazione per terminare l’operazioLa procedura, naturalmente, richiedera
ne regolarmente.
Figura 168: Utilizzo di sftp
La stessa funzione la svolge automaticamente, ad esempio, nautilus il file manager di Ubuntu
scegliendo “connetti al server” nel menu file.
Figura 169: Nautilus
94
` stato montato regolarmente ogni programma locale vi pota
`
Se il file system di Zeroshell sara
accedere in lettura e scrittura. Nel seguente esempio si mostra l’utilizzo di Geany un leggero
editor di testo multi piattaforma che supporta molti linguaggi di programmazione.
Figura 170: Geany - apertura file
Figura 171: Geany - interfaccia
95
B
Scripts
In questo allegato vengono riportati alcuni esempi di scripts da utilizzare nelle varie features di
Zerotruth.
B.1
Scripts per keypad
` possibile impartire dei comandi al sistema con
Come illustrato nella sezione Keypad (Sez. 4.8) e
una tastiera utilizando dei codici numerici.
I tasti utilizzabili sono quelli sempre presenti su un tasierino numerico e quindi dal tasto “0” al tasto
“9”, il tasto “+”, “-”, “*” e “/” oltre al tasto “Enter” che serve a terminare la sequenza e inviare gli
scan code.
Lo script che viene lanciato dopo aver digitato un codice e premuto il tasto Enter, o il tasto
mappato come Enter, (“/DB/apache2/cgi-bin/zerotruth(scripts/readkeys.sh” ) converte gli scan
code in numeri ed esegue, se trova un codice impostato, i relativi comandi. La prima parte dello
` serve a convertire gli scan code in numeri per costruire il
script dev’essere mantenuta perche
codice.
# !/ bin / bash
source / DB / apache2 / cgi - bin / zerotruth / conf / zt . config
source / DB / apache2 / cgi - bin / zerotruth / functions . sh
source / DB / apache2 / cgi - bin / zerotruth / language / $C_LANGUAGE / $C_LANGUAGE . sh
NC = " $ ( echo $1 | sed ’s / -/ /g ’ | wc -w | awk ’{ print $1 } ’) "
[ " $NC " == " 0 " ] && exit
CODE = " "
for N in $ ( seq 2 $ (( $NC +1))); do
PC = " $ ( echo $1 | cut -d ’ - ’ - f$N ) "
PC = " $ ( cat $C_ZT_CONF_DIR / keys . conf | grep " $PC " | cut -d ’ ’ - f1 ) "
CODE = " $ { CODE } $ { PC } "
done
` inserire qualsiasi comando che tenga presente i possibili codici pasSotto tale intestazione si puo
sati come nei seguenti esempi dove il simbolo “/–/ ” significa che la riga va posta in continuazione
alla precedente.
CAPTIVE P ORTAL OFFLINE
if [ " $CODE " == " 15556 " ]; then
ln -f -s $ C _ H T D O C S _ T E M P L A T E _ D I R / cp_showauth_custom - off
/ - -/ $C_CP_DIR / Auth / Template / cp _sh ow au th _c us to m
exit
fi
CAPTIVE P ORTAL ONLINE
if [ " $CODE " == " 16668 " ]; then
ln -f -s $ C _ H T D O C S _ T E M P L A T E _ D I R / cp_showauth_custom - on
/ - -/ $C_CP_DIR / Auth / Template / cp _sh ow au th _c us to m
exit
fi
D ISCONNETTERE TUTTI GLI UTENTI
if [ " $CODE " == " 1563546 " ]; then
CONNECTED = $ ( ls $C_CP_DIR / Connected )
for IP in $CONNECTED ; do
$C_ZT_BIN_DIR / zt " Disconnetti " " $IP "
done
exit
fi
96
B LOCCARE TUTTI GLI UTENTI
if [ " $CODE " == " 986546 " ]; then
USERS = $ (/ usr / local / bin / ldapsearch - xLLL -b " ou = Radius , $C_LDAPBASE " ’(!( sn =* -*)) ’ cn
/ - -/ | sed -n ’/ cn :/ p ’ | awk ’{ print $2 } ’)
[ -z " $USERS " ] && exit
for USER in $USERS ; do
if [ " $USER " != " admin " ]; then
CONNECTED = $ ( ls $C_CP_DIR / Connected )
for IP in $CONNECTED ; do
if [ $ ( cat $C_CP_DIR / Connected / $IP / User | cut -d " @ " - f1 ) == " $USER " ]; then
$C_ZT_BIN_DIR / zt " Disconnetti " " $IP " " $USER "
fi
done
RADIUS = $ (/ usr / local / bin / ldapsearch - xLLL -b " ou = Radius , $C_LDAPBASE " cn = $USER sn )
PASS = $ ( echo $RADIUS | awk ’{ print $NF } ’)
PASSLOCK = " $PASS - $RANDOM "
DATA = " dn : cn = $USER , ou = Radius , $C_LDAPBASE \ nsn : $PASSLOCK "
echo -e " $DATA " | ldapmodify -c -x -D " $C_LDAPMANAGER , $C_LDAPBASE "
/ - -/ -w $C_LDAPROOT > / dev / null
DATA = " dn : uid = $USER , ou = PEOPLE , $C_LDAPBASE \ nlocked : yes "
echo -e " $DATA " | ldapmodify -c -x -D " $C_LDAPMANAGER , $C_LDAPBASE "
/ - -/ -w $C_LDAPROOT > / dev / null
fi
done
exit
fi
S BLOCCARE TUTTI GLI UTENTI
if [ " $CODE " == " 134321 " ]; then
USERS = $ (/ usr / local / bin / ldapsearch - xLLL -b " ou = Radius , $C_LDAPBASE " ’(&( sn =* -*)) ’ cn
/ - -/ | sed -n ’/ cn :/ p ’ | awk ’{ print $2 } ’)
[ -z " $USERS " ] && exit
for USER in $USERS ; do
if [ " $USER " != " admin " ]; then
RADIUS = $ (/ usr / local / bin / ldapsearch - xLLL -b " ou = Radius , $C_LDAPBASE " cn = $USER sn )
PASS = $ ( echo $RADIUS | awk ’{ print $NF } ’)
PASS = $ ( echo " $PASS " | cut -d ’ - ’ - f1 )
DATA = " dn : cn = $USER , ou = Radius , $C_LDAPBASE \ nsn : $PASS "
echo -e " $DATA " | ldapmodify -c -x -D " $C_LDAPMANAGER , $C_LDAPBASE "
/ - -/ -w $C_LDAPROOT > / dev / null
DATA = " dn : uid = $USER , ou = PEOPLE , $C_LDAPBASE \ nlocked : no "
echo -e " $DATA " | / ldapmodify -c -x -D " $C_LDAPMANAGER , $C_LDAPBASE "
/ - -/ -w $C_LDAPROOT > / dev / null
fi
done
exit
fi
R EGISTRARE UN UTENTE
Registrare un utente con username uguale al numero di cellulare e mandare un sms con le
credenziali.
In questo caso viene utilizzatato il codice passato come numero di cellulare che deve terminare
con il simbolo “+” come ad esempio “3334567898+”.
if [ -n " $ ( echo " $CODE " | grep ’+$ ’) " ]; then
PHONE = " $ ( echo " $CODE " | cut -d ’+ ’ - f1 ) "
USERNAME = " $PHONE "
NAME = " $L_ANONYMOUS "
LAST_NAME = " $L_ANONYMOUS "
CLASS = " DEFAULT "
MATRICE = " a b c d e f g h i l m n p q r s t u v z 1 2 3 4 5 6 7 8 9 "
97
while [ " $ { a :=1} " - le $C_LE NGH_PA SSWORD ]; do
PASSWORD = " $PASSWORD$ { MATRICE : $ (( $RANDOM % $ {# MATRICE })):1} "
let a +=1
done
SHADOWEXPIRE = $ ( dateDiff -d " 1970 -01 -01 " " 2037 -12 -31 " )
ldap_add_people
ldap_add_radius
$C_ZT_BIN_DIR / zt " ControlAcct " " $USERNAME "
$C_ZT_BIN_DIR / zt " ControlLimits " " $USERNAME "
$C_ZT_BIN_DIR / zt " AddK5 " " $PASSWORD " " $USERNAME " " 2037 -12 -31 "
TEXT_SMS = " $C_HOTSPOT_NAME user : $USERNAME password : $PASSWORD - $L_FOOTER_SMS "
$C_ZT_BIN_DIR / zt " InviaSms " " $C_SMS_PROVIDER " " $PHONE " " $TEXT_SMS "
exit
fi
98