Questo post è il seguito di “virtualizzare per documentare” e mostra come con un altro tassello Free Software abbiamo la possibilità realizzare i nostri obiettivi. Ho scoperto questa “opera d’ingegno” da poco ma da quel momento la uso tutte le volte che posso. Questa distribuzione Gnu/Linux racchiude molto per la gestione di una “piccola” rete. Anche se è possibile installarla direttamente su HD io normalmente la uso in un ambiente virtualizzato, normalmente VirtualBox, perché in questo modo ho la possibilità di usare anche le risorse messe a disposizione dell’host oltre che dal guest. La virtualizzazione di Zeroshell è documentata da Nicola Carlino nella sezione http://www.zeroshell.net/documentation/ con Vmware ESXi ma noi useremo solo VirtualBox su OpenSolaris/Gnu/Linux. Collegandoci al post il mio ambiente di sviluppo è sempre OpenSolaris e di conseguenza le mie interfacce vnic sono tutte in bridge, anche se il bridge è su una struttura completamente virtualizzata.
Ci procuriamo la iso di zeroshell e la registriamo all’interno di Vbox

Ora dobbiamo creare la virtual machines mediante il wizard di Vbox

scegliendo un nome e una piattaforma, nel nostro caso Zeroshell12 e Linux/kernel 2.6

successivamente dovremo scegliere quanta memoria assegnare, normalmente già 256Mb sono sufficienti,

dopo avremo la possibilità di scegliere o creare il disco rigido. Questo HD verrà utilizzato dalla virtual machines per memorizzare le impostazioni. La scelta ricade automaticamente su un hd ide che verrà creato automaticamente dal wizard e verrà creato con lo stesso nome della vm. Normalmente a vm creata, cambio il tipo di hd da ide a sata per fruttare meglio le caratteristiche messe a disposizione da Vbox.

Next >

per la dimensione del disco è sufficiente accettare la dimensione suggerita e la tipologia dinamica, questo con la prospettiva di usare inizialmente il minimo spazio disco del server host.

in questo passaggio abbiamo la possibilità sia di cambiare il nome del disco sia la dimensione

infine abbiamo il riepilogo delle caratteristiche del disco appena creato

e come passo finale abbiamo la presentazione d’insieme

Normalmente faccio un tuning della vm nelle sezioni
- System, abilitando se possibile la virtualizzazione hardware VT/ADM-V
- disable audio
- disable usb
- disable floppy
- modifica del controller del disco da ide a sata



- cdrom
in questa sezione colleghiamo la iso di Zeroshell al dispositivo fisico visto dal guest.

- sezione Network
La sezione network rispecchia la configurazione del POST precedente con tre interfacce + una host-only per l’accesso web dall’ host

la zs0 diventerà la ETH00 della vm

la zs1 diventerà la ETH01 della vm

la ws0 diventerà la ETH02 della vm . Scusate ma l’immagine riporta ws1 mi perdonate vero

la vboxnet0 diventerà la ETH03 della vm

Poiché uso OpenSolaris che implementa nativamente la virtualizzazione del network mediante il progetto CROSSBOW dovremo far in modo di far coincidere il mac delle vm con il mac delle interfacce virtuali create con dladm. Come ? Andando a modificare nella sezione Advanced il valore del mac. Tra le possibili schede di rete scelgo sempre una Intel PRO/1000 T Server, questo per tutte e quattro (vboxnet0 compreso) .
LINK OVER SPEED MACADDRESS
zs1 right1 0 2:8:20:41:19:2d
zs0 lefth1 0 2:8:20:ef:2e:18
ws0 wireless1 0 2:8:20:f1:6e:9f
Nel caso riportato il valore 0800276FBF08 dovrà diventare 020820ef2e18 notiamo l’assenza dei : e il 2 e 8 sono preceduti da uno 0

Per chi usa un host Gnu/Linux o MS Windows la scelta ricade su una configurazione bridge con la/le interfacce di rete a disposizione dallo stesso host.
Ora finalmente possiamo eseguire la virtual machines, all’interno di VirtualBox selezioniamo la vm e start .

