Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive...

20
Pietro Palazzo,Nicola Contillo 16 gennaio 2012

Transcript of Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive...

Page 1: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

Zeroshell per tutti!

Pietro Palazzo,Nicola Contillo

16 gennaio 2012

Page 2: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

Indice

1 Con�gurazione �sica 3

2 VirtualBox e primi passi 4

2.1 Installazione VirtualBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 Con�gurazione Iniziale 9

3.1 Impostare una Route Statica su Linux . . . . . . . . . . . . . . . . . . . . . 9

4 Con�gurazione ZeroShell 11

4.1 Creazione di un profilo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2 Configurazione della rete e NAT . . . . . . . . . . . . . . . . . . . . . . . . 124.3 DHCP ZeroShell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5 Captive Portal 15

5.1 Creazione Users e attivazione . . . . . . . . . . . . . . . . . . . . . . . . . . 15

6 Proxy Http 19

6.1 DansGuardian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2

Page 3: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

1 Con�gurazione �sica

Prima di tutto la configurazione di rete che prenderò come esempio. Un’immagine rende piùdi mille parole...

3

Page 4: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

2 VirtualBox e primi passi

Ho deciso di utilizzare una macchina linux e Zeroshell installato su VirtualBox.La versione di Zeroshell che userò è la beta16.Il primo passo consisterà nello scaricare e installare VirtualBox, la versione disponibile al

momento è la 4.1 .In seguito ci occuperemo della configurazione di VB e quindi della installazione di Ze-

roshell.

2.1 Installazione VirtualBox

Prima di tutto bisogna scaricare gratuitamente il file di installazione di VirtualBox(www.virtualbox.org/wiki/Linux_Downloads). Una volta installato clicchiamo sul tasto Nuo-va e quindi inseriamo il nome del sistema operativo da virtualizzare, nel nostro caso “Ze-roshell”.

Inseriamo nelle caselle Sistema Operativo e Versione rispettivamente Linux e Linux 2.6.Clicchiamo Avanti e decidiamo quanta memoria RAM dedicare a ZS (personalmente ho

scelto 512 MB).In seguito ho spuntato “Crea un nuovo disco fisso” di tipo “VDI” e “allocato dinamica-

mente”, scegliamo una dimensione e clicchiamo su avanti.

4

Page 5: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

2 VirtualBox e primi passi

5

Page 6: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

2 VirtualBox e primi passi

Una volta creata la macchina virtuale andiamo sulle Impostazioni, in particolare su Archivi-azione e selezioniamo la iso di ZS scaricata dal sito ufficiale.

In seguito andiamo su Rete e proseguiamo come in Figura

6

Page 7: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

2 VirtualBox e primi passi

Avviamo ZS

7

Page 8: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

2 VirtualBox e primi passi

OK, siamo pronti ad iniziare!!!

8

Page 9: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

3 Con�gurazione Iniziale

Simuliamo di essere un client e colleghiamoci con un cavo allo switch che, nella nostraconfigurazione, è connesso all’interfaccia eth0 di ZS.

L’interfaccia di ZS è impostata di default sulla rete 192.168.0.0/24, più precisamente haindirizzo IP 192.168.0.75. Per accedere alla configurazione via browser dobbiamo impostaresulla nostra scheda di rete un indirizzo ip statico all’interno della rete 192.168.0.0/24.

Successivamente possiamo accedere a ZS e iniziare la configurazione vera e propria di unprofilo.

3.1 Impostare una Route Statica su Linux

Apriamo il terminale e digitiamo:sudo -sifconfig eth0 192.168.0.10route add default gw 192.168.0.75 eth0

Spieghiamo cosa abbiamo fatto:

• log come root

• diamo l’indirizzo ip 192.168.0.x (192.168.0.10) alla scheda di rete (nel mio caso eth0)

• impostiamo come default gatway, della nostra scheda di rete, ZS che ha indirizzo ip didefault 192.168.0.75

Apriamo un browser e digitiamo:https://192.168.0.75/Poi inseriamo come user:admin e come password:zeroshell.

9

Page 10: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

3 Configurazione Iniziale

Ora possiamo finalmente creare un profilo!

10

Page 11: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

4 Con�gurazione ZeroShell

In questa sezione vedremo la configurazione di base per poter usare ZS come router e serverDHCP.

4.1 Creazione di un pro�lo

La creazione di un profilo è il primo passo che dobbiamo compiere per configurare la nostrarete.

Andiamo su setup –> Profiles selezioniamo “HARDDISK” per procedere con la format-tazione.

Successivamente selezioniamo la partizione appena creata e clicchiamo su create Profile.Inseriamo i dati richiesti lasciando vuoto il campo Default Gateway 1.

1Se la creazione di un profilo dovesse restituire strani errori, potete provare a risolverli inserendo nella finestrassh l’indirizzo della rete (in questo caso 192.168.0.0/24).

11

Page 12: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

4 Configurazione ZeroShell

Una volta creato, clicchiamo su tasto Activate per attivare il profilo. Una volta riavviato ZSricordiamoci di accedere con la password che abbiamo scelto precedentemente.

4.2 Con�gurazione della rete e NAT

Spostiamoci nel box Network, modifichiamo l’indirizzo ip di ETH00 e aggiungiamo l’indi-rizzo ip alla scheda di rete eth01. Selezioniamo eth01 e clicchiamo su AddIp (Nel mio casol’idirizzo ip che ho scelto è 192.168.1.100) .

Successivamente indichiamo come default gateway l’indirizzo del router.

Per far comunicare le due schede di rete useremo la tecnica del NAT.In parole povere, quando arriveranno delle richieste, provenienti dalla LAN, all’ interfaccia

eth01 , quest’ultima avrà l’illusione di comunicare con un indirizzo ip della propria rete.Quindi spostiamoci su Router –> NAT e inseriamo sotto “NAT Enabled Interfaces” l’inter-

faccia eth01.Ora possiamo navigare!!

4.3 DHCP ZeroShell

Spostiamoci su DHCP e clicchiamo su new, quindi definiamo su quale sottorete sarà applicato.

12

Page 13: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

4 Configurazione ZeroShell

Definiamo il range di indirizzamento per la sottorete e salviamo tutto.ZeroShell viane definito di default come server DNS, ma possiamo cambiarlo facilmente

inserendo ad esempio gli OpenDNS (208.67.222.222 e 208.67.220.220).

13

Page 14: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

4 Configurazione ZeroShell

14

Page 15: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

5 Captive Portal

ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un defaultgateway che cattura le richieste verso l’esterno da parte dei client.

Come prima cosa bisogna creare degli Users, poi attivare il captive portal facendo attenzioneche i client che non hanno un web browser, come videocamere,stampanti di rete, webcam oaltri apparecchi, possano accedere alla rete senza autenticazione.

5.1 Creazione Users e attivazione

Nel box Users clicchiamo su add per aggiungere nuovi utenti. Compiliamo il form con leinformazioni richieste e indichiamo la password, quindi clicchiamo su Submit.

Spostiamoci su Captive Portal, spuntiamo Active on e selezioniamo come default gatewayl’interfaccia di ZS che si trova nella rete LAN, nel mio caso ETH00.

15

Page 16: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

5 Captive Portal

Per non permettere connessioni simultanee con lo stesso user, basta indicare nel form“Simultaneous Connections = Not Allowed”.

Ora salviamo tutto e aggiorniamo la pagina.

16

Page 17: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

5 Captive Portal

Nel caso in cui avessimo una telecamera nella nostra Lan, dovremmo indicarla nell’appositobox free authorized.

17

Page 18: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

5 Captive Portal

La pagina di Login è completamente configurabile, lascio a voi il divertimento.

18

Page 19: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

6 Proxy Http

In questo capitolo illustrerò come installare e configurare DansGuardian 1.0.beta13 v1 2.8.0.6su Zeroshell beta16.

6.1 DansGuardian

Per installare DansGuardian dobbiamo spostarci sulla shell di ZeroShell premendo il taso “s”.

Sulla riga di comando digitiamo in seguito:1 cd / D a t a b a s e2 wget h t t p : / / www. z e r o s h e l l . n e t / l i s t i n g / BA13−DansGuardian−Web−Conten t−F i l t e r −2 . 8 . 0 . 6 −1 . 0 . b e t a 1 3 . t a r . bz2 t a r3 x v f j BA13−DansGuardian−Web−Conten t−F i l t e r −2 . 8 . 0 . 6 −1 . 0 . b e t a 1 3 . t a r . bz24 cd BA13 . / i n s t a l l . sh5 cd / D a t a b a s e / o p t / 1 . 0 /6 mv b e t a 1 3 b e t a 1 67 cd b e t a 1 6 / s c r i p t s /8 mv BA13−20dg BA16−20dg9 . / BA16−20dg

19

Page 20: Zeroshell per tutti! · 2012-03-18 · ZeroShell permette la realizzazione di un “captive portal” attraverso l’utilizzo di un default gateway che cattura le richieste verso

6 Proxy Http

Per configurare DansGuardian digitiamo:1 cd /2 v i e t c / d a n s g u a r d i a n / d a n s g u a r d i a n . con f

Le voci che ci interessano sono 1 :

• filterport = 55559

• proxyip = 127.0.0.1

• proxyport = 8081

quindi premiamo il tasto ESC e ZZ per salvare 2.Andiamo nell’interfacciia di ZeroShell e se DansGuardian risulta installato correttamente

nell’interfaccia web di configurazione del proxy compare il bottone [Content Filer Log].Inseriamo le Capturing Ruls in modo da catturare tutte le richieste della LAN verso l’inter-

faccia di ZS.Quindi inseriamo nel campo Source Interface:ETH00 e attiviamo il proxy.

1Ricordo che nell’editor vi per inserire del testo premere il tasto “i”2Riprendo dalla guida:”Per tarare quindi la sensibilità di DansGuardian, bisogna editare il file

/etc/dansguardian/dansguardianf1.conf, modificando il parametro naughtynesslimit”

20