ed ecco il profile EXAMPLE.COM attivo e funzionante
Ora dobbiamo accedere alla console web altrimenti che zero shell sarebbe ?
Per la nostra configurazione di rete ricorriamo alla vboxnet0, visto che l’indirizzamento 192.168.0.75 è su uno switch virtuale non accessibile all’host che ospita la vm. Prima dobbiamo assegnare un ip dinamico alla ETH03 mediante la console, niente paura .
- Selezioniamo <I> Ip manager e ci verrà proposto il seguente menu, con il riepilogo delle interfacce e con la possibilità di eseguire dei COMMANDS

non ci resta che selezionare <H> Dynamic IP configuration e a questo punto ci compare la scelta dell’interfaccia di default ” Interface [ETH00]: che modificheremo semplicemente scrivendo ETH03 ed invio, poi abiliteremo il DHCP Client scrivendo enabled seguito da un invio. Le due immagini successive mostrano le configurazioni

e al termine avremo un riepilogo della configurazione. Notiamo come il dhcp di VBox funziona egregiamente.

infatti la ETH03 ora ha un ip 192.168.56.4. Ora la prova del nove, Mozilla Firefox e ricordiamo che l’utenza per l’accesso web è admin e la password è zeroshell.
Proviamo, ricordandoci di accettare il certificato non verificato che ci segnala Mozilla, ad accedere.

e poi eccola alla luce

Non ci resta che configurarla per fare quello che ci serve. Ma prima vediamo ed esploriamo le sue possibilità.
Possiamo usarla come:
- router
- firewall
- dns forwarding
- dhcp server
- radius server
- radius proxy server
- Captive Portal
- web filter ( DansGuardian patch required)
- trasparent proxy
- IDS (patch required)
non male
direi grandioso ora vediamo come ….
Zeroshell al primo avvio utilizza un profilo di configurazione temporaneo caratterizzato dal nome di dominio EXAMPLE.COM. Questo profilo è funzionante ed è utilizzabile MA al successivo riavvio perderemo tutte le modifiche. Dobbiamo quindi prendere in considerazione un dispositivo per memorizzarlo. Possiamo usare un disco ide/sata/scsi e la configurazione prevedere
- l’inizializzazione del disco (fdisk)
- la formattazione del disco (mkfs)
- la memorizzazione del profilo sul disco stesso
In condizioni normali la configurazione avviene tutto dalla console web, quindi effettuiamo il login e selezioniamo Profiles
ci verranno mostrati tutti i supporti presenti siano ide, sata o scsi. Poniamo attenzione al disco sdc, tralasciando i miei sda e sdb anche presenti sul sistema.
Alla selezione della sezione Model: ATA VBOX HARDDISK (sdc) ci verrà mostrato in alto la sezione Storage Device: sdc
con la possibilità di una Raw view per ottenere le informazioni dettagliate sul disco
oppure New Partition che ci consentirà di inizializzare il disco sdc scegliendo una Label e un Filesystem type
tutto termina con la selezione di Create Partition e la pagina presenterà un avviso lampeggiante
Please wait: this operation may take a few minutes to complete.
ed infine ci presenterà la nuova partizione appena creata
La selezione della partizione rende disponibile un nuovo menu contestuale che tra le altre cose, ci permetterà di creare il profile [Create Profile].
Esaminiamo il Create Profile
La creazione del profile richiede
- una descrizione [ Description]
- un hostname compreso di full qualified domain name [Hostname (FQDN)]
- un REALM Kerberos 5
- un LDAP Base. Dalla documentazione di Fulvio Ricciardi: Utilizzato per memorizzare i dati riguardanti le zone del server DNS, gli attributi per il server RADIUS, l’autorizzazione degli utenti e degli host. Risponde ai client LDAPv2 e LDAPv3 e contiene gli schemi per la gestione degli Address Book centralizzati (compatibili con Netscape, Mozilla e Outlook) ) .
- la scelta di una password per l’utente admin
- la scelta dell’interfaccia ETH principale, normalmente la stessa da cui stiamo effettuando la configurazione web, nel mio caso mostra come scelta di default la ETH03
- la scelta di un gateway
Al termine, con la selezione di Create avremo il nuovo Profile EXAMPLE.COM con la presenza del database delle configurazioni _DB.001 .
In questa fase il profile non è ancora attivo, solo alla sua attivazione avremo la possibilità di rendere le modifiche permanenti. All’attivazione del profile seguirà un reboot della vm. Come ?
Alla selezione del profilo [_DB.001] ci verrà presentato il menu contestuale seguente
dove abbiamo diverse opzioni e in una prima installazione l’unica è Activate dove ci verrà proposto la seguente finestra. Noi sceglieremo Activate
Bene ora avremo il nostro REBOOT e la vm caricherà il nuovo profile come mostrato in figura
Notiamo che la User e la Password sono in chiaro e tra le scelte abbiamo <P> Change admin password che consente la variazione della password. Una volta cambiata la password questa non sarà più visualizzata in console.
Suggerimento provate a reinserire la stessa password come zeroshell e osservate i cambiamenti.
Ora torniamo alle altre scelte messe a disposizione nella stessa sezione di Create profile :
- Restore Profile che ci consente di ripristinare un profilo precedentemente salvato
- View FS che riassume il contenuto della partizione con lo spazio utilizzato
- Delete che ci permette di eliminare la partizione, infatti ci chiede di inserire un codice di conferma
- Format che ci permette di cambiare il tipo filesystem sulla partizione selezionata. Anche in questo caso ci viene chiesto di inserire un codice di conferma prima di eseguire il comando e la nuova Label da associare alla partizione.
Nella mia esperienza i comandi fdisk e mkfs possono essere utilizzati dalla command line di ZeroShell per poi registrare il profilo dalla console web. Mi sono ritrovato in questa condizione quando la console web mi restituiva un errore in fase di inizializzazione del disco. Come consiglio una lettura di man fdisk e man mkfs non guasta mai.
Prima di addentrarci nella configurazione voglio aggiungere le due patch. La loro aggiunta è semplice e ben documentata da Fulvio Ricciardi. I passi sono download e ./install.sh semplice no ?!?
| Codice (data) | DA12 (18 Ottobre 2009) |
| Descrizione | Snort IDS – Intrusion Detection and Prevention System |
| Release | 1.0.beta12 2.8.5 |
| Download | http://www.zeroshell.net/listing/DA12-Snort-2.8.5-1.0.beta12.tar.bz2 |
| Installazione | cd /Database wget http://www.zeroshell.net/listing/DA12-Snort-2.8.5-1.0.beta12.tar.bz2 tar xvfj DA12-Snort-2.8.5-1.0.beta12.tar.bz2 cd DA12 ./install.sh |
| Codice (data) | BA12 (14 Giugno 2009) |
| Descrizione | Installazione del pacchetto DansGuardian, che cooperando con il servizio di transparent proxy, consente di filtrare il traffico web non desiderato. La configurazione di default nega l’accesso alle pagine web contenenti materiale per soli adulti. |
| Release | 1.0.beta12 v1 2.8.0.6 |
| Download | http://www.zeroshell.net/listing/BA12-DansGuardian-Web-Content-Filter-2.8.0.6-1.0.beta12.tar.bz2 |
| Installazione | cd /Database wget http://www.zeroshell.net/listing/BA12-DansGuardian-Web-Content-Filter-2.8.0.6-1.0.beta12.tar.bz2 tar xvfj BA12-DansGuardian-Web-Content-Filter-2.8.0.6-1.0.beta12.tar.bz2 cd BA12 ./install.sh |
Io raccomando di far precedere la configurazione dal fantastico comando loadkeys it che ci consente di utilizzare la tastiera italiana invece di quella inglese di default, questo accedendo in console.
Al termine dell’installazione della patch DA12 riporta il seguente messaggio:
—————————————————————————–
Snort 2.8.5 has been installed. For information see the web site http://www.snort.org
—————————————————————————–
- The file /var/register/system/snort/Interfaces contains the network interfaces on which Snort captures the packets (default ETH00)
- The file /etc/snort.conf contains the configuration of Snort
- To restart Snort daemon use the command: service snort restart
- To check the alerts use the Log Viewer of the web interface in the section [snort]
Mentre al termine dell’installazione della patch BA12 avremo il seguente messaggio :
—————————————————————————–
DansGuardian 2.8.0.6 has been installed. Please, read the licensing notes at the URL http://dansguardian.org/?page=copyright2
—————————————————————————–
- The configuration files are located in /etc/dansguardian. For more details look at the URL http://www.zeroshell.net/eng/dansguardian ; – By default, the “Access Denied” messages are logged with the IP address of the clients. Take care to avoid to violate the privacy of the users. To change the log level, look at the configuration item “loglevel” in the file /etc/dansguardian/dansguardian.conf; – Keep in mind that DansGuardian works only if the transparent proxy service is enabled and the “HTTP Capturing Rules” are configured; – To tune the point of intervention of the filters, change the parameter “naughtynesslimit” in the file /etc/dansguardian/dansguardianf1.conf.
Un piccolo aiutino nel caso in cui vorremo rivedere queste fantastiche informazioni, dobbiamo guardare nei file ./scripts/30print all’interno delle directory delle corrispondenti patch.
La prima configurazione, necessaria, ora che abbiamo un profilo permanente è nella sezione network. Il nostro scopo è ottenere tre sottoreti e Zeroshell per queste farà da
- router
- dhcp server
- dns forwarding
- radius server
- radius proxy server
- Captive Portal
- web filter
- trasparent proxy
Rivediamo la topologia della rete
riporto l’immagine anche con la corrispondenza tra le interfacce HOST [zs0/zs1/ws0] e quelle GUEST [ ETH00/ETH01/ETH02 ]
Scegliamo come indirizzi da assegnare a Zeroshell il .75 per tutte e tre le sottoreti. La configurazione si effettua mediante console web dalla sezione Setup scegliendo
dove ci verranno presentate tutte le ETH presenti. Come solita accortezza verifichiamo la corrispondenza dei MAC address tra le interfacce configurate sul host e quelle configurate sul guest, sempre e solo se state usando Opensolaris e Crossbow.
idefix@morano: $ dladm show-vnic zs0
LINK OVER MACADDRESS
zs0 lefth1 2:8:20:ef:2e:18
idefix@morano: $ dladm show-vnic zs1
LINK OVER MACADDRESS
zs1 right1 2:8:20:41:19:2d
idefix@morano: $ dladm show-vnic ws0
LINK OVER MACADDRESS
ws0 wireless1 2:8:20:f1:6e:9f
Fatta la verifica assegniamo il 192.168.0.75 a ETH00 il 192.168.1.75 a ETH01 ed infine alla ETH02 il 192.168.2.75 . La modifica dell’ip avviene, dopo aver selezionato la corrispondente interfaccia, mediante la selezione di
e con la visualizzazione del pop-up che dovremo compilare con l’ip e la sottorete
ed alla conferma avremo il riepilogo 
ripetiamo la procedura per le altre interfacce con il seguente risultato
ora non resta che verificare che il forwarding tra le interfacce sia abilitato.
La verifica la otteniamo spostandoci nella sezione laterale
e verificando che nella nuova pagina che sia spuntata la casellina Enabled
Lo schema di rete prevede che le sottoreti 192.168.1.0 e 192.168.2.0 siano mascherate tramite l’interfaccia ETH00. Il motivo è che nella realizzazione presso l’Università di Bari alla ETH00 è associato un indirizzo pubblico, quindi abbiamo la necessità di NATtare le due sottoreti private. Il menu che ci consente questa configurazione è presente nella stessa pagina
.
Di seguito riporto il pop-up della configurazione, come regola aurea, la selezione dell’interfaccia è legata all’interfaccia che vogliamo effettui il nat delle connessioni in uscita.
Ora che il nostro router è quasi pronto, lo configuriamo anche come DHCP server. Alla fine potremo effettuare delle prove di raggiungibilità e connessione dai client sulle tre sottoreti verso il router in maniera trasparente.
Selezioniamo dal menu laterale DHCP
ed avremo la possibilità di scegliere la ETH su cui andare a configurare la sottorete corrispondente
alla scelta di New avremo il pop-up per la configurazione della sottorete e nel caso di più interfacce avremo un menu a tendina che ci consentirà di selezionare la corrispondente interfaccia
( in questo esempio abbiamo selezionato la ETH00 )
e selezionare l’intervallo degli ip che verranno assegnati ai client e salvare le modifiche [Save]
abbiamo anche la possibilita di assegnare sempre lo stesso ip ad un client (per esempio stampanti o altri servizi di rete). La selezione di Add nel menu Static IP Entries farà comparire il pop-up dove compilare l’associazione tra IP e MAC.
al termine [OK] avremo il riepilogo con la lista degli ip associati staticamente in base al loro MAC
Bene attiviamo la vm radius attesato sul vswitch [ lefth1 ] dove si affaccia la zs0/ETH00 di zeroshell ed ecco il risultato
e dopo aver verificato la connettività con il semplice ping sulla stessa sottorete, verifichiamo anche che il forwarding funzioni indirizzando un ip della sottorete 192.168.1.0.
La risposta dal ping è da un client MS Windows attestato attraverso il vswitch [ rigth1 ] dove si affaccia la zs1/ETH01
Un successo
Seguiamo la documentazione di Fulvio per utilizzare i DNS di OpenDNS per consentire a Zeroshell di memorizzare in cache le richieste di domain name resolution.
Il risultato è un miglioramento in termini di prestazioni nelle risposte di risoluzione nome. Selezioniamo dal menu a sinistra la voce DNS
ed avremo il menu contestuale
con la possibilità di scegliere Forwarders e la comparsa del pop-up
che compileremo come da documentazione:
“Per configurare il server DNS di Zeroshell come descritto, cioè affinché usi i DNS OpenDNS come forwarders, bisogna semplicemente visualizzare la sezione [DNS][Forwarders] ed aggiungere i server con IP 208.67.222.222 e 208.67.220.220 separati da una virgola e specificando il dominio ANY (qualsiasi dominio).“
il risultato è il seguente
Da poco ho scoperto che Google mette a disposizione dei dns pubbici.
Possiamo trovare tutto a proposito di GOOGLE PUBLIC DNS presso il link http://code.google.com/speed/public-dns/docs/using.html e qui riporto l’introduzione:
Why Google Public DNS?
As web pages become more complex and include more resources from multiple origin domains, clients need to perform multiple DNS lookups to render a single page. The average Internet user performs hundreds of DNS lookups each day, slowing down his or her browsing experience. As the web continues to grow, greater load is placed on existing DNS infrastructure.
Since Google’s search engine already crawls the web on a daily basis and in the process resolves and caches DNS information, we wanted to leverage our technology to experiment with new ways of addressing some of the existing DNS challenges around performance and security. We are offering the service to the public in the hope of achieving the following aims:
- Provide end users with an alternative to their current DNS service. Google Public DNS takes some new approaches that we believe offer more valid results, increased security, and, in most cases, better performance.
- Help reduce the load on ISPs’ DNS servers. By taking advantage of our global data-center and caching infrastructure, we can directly serve large numbers of user requests without having to query other DNS resolvers.
- Help make the web faster and more secure. We are launching this experimental service to test some new ways to approach DNS-related challenges. We hope to share what we learn with developers of DNS resolvers and the broader web community and get their feedback.
Useremo la stessa sintassi compilando nel campo Domain ANY e nel campo Server gli ip 8.8.8.8 e 8.8.4.4 separati da una virgola.
Notiamo che avendo “copiato” il profilo EXAMPLE.COM nella sezione DNS è presente la sezione SOA Start Of Authority così come possiamo vedere i domini
ma diversamente (in una configurazione da zero) possiamo tralasciare la configurazione nelle sezioni Master Zones e concentrarci sulla sola abilitazione mediante la check box
e la compilazione della sezione Forwarders così come abbiamo già visto.
Abilitazione del RADIUS SERVER e del servizio di PROXY RADIUS
Ma perchè utilizzare radius ?
Vogliamo usare due fonti di autenticazione diversi uno interno [ Kerberos] ed uno esterno [ LDAP] a Zeroshell. Il risultato lo otteniamo mediante RADIUS [ FreeRADIUS ] e le sua capacità di proxy.
Il risultato è nella possibilità di utilizzare le capacità sia di Zeroshell [ Captive Portal ] sia di servizi esterni [pGina] attraverso la mediazione del servizo RADIUS.
All’opera …. dal menu laterale scegliamo RADIUS
e modifichiamo lo stato da DOWN a ACTIVE mediante la selezione della check box Enabled
e dopo l’abilitazione la salviamo [ Save ]
e radius c’è…
Dobbiamo definire le sottoreti o gli ip da cui vogliamo accettare le richieste [grazie peppe] quindi selezioniamo Access Point e visualizzeremo il pop-up Access Point List
La compilazione da me immaginata è
- Access Point Name, un nome di fantasia ma significativo nel mio caso _rete_192.168.1
- IP or Subnet, l’ip o la sottorete da cui proverrà la richiesta radius, 192.168.1.0
- Shared Secret, la chiave di autenticazione usata da client e server radius, testing123. Questa password RADIUS è di default in una installazione Debian/Ubuntu. Ovviamente da cambiare in produzione
La Shared Secret deve coincidere con quella del server radius. La sezione
è il quid che ci serve, e la sezione di Proxy RADIUS Configuration riporta già configurato la sezione Realm LOCAL definita in fase di Create Profile
aggiungiamo un nuovo Realm del tipo Remote [nel nostro esempio è PRIVATO, lo stesso del Dipartimento di Diritto Privato dell'Università degli Studi di Bari] . Se non compiliamo Auth Port e Acct Port a questi campi verrà aggiunto il valore di default. Infine il Secret che rappresenta il valore segreto usato da client e server radius.
alla conferma [Add] avremo il riepilogo della configurazione 
Vogliamo vederlo in azione con pGina?
Ma prima vediamo cosa implica No Strip difatti solo dopo aver letto la documentazione di Fulvio , di FreeRADIUS e fatto delle prove mi sono reso conto che la corretta configurazione nella sezione proxy deve essere la seguente
dove il chek box non deve essere spuntato, infatti al fianco all’indirizzo del proxy server NON compare più tra parentesi NS, come compariva nell’immagine precedente.
Il test della configurazione è semplice utilizziamo il Login di pGina e vediamo se gli utenti radius proxyati sono riconosciuti
Ora tutti gli utenti presenti sull’LDAP ETERNO sono anche autorizzati ad accedere ad i client Windows XP
anche il log di Zeroshell riporta come l’accesso radius sia OK
20:34:40 Login OK: [pippo@privato] (from client _rete_192.168.2 port 628 cli 192.168.2.80)
Gli utenti creati all’interno di Zeroshell possono accedere agli stessi client XP, la sola differenza è che NON devono far seguire alla propria username il suffisso Realm del proxy server, nel nostro caso @privato
Per poterlo provare dobbiamo creare un utente.
Utilizziamo il menu laterale
e ci verrà proposto il menu contestuale
dove avremo il solo utente admin. Aggiungeremo il nuovo utente con Add e ci verrà proposto il menu
che compileremo con le informazioni richieste.
tutte le impostazioni non esplicitamente selezionate verranno compilate con le informazioni di default. Alla conferma [Submit] ci verrà mostrato il certificato creato. Nulla da fare solo guardare ed ammirare e passare al menu List per il riepilogo
dove avremo la visualizzazione degli utenti complessivi.
Come si comporta ora pGina con il nuovo utente ?
come potete vedere non abbiamo aggiunto nulla dopo la username e di conseguenza verrà riconosciuto come utente RADIUS locale, infatti
ed ancora una volta il log di ZeroShell ci conferma la richiesta radius OK
20:56:46 Login OK: [aurelio] (from client _rete_192.168.2 port 628 cli 192.168.2.80)
In questa stessa maniera avremo la possibilità di autenticare gli utenti tramite il Captive Portal.
L’abilitazione del Captive al momento è limitata ad una SOLA interfaccia anche sul FORUM è possibile trovare una esperienza per l’abiliazione del captive su più di una interfaccia. Nel mio caso specifico i client XP viaggiano solo con pGina e non mi resta che preoccuparmi di chi vuole usare il “proprio” pc mediante una connenssione wi-fi. Il contesto è una sala di consultazione all’interno di una Biblioteca. Vogliamo dare un servizio ai soli utenti registrati.
Un access point risponde alle nostre esigenze, creiamo un SSID senza nessun WEP/WPA e facciamo fare il lavoro a Zeroshell. L’access point usa la sottorete 192.168.1.0 e tutti i client riceveranno tutte le informazioni (ip,dns, gw) dal ZeroShell .
L’abilitazione del captive sarà su ETH1.
Scegliamo dal menu laterale il menu Captive Portal
ed avremo la seguente sezione dove potremo selezionare l’interfaccia [Interface] che rende disponibile il servizio di Captive e il modo in cui vogliamo utilizzarlo [Mode] sia Routed o Bridge. La nostra scelta ricade su Routed, rimandando alla documentazione di Fulvio per le differenze.
dove abbiamo selezionato l’interfaccia di erogazione [ETH02] e dei parametri [ Gateway Parameters ] come l’identificazione dei client in base all’IP and MAC address o la possibilità di connessioni simultanee [ Simultaneous Cennection = Not allowed ]
La sezione Authentication è quella che più che rende ottimale per i miei scopi ZS
Nella sezione Authorized Domanis abbiamo il segno + che ci permette di aggiungere il nostro nuovo dominio di autenticazione
che compiliamo selezionando un nome [Domain Name] e il tipo [Domain Type]. La configurazione termina con la conferma delle modifiche [Save]
e la loro attivazione
Il risultato è evidente dalle seguenti immagini dove abbiamo dato la possibilità di accesso sia agli utenti definiti in ZeroShell sia a quelli mediante attraverso il proxy Radius
alla selezione del Network Access vedremo la connessione ed il pop-up che NON dovremo chiudere per non essere disconnessi
Ed ora un prova con un utente del nuovo dominio “PRIVATO” .
Osserviamo che abbiamo selezionato il dominio tramite il menu a tendina in corrispondenza di Domain
ed ecco ricomparire il pop-up che ci conferma la navigazione “captive“
Infine ecco i log
| 18:49:41 | AS: Success: Captive Portal Authentication Server started |
| 18:49:42 | GW: Success: Captive Portal Gateway started (0 clients connected) |
| 18:58:03 | AS: http session (Client: 192.168.2.80) captured for authentication (AS: 192.168.2.75) |
| 18:58:07 | AS: https session (Client: 192.168.2.80) captured for authentication (AS: 192.168.2.75) |
| 18:59:46 | AS: trying Kerberos 5 (Local KDC) authentication for aurelio@EXAMPLE.COM (Client: 192.168.2.80) |
| 18:59:46 | AS: Success: user aurelio@EXAMPLE.COM (Client: 192.168.2.80) successfully authenticated (Username,Password) |
| 18:59:47 | GW: Success: user aurelio@EXAMPLE.COM (IP: 192.168.2.80 MAC: 02:08:20:C1:B1:F0) connected |
| 19:00:41 | GW: disconnection request from the user aurelio@EXAMPLE.COM (Client: 192.168.2.80) |
| 19:00:42 | GW: Success: user aurelio@EXAMPLE.COM (IP: 192.168.2.80 MAC: 02:08:20:C1:B1:F0) disconnected |
| 19:01:01 | AS: https session (Client: 192.168.2.80) captured for authentication (AS: 192.168.2.75) |
| 19:01:04 | AS: https session (Client: 192.168.2.80) captured for authentication (AS: 192.168.2.75) |
| 19:01:33 | AS: trying Radius authentication (PAP) for pippo@privato (Client: 192.168.2.80) |
| 19:01:36 | AS: Radius authentication (PAP) failed for pippo@privato (Client: 192.168.2.80) |
| 19:01:36 | AS: warning: authentication failed for the user pippo@privato (Client: 192.168.2.80) |
| 19:01:42 | AS: https session (Client: 192.168.2.80) captured for authentication (AS: 192.168.2.75) |
| 19:03:09 | AS: trying Radius authentication (PAP) for pippo@privato (Client: 192.168.2.80) |
| 19:03:09 | AS: Success: user pippo@privato (Client: 192.168.2.80) successfully authenticated (Username,Password) |
| 19:03:10 | GW: Success: user pippo@privato (IP: 192.168.2.80 MAC: 02:08:20:C1:B1:F0) connected |
| 19:03:33 | GW: disconnection request from the user pippo@privato (Client: 192.168.2.80) |
| 19:03:33 | GW: Success: user pippo@privato (IP: 192.168.2.80 MAC: 02:08:20:C1:B1:F0) disconnected |
Per finire abilitiamo sia il Connection Tracking dalla sezione Firewall
sia il proxy http [HTTP PROXY]
mediante la selezione delle interfacce su cui transiterà il traffico degli utenti. Nel nostro caso ETH01 e ETH02.
la visione d’insieme è la seguente
Buon Zeroshell a tutti
Ciao


































































Manca un passaggio: cose bisogna configurare/installare su AD perché faccia da server RADIUS? Ci sto sbattendo la testa da un tot ma ancora qualcosa mi sfugge…
Ciao, nel mio caso ho utilizzato un server radius esterno con il backend LDAP e configuraro Zeroshell come proxy radius per gli utenti presenti su ldap. Ma nessun active directory. Avevo un dominio samba con ldap.