FACOLTÀ DI SCIENZE E TECNOLOGIE Corso di Laurea in Informatiche. Dipartimento di Matematica e Informatica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "FACOLTÀ DI SCIENZE E TECNOLOGIE Corso di Laurea in Informatiche. Dipartimento di Matematica e Informatica"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI CAMERINO FACOLTÀ DI SCIENZE E TECNOLOGIE Corso di Laurea in Informatiche Dipartimento di Matematica e Informatica TRAFFIC SHAPING Relazione di Politiche delle reti e sicurezza Professorssa Maria Laura Maggiulli Studente Mario Gabrielli ANNO ACCADEMICO 2006/ 2007

2 1. Il firewall Un firewall è un sistema o un gruppo di sistemi che realizza una metodologia di controllo degli accessi tra due o più reti. Può essere schematizzato attraverso una coppia di meccanismi: uno che realizza il blocco del traffico, l altro che lo accetta. Alcuni firewall ripongono maggiore enfasi sul primo aspetto, altri sul secondo. La prerogativa fondamentale consiste nel decidere la politica di sicurezza da adottare prima della realizzazione fisica della rete. È infatti di fondamentale importanza che l amministratore sappia con assoluta precisione quali e quanti servizi offrire al mondo esterno attraverso la propria rete, quali privilegi concedere agli utilizzatori dei terminali interni e come strutturare fisicamente la rete stessa. Spesso un sistema di protezione quale un firewall risulta complesso da configurare e richiede delle conoscenze avanzate che riguardano la struttura intrinseca e il funzionamento della rete, la conoscenza dei protocolli, i meccanismi di comunicazione tra le diverse tipologie di reti. 1.1 I vantaggi Secondo un principio generale, un firewall viene realizzato sia per concedere alle postazioni interne un numero limitato di operazioni (sarà l amministratore a dover valutare la fiducia che ripone nei proprio utenti), sia, soprattutto, per proteggere la rete interna da connessioni non autorizzate provenienti dal mondo esterno. Un altro elemento di forza viene realizzato progettando una struttura di rete che porti il firewall ad essere l unico punto di contatto tra la rete locale privata e la rete esterna. In tal modo sarà possibile mettere a disposizione un importante meccanismo di logging degli accessi e del transito delle informazioni oltre a permettere un effettivo controllo del traffico 2

3 nelle due direzioni. Un firewall mette inoltre a disposizione dell amministratore di rete dei dati molto importanti quali il traffico generato dalla rete stessa e insieme all IDS, l elenco dei tentativi di intrusione. 1.2 I punti deboli Un sistema illustrato in questi termini, presenta però alcuni punti deboli da non sottovalutare: infatti, un firewall non è ovviamente in grado di proteggere da attacchi che non transitano attraverso di esso. Per esempio, se venisse istaurato un collegamento di tipo dial-up da un terminale presente nella rete interna verso l esterno, il firewall non sarà in grado di attuare le misure di sicurezza per le quali è stato creato dato che la connessione generata dall utente non trasiterà più attraverso di esso e darà la possibilità ad un ipotetico intruso di utilizzarla per prendere il controllo della rete interna. Un sistema di firewalling, inoltre, non è in grado di proteggere la rete interna da attacchi generati dalla rete stessa. Infatti il traffico rimarrà contenuto all interno senza mia oltrepassarlo e pertanto escludendolo. 1.3 Tipologia di firewall Un firewall in genere è composto da uno o più computer che si pongono tra le reti private e quelle esterne (es. internet) con il preciso scopo di controllare ciò che transita da una rete verso l altra. In particolare sono utilizzati per stabilire a quali servizi (www, ftp, mail,...) presenti nella rete internet è possibile accedere dalla rete locale, e quali possono essere resi disponibili alle reti esterne. 3

4 La necessità di questi controlli è dovuta al fatto che i sistemi operativi (Windows, Mac, Linux,...), i protocolli utilizzati per lo scambio dei dati tra le reti (TCP/IP), e i programmi, hanno una serie di limiti, errori di programmazione che possono esporre la propria rete a diversi attacchi. Questi attacchi possono permettere ad una persona con le giuste informazioni e con particolari programmi (exploit) di individuare eventuali vulnerabilità e di accedere e modificare una macchina. L intruso potrebbe quindi apportare delle modifiche che gli consentano di accedere in qualsiasi momento senza essere scoperto (backdoor), oppure di sfruttarla per sottrarre informazioni (progetti confidenziali, password,...), per coinvolgerla in attacchi DoS (Denial of Service), DDoS (Distribuited Denial of Service)... Le soluzioni adottate per proteggere le reti, viste anche le diversità dei sistemi, sono varie. L'ICSA (www.icsalabs.com/), ente che certifica l affidabilità di un prodotto firewall, non è legato ad alcun produttore specifico di firewall ed esegue i test acquisendo i prodotti direttamente dal mercato e provandoli all interno delle proprie strutture. Il protocollo di analisi è rigoroso e solo i prodotti che risultano positivi a tutti i test divengono certificati e acquisiscono il diritto di esporre il marchio ICSA Labs Certified nella documentazione tecnica, nella scatola e in tutta la comunicazione commerciale. Tale ente, ha individuato tre tipologie di firewall: 4

5 packet filtering; application gateway; packet inspection. 1.4 Packet filtering La soluzione più semplice di firewall è rappresentata da router, posti tra le due reti, che filtrano i pacchetti. Lo scopo principale di questa soluzione è, infatti, quello di intercettare i pacchetti e consentire il passaggio esclusivamente al traffico autorizzato. Il firewall in questo caso esamina le informazioni del pacchetto dei dati, ossia rispettivamente gli indirizzi IP (di partenza e di destinazione) e i numeri di entrambe le porte contenuti nell header (testata del messaggio). La sua analisi non va in ogni caso oltre l header. I pacchetti vengono inoltrati o rifiutati in base alle regole di filtro impostate dall amministratore di rete. Il problema principale con la tecnica del packet filtering è che si tratta di un sistema basato sugli indirizzi IP, elementi che offrono labili garanzie di sicurezza. Un host è in grado di aggirare questo tipo di firewall sostituendo il proprio indirizzo IP di origine con uno autorizzato e accedere indisturbato alla rete privata. Con la tecnica del packet filtering, la gestione di alcuni protocolli risulta piuttosto critica perché obbliga all apertura di un varco nel firewall che, se non correttamente impostato, potrebbe mettere a repentaglio la sicurezza dell intera rete. Usare unicamente la tecnologia di filtro dei pacchetti, in linea di massima, non garantisce un livello adeguato di sicurezza. Le soluzioni oggi presenti sul mercato tendono, infatti, a fornire una combinazione di questa tecnica con altre, come per esempio quella che si basa su di un server proxy. 5

6 1.5 Application gateway Un gateway di applicazione intercetta il traffico e autentica gli utenti a livello di applicazioni TCP/IP. Un utente sulla rete privata accede al proxy che lo autentica, dopodichè ha accesso al server remoto che si trova su internet. In maniera analoga, tutte le comunicazioni provenienti da internet e dirette alla rete privata vengono ricevute dal proxy, analizzate e successivamente, previa autorizzazione, inoltrate a destinazione. Lavorando a questo livello, è necessario predisporre un server proxy per ogni applicazione. Per evitare accessi indesiderati, il sistema di autenticazione deve essere assolutamente sicuro. 1.6 Packet inspection L approccio di un firewall che si basa sulla tecnica della packet inspection è rappresentato dall analisi dei pacchetti piuttosto che dal solo filtraggio: in altri termini vengono controllati anche i contenuti del pacchetto IP oltre agli indirizzi. Questa tipologia di firewall, detta anche circuit-level gateway, offre il massimo grado di affidabilità. A differenza dell application gateway, questo tipo di soluzione richiede, al momento dell accesso da parte di un utente al server internet, la modifica del software client. La nuova generazione di browser, per esempio, ormai supporta automaticamente questo tipo di accesso. 6

7 2. Struttura e funzionalità principali di IPTables IPTables è un pacchetto open source operante in ambiente GNU/Linux che utilizza gli strumenti messi a disposizione dai kernel della serie 2.4, 2.6 e successivi. Il programma IPTables rappresenta solo un applicazione in spazio utente. Quando un pacchetto IP entra nel firewall, viene passato al corrispondente driver all interno del kernel. Quindi il pacchetto attraverserà una serie di stati prima di essere inviato ad un applicazione locale o inoltrato attraverso un altra interfaccia di rete. IPTables è strutturato internamente attraverso delle catene (chains). Un pacchetto, una volta immesso in una di queste, può essere bloccato o accettato, a seconda delle regole impostate dall utente. Un altro concetto importante è quello di tabella (table). Non appena IPTables viene caricato all interno del kernel, verranno create tre tabelle e diverse catene già preimpostate. 2.1 Le catene e le regole La configurazione di un firewall avviene attraverso la dichiarazione di regole (rules). Ogni regola dovrà essere inserita in un contesto più ampio, ossia all interno di una catena 7

8 (chain). Una regola può essere definita come un indicazione alla quale il firewall dovrà attenersi per decidere se accettare o rifiutare i pacchetti appartenenti alle differenti connessioni. In ultima analisi, consiste nell intraprendere una particolare azione nel caso in cui si verifichino alcune precondizioni. Per ogni pacchetto e per ogni regola, il kernel, verificherà che tutte le condizioni siano rispettate (match) e, in tal caso, inoltrerà il pacchetto verso la catena specificata (operazione di jump). Le catene principali, ordinate a partire dall arrivo del pacchetto fino alla sua successiva ripartenza attraverso un altra interfaccia di rete, sono: PREROUTING: ogni pacchetto che giunge al firewall proveniente da qualsiasi interfaccia, arriva in questa catena, a monte della decisione di routing. Viene quindi principalmente utilizzata per il DNAT. Infatti, la modifica dell indirizzo di destinazione, influenzerà direttamente la decisione di routing da prendere per quanto riguarda il pacchetto; INPUT: ogni pacchetto destinato direttamente al firewall entra in questa catena. In tal modo sarà possibile definire a quali servizi presenti sulla macchina permettere l accesso dalle diverse interfacce; OUTPUT: ogni pacchetto che viene generato direttamente dal firewall transita da questa catena; FORWARD: ogni pacchetto che viene generato da un interfaccia di rete destinato ad un altra entra in questa catena. Sarà quindi possibile gestire, a seconda delle esigenze della propria rete, le diverse interconnessioni permettendo, ad esempio, alla LAN interna di accedere ad internet ma impedendo l accesso dall esterno alla propria rete privata; POSTROUTING: ogni pacchetto arriva in questa catena a valle della decisione di routing, appena prima di lasciare il firewall. Viene 8

9 principalmente utilizzata per il SNAT. Infatti, la modifica dell indirizzo sorgente, appena prima che il pacchetto lasci il firewall, permette la sostituzione dell IP di rete privata, quindi non indirizzabile da internet, con un altro indirizzo pubblico (solitamente quello del firewall stesso). Ogni regola permette di ricercare dei riscontri su un ampia gamma di parametri; tra i più comuni ed utilizzati si devono citare la verifica del protocollo, l indirizzo di sorgente e di destinazione, le porte coinvolte nella connessione. Tutti questi elementi possono essere utilizzati per effettuare un corretto filtraggio e per prendere una decisione per quanto riguarda la sorte del pacchetto. Per capire quando e come agiscano queste catene seguiamo il percorso di un pacchetto IP dalla scheda di rete esterna a quella interna senza la presenza del software di firewall IPTables. Dopo essere entrato dalla scheda di rete esterna, il pacchetto viene aperto e ne viene analizzato l header alla ricerca dell indirizzo di destinazione. Questo indirizzo viene confrontato con la tabella di routing della macchina e quindi instradato verso una porta locale o verso la scheda di rete appropriata se l indirizzo di destinazione è differente da quello associato al firewall. Prima di proseguire, visto che abbiamo tirato in ballo la tabella di routing, vediamo che funzione svolge nel processo di trasporto del pacchetto. La tabella di routing, viene utilizzata per decidere dove instradare il pacchetto IP in base all indirizzo di destinazione presente nell header. Essa contiene un associazione tra blocchi di indirizzi internet e risorse con cui tali indirizzi possono essere raggiunti. Le risorse possono essere interfacce di rete locali o indirizzi IP di computer detti gateway. Di seguito vi è un esempio di una banale tabella di routing di una machina con una sola interfaccia ethernet. Linux nomina le interfacce di rete ethernet con il suffisso eth, numerandole poi in base alla posizione all interno degli slot ISA/PCI. 9

10 Dalla tabella sovrastante si evidenzia: l indirizzo , il così detto indirizzo di loopback, mappato sull interfaccia (virtuale) lo; gli indirizzi della rete locale da a mappati sulla scheda di rete eth0; l indirizzo / , l ultima risorsa nel caso che le altre rotte non vengano applicate al pacchetto e che, di solito, corrisponde all indirizzo del router/gateway verso internet. Ritorniamo all analisi del tragitto percorso dal nostro pacchetto IP e vediamo cosa accade in presenza del firewall IPTables. Il pacchetto entra dall interfaccia esterna e viene sottoposto, prima del processo di routing, all applicazione delle direttive presenti nella lista PREROUTING. Usualmente, in tale catena vengono inserite regole che tendono a evidenziare il pacchetto per distinguerlo dagli altri pacchetti ed eseguire su di esso adeguate operazioni nelle successive fasi del processo di trasporto. (DNAT). In tale fase vengono anche applicate le regole per la gestione del destination NAT 10

11 Il pacchetto subisce il processo usuale di routing in base alla tabella presente nella macchina locale. Se il pacchetto, in base alla tabella di routing, è destinato all interfaccia di rete interna vengono applicate le regole descritte nella lista di FORWARD. Usualmente sono questi i filtri più importanti in quanto definiscono cosa può passare dall esterno verso l interno e cosa no. Se il pacchetto è destinato, in base alla tabella di routing, alla macchina locale vengono applicate le regole descritte nella lista di INPUT. Questi filtri proteggono il firewall stesso da accessi indesiderati. Se il pacchetto ha come sorgente la macchina locale, ossia è stato generato da un processo della macchina locale vengono applicate, al pacchetto, le regole di OUTPUT. 11

12 Sia nel caso di forward che di output, prima di uscire dalla scheda di rete interna, il pacchetto subisce l applicazione delle direttive di POSTRUTING. In tale fase vengono di solito applicate le regole per il source NAT (SNAT). In ognuno di questi step ogni direttiva si chiede sostanzialmente: se l header del pacchetto verifica certe condizioni, che cosa devo fare del pacchetto? La risposta a questa domanda può essere o di accettare il pacchetto che continua nel suo percorso all interno delle altre direttive e degli altri step o rigettare il pacchetto che viene definitivamente buttato via. In ogni step, se il pacchetto non verifica nessuna delle condizioni impostate, può essere definita una regola di default da applicare al pacchetto che verrà quindi accettato o rigettato. Usualmente si ritengono sicuri ed accettabili i pacchetti provenienti dall interno e destinati verso l esterno e quindi, in particolare, i pacchetti che hanno come sorgente il firewall saranno permessi e quindi l impostazione ovvia di default del processo di OUTPUT sarà quella di ACCEPT. Quello che si vuole invece evitare, a meno di eccezioni, e che dall esterno si possa impunemente accedere verso l interno. Ecco perché è usuale impostare a DROP la configurazione di default dei processi di FORWARD e di INPUT. Sarebbe un errore lasciare ad ACCEPT queste regole e tentare di chiudere tutti i servizi interni. Il firewall serve, in particolare, per chiudere tutto, anche quello che neanche si sa di avere aperto. Negando tutto e accettando solo ciò che si considera come corretto si è 12

13 sicuri che se dall esterno si accede ad una data risorsa interna è perché siamo stati noi a richiederlo. Il primo banale script di configurazione del nostro firewall sarà quindi (il flag -P imposta per l appunto la politica di default per il processo): -P INPUT DROP -P FORWARD DROP -P OUTPUT ACCEPT 3. Le tabelle Innanzitutto analizziamo in dettaglio le tabelle che vengono create: 3.1 FILTER Si tratta della tabella più importante e viene utilizzata per effettuare il filtraggio vero e proprio sui pacchetti che transitano attraverso le interfacce del firewall (packet filtering). 3.1 NAT Questa tabella deve essere utilizzata per eseguire NAT (Network Address Translation), quindi per tradurre l indirizzo sorgente o destinazione presente nell header dei pacchetti IP). IPTables implementa due tipi diversi di NAT: SNAT (Source Network Address Translation): Tecnicamente l SNAT modifica, nell header dei pacchetti, l indirizzo IP del sorgente facendo credere al destinatario del pacchetto che esso provenga da un altro indirizzo IP. 13

14 Questo permette anche a chi non è fisicamente in internet di navigare per la rete. Spieghiamo questo con un esempio: Consideriamo due computer, uno con Windows 2000 Professional e uno con Linux, collegati alla stessa rete locale. Ai due computer sono assegnati due indirizzi IP intranet del blocco /24 e, in particolare, la macchina Linux ha un indirizzo IP assegnato alla sua scheda di rete eth mentre la macchina Windows ha l indirizzo Il protocollo TCP/IP è indipendente dal sistema operativo e quindi, tramite esso, le due macchine si vedono sulla rete locale. Sulla macchina Linux vi è anche un altra scheda di rete eth0 alla quale viene assegnato un indirizzo internet aaa.bbb.ccc.ddd dal DHCP. La macchina Linux ha quindi, due indirizzi IP assegnati, uno interno, con cui vede la macchina Windows, e uno esterno, tramite il quale risulta visibile e vede la internet. La prima cosa da fare, per far accedere ad internet anche la macchina Windows, consiste nell informare il modulo TCP/IP della macchina, che esiste sulla rete locale, una macchina che sa come inviare pacchetti ad internet. Ciò consiste nel configurare il gateway di default della macchina Windows impostandolo con l indirizzo IP della macchina Linux. Per tale operazione viene utilizzato l indirizzo locale in quanto l altro è già un indirizzo internet e la macchina Windows 2000 non sa come raggiungere la rete. 14

15 Con questa configurazione una richiesta della macchina Windows destinata a internet giunge sulla macchina Linux che instrada il pacchetto sulla sua rotta di default che, risulta settata proprio su tale linea. Sembra che già tutto funzioni ma in realtà non funziona niente. L unica macchina che il router ha autorizzato a navigare è la macchina Linux. Quando il router vede arrivare dei pacchetti dalla macchina Windows con indirizzo di sorgente rigetta tali pacchetti in quanto, dal suo punto di vista, sono pacchetti anomali perché gli unici pacchetti che dovrebbero arrivare devono avere indirizzo di sorgente aaa.bbb.ccc.ddd. Quando arriva il pacchetto dalla macchina Windows, IPTables si segna l header che dovrebbe assumere il pacchetto di risposta ad esso associato e sostituisce l indirizzo di sorgente del pacchetto in transito con il suo indirizzo internet aaa.bbb.ccc.ddd instradandolo verso la eth0 connessa ad internet. Ora il router non ha più nessun motivo per rigettare il pacchetto in quanto, dal suo punto di vista, esso proviene dal soggetto legittimamente autorizzato a navigare lungo quella connessione. La cosa non finisce però qui in quanto il server remoto invia la risposta alla macchina Linux che si vede arrivare una risposta per una richiesta che non ha fatto. Qui interviene di nuovo il SNAT che si accorge, controllando l header del pacchetto con quello salvato sopra, che questo flusso di dati remoti va dirottato alla macchina Windows. Sostituisce allora all indirizzo del destinatario, attualmente settato sull header del pacchetto di risposta, l indirizzo IP della macchina Windows e glielo invia. La macchina Windows si vede arrivare il pacchetto di risposta che si aspettava. La macchina Windows naviga quindi per interposta persona in quanto è la macchina Linux che la fa navigare mascherando di volta in volta l indirizzo sorgente della macchina locale. Vediamo ora tecnicamente come si configurano le cose sulla macchina Linux con 15

16 IPTables. La configurazione dell SNAT è molto semplice e consiste nell attivazione della tabella di NAT nel processo di POSTROUTING tramite l impostazione: -t nat A POSTROUTING o eth0 j MASQUERADE deve eth0 è l interfaccia di uscita verso internet. Come si vede non appare alcun indirizzo IP nella configurazione in quanto il sistema provvede automaticamente a ricavare l indirizzo dinamico assegnato di volta in volta dal provider e di utilizzarlo per lo SNAT. Se la situazione è quella di un indirizzo statico con pochi indirizzi IP è meglio utilizzare questa configurazione: -t nat A POSTROUTING o eth0 j SNAT -to xxx.xxx.xxx.xxx dove eth0 è l interfaccia di rete lato internet e xxx.xxx.xxx.xxx è l indirizzo internet di questa interfaccia. Tale regola va applicata alla catena di POSTRUTING per far si, che almeno fino all ultimo momento, prima di uscire dall interfaccia verso internet, il pacchetto sia ancora identificato come proveniente dalla macchina interna e su cui poter applicare regole di filtro o di routing. Se questo mascheramento avvenisse prima, il pacchetto sembrerebbe del tutto indistinguibile da un pacchetto generato localmente dal box Linux e non potrebbero quindi essere applicati eventuali filtri personalizzati. DNAT (Destination Network Address Translation): Analogamente al source NAT anche il DNAT agisce modificando l header dei pacchetti in transito ed in particolare l indirizzo e la porta di destinazione. Al contrario dell SNAT, ma per lo stesso motivo, il DNAT viene applicato nel processo di PREROUTING così che tutti i restanti processi di IPTables e di routing 16

17 agiscono sul pacchetto già modificato. L operazione di DNAT può essere utilizzata per operazioni di port forwarding o di trasparent proxy. Ciò che ci interessa è il port forwarding che è quell operazione per cui una porta presente su di un server in realtà è un puntatore ad un servizio presente su di un altra porta molto spesso attiva su di un altro server. Tutte le richieste di connessione sulla prima porta vengono inoltrate al servizio reale attivo sulla seconda porta. Un utilizzo del port forwarding si ha nella situazione in cui uno o più servizi presenti in una rete con indirizzi intranet debbono essere esportati e visibili anche sulla rete internet. Portiamo quindi ad esempio una azienda che ha a disposizione quattro indirizzi IP nell intervallo da a con subnet Dei quattro indirizzi, lo zero è l indirizzo della rete, l uno è l indirizzo del router che collega l azienda al provider e il tre è l indirizzo di broadcast. L unico indirizzo libero risulta quindi e visto che l azienda in realtà possiede molti computer che desiderano navigare sulla Rete, ha utilizzato l SNAT attivandolo su di una macchina Linux. L indirizzo libero è stato assegnato all interfaccia di rete esterna mentre a quella interna è stata data un indirizzo intranet della classe /24. L azienda decide quindi di creare un proprio sito, e lo posiziona all interno, della rete aziendale per averne una migliore gestione e manutenzione. Attivare il server web sul firewall potrebbe essere impossibile per incompatibilità di sistema operativo ma, anche nel caso in cui non esistesse questa incompatibilità, l installazione di ulteriori servizi sul firewall è totalmente inaccettabile. Il firewall, come unico baluardo tra noi è il nemico deve essere totalmente sicuro e ogni servizio aggiuntivo tenderebbe a ridurre questo fattore di sicurezza. 17

18 Il server viene quindi agganciato alla rete interna e gli viene assegnato l indirizzo intranet Se è vero che l installazione del servizio web sul firewall è inaccettabile è però vero che tentare di mappare la porta web del firewall con la porta web del server non preclude assolutamente la sicurezza della rete. L idea è proprio questa: esternamente il server web verrà visto attivo sulla porta 80 (web) dell indirizzo ma tutti i pacchetti diretti su questa porta verranno poi dirottati dal firewall sulla porta 80 del server Seguiamo un ipotetico pacchetto TCP/IP di richiesta di una pagina dal sito e il relativo pacchetto di risposta, per comprendere il funzionamento. Il pacchetto di richiesta diretto verso la porta 80 del server entra dalla scheda esterna eth0 del firewall. Nel processo di PREROUTING il firewall verifica che questo pacchetto corrisponde ad una determinata regola e ne modifica il destinatario (DNAT) sostituendo l indirizzo di destinazione con il La tabella di routing vede ora un pacchetto destinato a questo host interno e lo instrada sulla scheda eth1 permettendo al pacchetto di giungere sul server web realmente presente sulla rete. Il server web interno processa la richiesta e prepara un pacchetto di risposta. Questo pacchetto torna quindi sul firewall che riconosce questo come pacchetto di risposta relativo al pacchetto che poco prima lui aveva modificato; lo modifica sostituendo all indirizzo di sorgente intranet il proprio indirizzo e lo inoltra all host remoto. 18

19 Risultato, dal punto di vista dell host remoto:. La configurazione di IPTables per ottenere questo risultato è molto semplice: -t nat A PREROUTING p tcp d dport 80 j DNAT -to Come si vede, non è stato necessario specificare la porta di destinazione in quanto la mappatura delle porte è la stessa. Se internamente il server web era attivato su una porta non standard e quindi differente dalla porta 80 si sarebbe dovuto aggiungere questa informazione alla riga di configurazione del DNAT. Ovviamente quello che funziona per un servizio funziona anche con molti. Si possono così avere più server interni e mapparli esternamente utilizzando il solo indirizzo IP del firewall. Se però si cerca di esportare due server dello stesso tipo, per esempio due server web attivati su due macchine differenti, solo uno dei due potrà essere visto esternamente presente su firewall sulla porta web standard. L altro dovrà essere mappato su una porta xx non standard e sarà visibile esternamente solo tramite l url. 3.3 MANGLE Impostando opportune regole in questa tabella sarà possibile modificare internamente il pacchetto che vi transita. Risultano possibili infatti modifiche ai valori ToS (Type of Service) e TTL (Time to Live) dell header. Si può inoltre imprimere una marcatura al pacchetto per destinarlo ad un trattamento successivo attraverso appositi programmi esterni. Ad esempio, in alcune situazioni, potrebbe essere conveniente stabilire una diversa 19

20 politica di routing basata sulla marcatura dei pacchetti o implementare un particolare sistema di QoS (Quality of Services). Tutto ciò è possibile utilizzando appositi strumenti messi a disposizione, per esempio, dal pacchetto iproute2. 4. Le catene speciali Quando avviene il match tra una regola e un pacchetto, l utente che configura IPTables è tenuto a specificare che sorte fare seguire al pacchetto stesso attraverso un operazione di jump. Un pacchetto può essere quindi inoltrato su un altra catena, accettato o eliminato. Vengono preconfigurate all avvio le seguenti catene: ACCEPT Il pacchetto smette di attraversare la catena e le altre presenti nella tabella corrente e viene direttamente accettato dal sistema e inoltrato all applicazione interessata ad esso; DROP Il pacchetto viene rifiutato dal sistema; LOG Alcune informazioni sul pacchetto vengono memorizzate nei log del firewall attraverso syslog. Il pacchetto continuerà quindi il suo percorso all interno della catena; DNAT Quando un pacchetto viene inoltrato nella catena DNAT, è possibile specificare a quale indirizzo IP inoltrare le connessioni (IPTables sostituirà quindi il campo destinazione del pacchetto con quello indicato dell utente); SNAT Quando un pacchetto viene inviato nella catena SNAT, è possibile specificare quale indirizzo IP utilizzare come sorgente del pacchetto. In questo modo sarà possibile mascherare la rete interna privata servendosi di un indirizzo IP pubblico; MASQUERADE Si tratta di un particolare tipo di SNAT nel quale l indirizzo 20

21 5. Le policy pubblico da impostare come mittente del pacchetto verrà individuato automaticamente dal sistema. Una volta che un pacchetto finisce di attraversare una catena senza che sia stata intrapresa nel frattempo alcuna azione, ritorna nella catena di partenza, al punto successivo in cui era stato dirottato. La sorte del pacchetto, una volta terminato l attraversamento delle catene INPUT, OUTPUT o FORWARD, è condizionato dalla policy della catena stessa impostata dall utente. A questo punto infatti potrà solamente essere accettato oppure rifiutato. 6. Introduzione al Traffic Shaping Traffic Shaping è un generico termine assegnato ad una moltitudine di tecniche atte a sviluppare politiche di prioritizzazione del traffico di dati in una rete. La maggior parte degli utenti di una rete hanno, prima o poi, sperimentato la frustrante esperienza della latenza e accodamento dei dati della rete internet. Chi ha usato servizi come telnet o ssh su un collegamento lento come un dial-up PPP o SLIP, ha visto gli effetti che il file transfer ha sul traffico interattivo. Il file transfer (download o upload che sia) divora facilmente le risorse di larghezza di banda costringendo il servizio interattivo ad un lungo accodamento in attesa di uno slot libero prima di poter trasmettere. Il problema è causato per il fatto che il flusso dei dati del file transfer ha uguale priorità rispetto a quello del servizio interattivo. Il traffico è regolato da una coda FIFO (First In, First Out). 21

22 Il Traffic Shaping ci permette di implementare una specifica politica che altera il meccanismo secondo cui vengono accodati i dati in trasmissione. È necessario a questo punto chiarire che una politica di shaping può essere applicata solo al traffico in uscita da un interfaccia. Il traffico in arrivo, nel momento in cui è giunto all interfaccia, ha ormai irrimediabilmente occupato una certa banda di trasmissione e non è più possibile operare alcun incodamento straordinario. Questo però non significa che sia impossibile modellare il traffico in download verso la nostra interfaccia. 7. La struttura e i comandi per il controllo del traffic Linux offre un ricco set di funzioni per il controllo del traffico come i comandi tc, iptables, iproute e così via i quali si appoggiano su una struttura definita nel kernel del sistema operativo. Cerchiamo di definire in che modo vengono elaborati i pacchetti all interno delle macchine linux. A livello più alto possibile possiamo immaginare una situazione come quella di figura: La figura mostra come il kernel processi i dati ricevuti dalla rete e come esso possa generare nuovi dati che dovranno essere spediti sulla rete: i pacchetti entranti possono sia essere reindirizzati immediatamente sulla rete (magari su diverese interfacce nel caso di un router), sia essere passati al livello superiore della pila protocollare (come ad esempio un 22

23 protocollo di trasporto) per essere processati. Il forwarding include la selezione dell interfaccia di uscita, la selezione del prossimo salto, l incapsulamento e così via. Una volta fatto questo i pacchetti sono accodati sulle rispettive interfacce dove vigeranno le discipline di accodamento per la gestione del traffico. 8. Iproute2 All interno del blocco input de-multiplex possiamo immaginare la routing table relativa ai pacchetti provenienti dall esterno e che devono essere reindirizzati. Il pacchetto per la gestione dell indirizzamento è iproute2. Questo risulta essere uno strumento molto flessibile e completo in quanto è possibile definire più tavole di routing da consultare a seconda della sorgente del pacchetto, della destinazione o semplicemente dell utente che richiede l utilizzazione della risorsa. Tra la miriade di comandi disponibili quelli di cui ha più senso parlare in questa sede sono: ip route: aggiunge o cancella una riga della routing table in cui sono contenute le informazioni sui percorsi per raggiungere gli altri nodi di rete; ip rule: definisce delle regole di instradamento non dipendenti solo dalla sorgente e dalla destinazione del pacchetto ma anche da altri campi dell header. Per fare ciò definisce più routing table a seconda del tipo di pacchetto. Ma le diverse routing table dovranno comunque essere gestite tramite ip route; ip link: setta le caratteristiche dei dispositivi di uscita (schede di rete, modem); ip address: associa indirizzi ip ai dispositivi di rete. Internamente ad iproute, il concetto di classe è utilizzato per aggregare traffico con 23

24 caratteristiche comuni. Si hanno quindi i filtri che servono a determinare quali pacchetti devono andare in ogni determinata classe. Avendo poi pacchetti presenti in più classi, è compito dello scheduler decidere in che ordine servire le diverse classi. Una delle caratteristiche più interessanti di iproute è la possibilità di avere una gerarchia di elementi. Supponiamo ad esempio di avere una configurazione come nella figura sottostante: Se ad un certo punto ci si rende conto che all interno di una certa classe ci sono diversi sottotipi di traffico che necessitano di essere trattati diversamente, è possibile sostituire la classe con uno scheduler sotto al quale porre diverse sottoclassi e i rispettivi filtri. Come risulta evidente nell immagine sottostante. 24

25 Non è poi obbligatorio utilizzare gli stessi algoritmi di incodamento (queueing) per le classi di uno stesso scheduler. Sempre nella figura sovrastante si potrebbe ad esempio utilizzare la tecnica FIFO per la classe1, RED per la classe2 e via dicendo. Questo consente di avere un alto grado di flessibilità. 9. Queueing discipline La queueing discipline di iproute altro non sono che schedulers. Nella tabella sottostante sono riportate le componenti di iproute divise per categoria. Non potendole vedere tutte in dettaglio, spiegherò il funzionamento delle più importanti. 25

26 9.1 PRIO Questo scheduler semplicemente mantiene più classi a diversa priorità e le serve in ordine decrescente di quest ultimo. Quando si utilizza questo tipo di scheduler, occorrerebbe assicurarsi che non sia possibile che il traffico a minor priorità possa soffrire di starving, ossia rimanga in attesa indefinita a causa della permanente presenza di traffico prioritario. Quando questo accade significa probabilmente che l assegnazione della priorità non è stata fatta correttamente. Una soluzione consiste ovviamente nel ridefinire le classi e i filtri (quale tipo di traffico in quale classe) o agganciare a una o più di queste una tecnica di incodamento che ne limiti la dimensione. In questo modo le classi prioritarie mantengono la precedenza sulle altre, ma, avendo un rate massimo associato, assicurano alle rimanenti di ricevere una parte della banda. 9.2 CBQ (Classs Based Queueing) CBQ rappresenta sicuramente lo scheduler più complicato tra quelli disponibili per Linux. I suoi principi consistono nella possibilità di ripartizionare la banda tra protocolli diversi e/o tra diversi utenti (o organizzazioni). Una loro combinazione (ripartizione sia per utenti che per protocolli) è ovviamente ancora possibile (l algoritmo è gerarchico e consente di ripartire a piacere ciascuna sottoclasse). Ci sono comunque altre interessanti opzioni, che però ne complicano l implementazione. Quando una delle classi non utilizza completamente la fetta di banda assegnata, i surplus potrebbe risultare uno spreco se riciclato opportunamente dalle altre classi, in particolare da quelle che si trovano ad avere bisogno di più banda di quella a loro disposizione. 26

27 Per ogni classe è inoltre possibile definire i seguenti flag: Bounded: La classe non può prendere in prestito alcuna banda dai suoi antenati. Se ad esempio classe 2 e classe 3 non hanno traffico, scheduler 1 si trova ad avere della banda a disposizione che è inutilizzata. Se dichiariamo classe 1 bounded, significa che questa non può usufruire di tale surplus; Isolated: La classe non può né prendere in prestito dagli antenati né prestare a classi non sue discendenti. Non solo classe 1 non può usare la banda di scheduler non utilizzata da classe 2 e 3, ma, nel caso classe 1 fosse dichiarata isolated, la banda assegnata a classe 1 che non viene usata non potrebbe essere riciclata da classe 2 e Algoritmi di incodamento Uno schedaler a senso quando sono presenti più code. In presenza di un unica coda, non si para più di scheduler, ma di strategia di incodamento. In realtà scheduler e strategia di incodamento sono la stessa cosa e differiscono solo nel numero di code (classi nel nostro caso) che gestiscono. Dopo tutto una tecnica di incodamento riceve elementi secondo una certa sequenza temporale e lì preleva con un altra sequenza o, nel caso particolare della coda FIFO, nella stessa sequenza. Al contrario della queueing disciplines, gli algoritmi di incodamento quindi lavorano (normalmente) su una singola classe. Essendo una sola la classe gestita da questi scheduler, coda o buffer è probabilmente un nome più appropriato. 27

28 10.1 CPFIFO/BFIFO (Packet FIFO/Byte FIFO) Questi due scheduler rappresentano due semplici varianti della versione base FIFO. L unica differenza consiste nel modo in cui viene specificata la lunghezza della coda. PFIFO definisce la dimensione della coda in termini di numero pacchetti mente BFIFO in termini di byte. In alcuni casi, ad esempio può essere più comodo definire la coda di lunghezza 100 pacchetti; in altri contesti invece può essere meglio dire che non può contenere più di 100 Kbyte RED (Random Early Detection) Il Grafico di figura mostra come varia la probabilità che un nuovo pacchetto venga posto in coda o scartato a seconda del valore di alcuni parametri. Una coda RED può essere vista come una variante particolare di una coda FIFO. Mente per FIFO occorre specificare solo la dimensione massima della coda e tutti i pacchetti che arrivano dopo che la coda è piena sono scartati incondizionatamente, i RED cambia il principio utilizzato per decidere se accettare un nuovo pacchetto (metterlo in coda) o scartarlo. I pacchetti sono comunque estratti secondo la logica FIFO. Quello che cambia quindi è solo il principio di inserimento. Anzitutto occorre definire due soglie anziché una: soglia minima e soglia massima. Serve inoltre specificare la probabilità con cui scartare i pacchetti. 28

29 Per semplicità chiamiamo questi pacchetti S1, S2, e P, come è possibile vedere nella figura sovrastante. Fin tanto che la lunghezza della coda si mantiene al di sotto di S1, i pacchetti sono aggiunti alla coda e questa si comporta in tutto e per tutto come una FIFO. Quando la coda ha una lunghezza maggiore o uguale a S2 i pacchetti sono scartati incondizionatamente, il che significa che la coda non potrà mai superare la lunghezza S2. Tra S1 e S2 invece, la probabilità che un pacchetto venga scartato, e quindi non inserito in coda varia linearmente tra 0 (in S1) e P (S2). Supponendo di avere le due soglie con valori S1=50, S2=100 e P=25%, la tabella riporta la probabilità in corrispondenza di diversi valori. GRED rappresenta una variante di RED, che consente di avere più classi di priorità su cui poter mappare diversi livelli di priorità di scarto. Per default le classi sono 16, ma il numero può essere cambiato TBF (Token Bucket Flow) Il token bucket viene normalmente utilizzato per limitare la banda di una classe di traffico. Sebbene CBQ e BFIFO consentano apparentemente di ottenere la stessa cosa, c è in realtà una sottile differenza. Il principio di funzionamento è molto semplice. Supponiamo di voler forzare una banda a 1 Mbit/s. Fissiamo un numero n a piacere ogni 1/n di secondo viene incrementata 29

30 la banda a disposizione di 1/n Mbits. Questo consente di distribuire la banda a disposizione uniformemente nell unità di secondo. Se ad esempio n valesse 100, allora ogni 1/100 di secondo verrebbe aggiunto 1/100 Mbits = 10 Kbits alla banda a disposizione, stando ovviamente sempre attenti a non superare il valore massimo (nell esempio 1Mbits). Il comportamento da seguire nel caso non ci fosse banda a disposizione dipende dalla configurazione dello scheduler. Normalmente il traffico in eccesso viene scartato. Una possibile variante consiste nel declassare il traffico, ovvero penalizzarlo riducendogli la priorità. 11. Classificatori Un classificatore altro non è che una coppia (condizione, classe) che associa il traffico che soddisfa la condizione alla classe. Ovviamente più filtri possono essere associati ad una stessa classe. Per ovvie ragioni non ha senso una classe senza alcun filtro associato. I classificatori si differenziano per il tipo di condizioni che consentono di esprimere, sebbene sia talvolta possibile esprimere lo stesso vincolo con diversi classificatori u32 Questo classificatore è tanto semplice quando potente: consente di esprimere condizioni sul valore di uno o più campi degli header IP,TCP,UDP,ICMP. 30

31 11.2 Fw (firewall IPTables) Uno dei flag utilizzati nelle ACL (access list) del firewall linux consente di marcare con uno specifico valore i pacchetti che lo soddisfano. Questo comando, presente nel file di configurazione del firewall (/etc/sysconfig/iptables) dice di marcare con il valore di 1 i pacchetti TCP appartenenti alla porta 80, entranti dall interfaccia eth1 e uscenti dall interfaccia eth0. -A FORWARD -p TCP -i eth1 -o eth0 --dport 80 -j MARK --set-mark 1 Il classificatore fw, quindi, è in realtà un classificatore piuttosto stupido che si limita a leggere il valore dell etichetta posta dal firewall. In questo caso, quindi, l intelligenza sta tutta nel firewall. 12. Introduzione alla CDL I due principali tool di configurazione sono ip e tc, sebbene, come abbiamo visto sopra, sia in realtà possibile usare applicazioni esterne, come il firewall IPTables per marcare (classificare) il traffico. Mentre ip lo si può vedere come sostituto di ifconfig e route, tc è invece utilizzato per la configurazione dello scheduler vero e proprio. I comandi principali di cui abbiamo bisogno sono quelli che consentono di: Definire lo scheduler da usare; Creare classi; Definire filtri per l associazione traffico->classe. Digitando il comando senza alcun parametro, o un comando incompleto seguito dalla 31

32 parola help, è possibile ottenere un aiuto sulla sintassi rispettivamente generale e contestuale, come mostrato dai due esempi che seguono: router# tc Usage: tc [ OPTION ] OBJECT { COMMAND help } where OBJECT := { qdisc class filter } OPTIONS := { -s[tatistics] -d[etails] - r[aw] } router# tc qdisc add dev eth0 cbq help Usage: cbq bandwidth BPS avpkt BYTES [ mpu BYTES ] [ cell BYTES ] [ ewma LOG] Ogni elemento (classificatore, scheduler, ) richiede alcuni parametri specifici che non avrebbero senso ad esempio per un altro elemento (es. isolated è usato solo da CBQ), mentre ce ne sono alcuni che sono necessari ed obbligatori per tutti: Device: indica l interfaccia a cui si riferisce. Ogni interfaccia può infatti avere il suo scheduler; Handle: È un numero a due cifre, rappresentato nella forma X:Y, dove in genere i valori X:0 sono assegnati ai nodi dell albero (quelli con figli, come scheduler 1 e 2) mentre X:Y sono utilizzati dalle foglie. Tutti i figli X:0 devono avere un handle della forma X:Y, ovvero ereditano X dal padre; Parent: Dovendo agganciare un elemento ad un altro, come un filtro ad un altro, come un filtro ad uno scheduler, occorre definire il nodo di aggancio, il parent appunto; Azione: Con ogni comando si aggiunge o rimuove un elemento (Add, Remove) o si stampano a schermo alcune statistiche su uno già esistente (Show). 32

33 Se volessimo creare una terza classe sotto scheduler 1, dovremmo usare un comando con i seguenti parametri. Device=eth0 Handle=1:3 Parent=1:0 Azione=add 13. Esempi pratici Nella seguente immagine è visibile lo schema di rete in cui ho applicato il traffic shaping. Sono presenti due schede di rete a 10 Mbit una affacciata su Internet l altra sulla LAN. 33

34 13.1 Prioritizzazione Supponiamo che al traffico web e ftp deve essere applicata la priorità massima, quindi marchiamo questo tipo di traffico con il firewall attraverso la tabella MANGLE: # Marca traffico HTTP -A FORWARD -p TCP -i eth1 -o eth0 --dport 80 -j MARK --set-mark 1 -A FORWARD -p UDP -i eth1 -o eth0 --dport 80 -j MARK --set-mark 1 # Marca traffico HTTPS -A FORWARD -p TCP -i eth1 -o eth0 --dport 443 -j MARK --set-mark 1 -A FORWARD -p UDP -i eth1 -o eth0 --dport 443 -j MARK --set-mark 1 # Marca traffico FTP -A FORWARD -p TCP -i eth1 -o eth0 --dport ftp -j MARK --set-mark 1 -A FORWARD -s 0/0 -p tcp! --syn --sport ftp -j MARK --set-mark 1 -A FORWARD -s /24 -p tcp --sport 1024: -d 0/0 --dport 1024: -j MARK --set-mark 1 -A FORWARD -s 0/0 -p tcp! --syn --sport 1024: -d /24 --dport 1024: -j MARK --set-mark 1 Agganciamo lo scheduler con priorità all interfaccia eth0: router# tc qdisc add dev eth0 root handle 1: prio Mappiamo il traffico marcato dal firewall sulla classe a maggior priorità: router# tc classied 1:1 filter add dev eth0 protocol ip parent 1:0 prio 1 handle 1 fw 13.2 Suddivisione di banda Successivamente ho provato a dividere la banda nel seguente modo: 10% della banda (1Mbit) assegnato al traffico web (HTTP,HTTPS); 30% della banda (3Mbit) assegnato al traffico ftp; 60% della banda (6Mbit) assegnato al traffico rimanente. 34

35 Quando una delle tre classi di traffico non utilizza tutta la banda allocatagli, la parte inutilizzata deve poter essere riciclabile dalle altre. Può quindi capitare che in un dato istante, non essendoci né traffico ftp né web, tutti i 10Mbit a disposizione sono utilizzabili per il resto del traffico. Marchiamo le tre categorie di traffico (web, ftp, altro) con tre diversi valori (1,2,3). # Marca traffico HTTP -A FORWARD -p TCP -i eth1 -o eth0 --dport 80 -j MARK --set-mark 1 -A FORWARD -p UDP -i eth1 -o eth0 --dport 80 -j MARK --set-mark 1 # Marca traffico HTTPS -A FORWARD -p TCP -i eth1 -o eth0 --dport 443 -j MARK --set-mark 1 -A FORWARD -p UDP -i eth1 -o eth0 --dport 443 -j MARK --set-mark 1 # Marca traffico FTP -A FORWARD -p TCP -i eth1 -o eth0 --dport ftp -j MARK --set-mark 1 -A FORWARD -s 0/0 -p tcp! --syn --sport ftp -j MARK --set-mark 1 -A FORWARD -s /24 -p tcp --sport 1024: -d 0/0 --dport 1024: -j MARK --set-mark 1 -A FORWARD -s 0/0 -p tcp! --syn --sport 1024: -d /24 --dport 1024: -j MARK --set-mark 1 # Marca traffico gtk-gnutella -A FORWARD -p TCP -i eth1 -o eth0 --dport 6346:6348 -j MARK --set-mark 2 -A FORWARD -p UDP -i eth1 -o eth0 --dport 6346:6348 -j MARK --set-mark 2 -A FORWARD -p TCP -i eth1 -o eth0 --dport j MARK --set-mark 2 -A FORWARD -p UDP -i eth1 -o eth0 --dport j MARK --set-mark 2 # Marca traffico emule -A FORWARD -p TCP -i eth0 -o eth1 --dport j MARK --set-mark 3 -A FORWARD -p TCP -i eth1 -o eth0 --dport j MARK --set-mark 3 -A FORWARD -p UDP -i eth0 -o eth1 --dport j MARK --set-mark 3 -A FORWARD -p UDP -i eth1 -o eth0 --dport j MARK --set-mark 3 -A FORWARD -p TCP -i eth1 -o eth0 --dport j MARK --set-mark 3 -A FORWARD -p UDP -i eth1 -o eth0 --dport j MARK --set-mark 3 -A FORWARD -p UDP -i eth0 -o eth1 --dport j MARK --set-mark 3 -A FORWARD -p TCP -i eth0 -o eth1 --dport j MARK --set-mark 3 Agganciamo lo scheduler CBQ all interfaccia eth0: router# tc qdisc add dev eth0 root handle 1: cbq bandwidth 10Mbit avpkt

36 Creiamo la classe radice: router# tc class add dev eth0 parent 1:10 classid 1:10 cbq bandwidth 10Mbit rate 10Mbit allot 1514 weight 1Mbit prio 8 maxburst 20 avpkt 1000 Creiamo le tre sottoclassi: router# tc class add dev eth0 parent 1:10 classid 1:11 cbq bandwidth 10Mbit rate 1Mbit allot 1514 weight 100Kbit prio 5 maxburst 20 avpkt 1000 router# tc class add dev eth0 parent 1:10 classid 1:12 cbq bandwidth 10Mbit rate 3Mbit allot 1514 weight 300Kbit prio 5 maxburst 20 avpkt 1000 router# tc class add dev eth0 parent 1:10 classid 1:13 cbq bandwidth 10Mbit rate 6Mbit allot 1514 weight 600Kbit prio 5 maxburst 20 avpkt 1000 Definiamo i filtri che associano il traffico alle classi: router# tc filter add dev eth0 protocol ip parent 1:0 prio 1 handle 1 fw classid 1:11 router# tc filter add dev eth0 protocol ip parent 1:0 prio 1 handle 2 fw classid 1:12 router# tc filter add dev eth0 protocol ip parent 1:0 prio 1 handle 3 fw classid 1:13 A questo punto lo scheduler è configurato, ma per testarlo occorre vedere se i filtri si comportano bene assegnando il traffico alle giuste classi. Con l opzione show è possibile vedere i dettagli su classi, scheduler e filtri. In particolare si può avere un resoconto su quanti pacchetti e quanti byte le sono stati associati dai filtri, quanti sono stati scartati ecc. Nel caso di CBQ viene mostrata anche la quantità di banda di cui una classe è andata in prestito. Utilizzando i flag -s e -details è possibile ottenere maggiori dettagli. Successivamente vengono visualizzate le statistiche, dopo che ho impostato la banda 36

37 riservata al traffico web a 100Kbit e ho generato parecchio traffico web con l applicazione Teleport Pro. router# tc s qdisc show dev eth0 qdisc cbq 1: rate 10Mbit (bounded,isolated) prio no-transmit Sent bytes pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle 569 undertime 0 router# tc s class show dev eth0 class cbq 1:11 parent 1:10 rate 10Kbit prio 5 Sent bytes pkts (dropped 0, overlimits 0) borrowed 8375 overactions 0 avgidle undertime class cbq 1: root rate 10Mbit (bounded,isolated) prio no-transmit Sent bytes pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle 587 undertime 0 class cbq 1:10 parent 1: rate 10Mbit prio no-transmit Sent bytes pkts (dropped 0, overlimits 0) borrowed 8375 overactions 0 avgidle 605 undertime 0 class cbq 1:13 parent 1:10 rate 6Mbit prio 5 Sent bytes pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle undertime 0 class cbq 1:12 parent 1:10 rate 3Mbit prio 5 Sent 9076 bytes 111 pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle undertime 0 Come si nota dal codice sovrastante la 1:11 è andata in prestito di banda (borrowed!=0). Se poi si aggiungono i due flag bounded e isolated, rimanendo in condizioni di traffico in eccesso per la classe 1:11, possiamo vedere che il surplus viene scartato (dropped!=0 e borrowed=0): router# tc s qdisc show dev eth0 qdisc cbq 1: rate 10Mbit (bounded,isolated) prio no-transmit Sent bytes pkts (dropped 62, overlimits 51045) backlog 99p borrowed 0 overactions 0 avgidle 587 undertime 0 router# tc s class show dev eth0 class cbq 1:11 parent 1:10 rate 10Kbit (bounded,isolated) prio 5 Sent bytes pkts (dropped 76, overlimits ) backlog 100p borrowed 0 overactions 8090 avgidle undertime class cbq 1: root rate 10Mbit (bounded,isolated) prio no-transmit Sent bytes pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle 624 undertime 0 class cbq 1:10 parent 1: rate 10Mbit prio no-transmit Sent bytes pkts (dropped 0, overlimits 0) borrowed overactions 0 avgidle 624 undertime 0 37

38 class cbq 1:13 parent 1:10 rate 6Mbit prio 5 Sent bytes pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle undertime 0 class cbq 1:12 parent 1:10 rate 3Mbit prio 5 Sent bytes 164 pkts (dropped 0, overlimits 0) borrowed 0 overactions 0 avgidle undertime 0 È interessante osservare che 76 pacchetti destinati alla classe 1:11 sono stati scartati e la coda (backlog) associata contiene 100 elementi (il valore massimo), ossia è satura. Questo è un chiaro segnale che la banda assegnata a tale classe non è sufficiente. Per quanto flessibile ci sono anche alcune limitazioni, ad esempio non è possibile configurare uno scheduler da applicare a tutto il traffico in uscita o a tutto quello in ingresso; occorre sempre agganciarsi ad un interfaccia specifica. 14. Introduzione Master Shaper Master Shaperè un interfaccia web per le utilities per il traffico di rete sotto Linux. Essa è provvista di un interfaccia web facile da usare, per gestire la Qualità del Servizio (QoS). E funzionante in sistemi Linux con kernel 2.4 e 2.6. Gli utenti possono definire le regola per trattare il flusso di dati e anche ricevere l affidabilità attraverso un grafico di statistica che riguarda il consumo di banda e la situazione dello shaping. Attualmente Master Shaper è soltano un utility di shaping. Esso non include un analizzatore per il traffico di rete come i prodotti commerciali. Esso non è in grado di mostrare cosa fluisce nella rete. Esso visualizzerà soltanto quello che crede di vedere in accordo con le regole. 38

39 14.1 Requisiti Versione 2.4 o 2.6.x del kernel Linux; Iproute2 che contiene il comando tc; IMQ-Device (Se si vuole controllare il traffico in ingresso); Web-Server con supporta PHP (Apache2, mod_php4); PHP4 con JPEG, libgd e il supporto di MySQL (non testato con le PHP5); Database MySQL (MySQL 4.1); PHP pear modules DB & Net_IPv4; Perl con l iterfaccia DBD (DABI-MySQL); Phpplayersmenu; Jpgraph; Web-browser (con DHTML e il supporto per il JavaScript) IMQ Devices L utility tc è adatta per il traffico in uscita, e si hanno molte opzioni di configurazione per trattare il traffico di rete. Per quando riguarda il traffico in ingresso, invece, ci sono poche possiblitià di controllarlo e le utility sono alquanto rudimentali. Il problema della trattazione del traffico in ingresso, è che quando arriva nell iterfaccia, esso risulta in linea e quindi consuma banda. Si ha soltanto la possiblità di droppare i pacchetti in ingresso o spedire i pacchetti acknowledge (ACK) e sperare che il sender spedisca più lentamente i pacchetti. Tuttavia in questo caso si è in una posizione sfavorevole, rispetto al flusso di rete e il 39

40 trattamento in ingresso è meno efficace rispetto a quello in uscita. Tuttavia i prodotti commerciali risolvono questo problema e accusano i prodotti QoS dasati si Linux di essere dei cattivi prodotti. La soluzione ideale è trattare il traffico in entrambe le posizioni. IMQ Device Intermediate Queueing Device è una soluzione per risolvere questo problema. Con regole di IPtables il traffico di ingresso e uscita e forwardato sul dispositivo di coda. Il vantaggio di questo è la possiblità di usare le regole di traffico di uscita, sul traffico di ingresso. Per usare i dispositivi IMQ occorre patchare il kernel e IPtables. E possibile usare i comandi successivi per poter usare i dispositivi IMQ: ip link set imq0 up ip link set imq1 up iptables t mangle I PREROUTING i eth0 j IMQ todev 0 iptables t mangle I POSTROUTING o eth0 j IMQ todev 1 Quando si patcha il kernel per poter usare i dispositivi IMQ occorre ricordare di abilitare, durante la ricompilazione del kernel, le seguenti opzioni: CONFIG_IMQ e CONFIG_IP_NF_TARGET_IMQ. Non è possibli usare le regole IPtables per i dispositivi IMQ. Per essi è possibile usare soltanto tc-filter. IPtables non è ingrado di machare i pacchetti per farli apparire nei dispositivi IMQ Queuing Disciplines Dalla versione 0.30 è possibile usare tre discipline di coda: HTB (Hierarchical Token Buket); HFSC (Hierarchical Fair Service Curve); 40

41 CBQ (Class Based Queueing). Discipline di coda forniscono differenti aggiunte per fare tale lavoro. HTB: è capace di supportare un guaranteed minimum badwidth per una classe di traffico. Inoltre esso permette di difinire il maximum bandwidth, una classe può prendere in prestito la banda da altre classi se risultano non usate. E possibile definire burst levels e priorization della classe HTB. La prioritizzazione ha effetto soltanto sulla banda non usata e una classe può prestare banda alle altre classi. Chi ha alta priorità otterrà più banda. Se si sceglie HTB nel settaggio del Mastershaper. E possibile usare per classificare SFQ (Stochastic Fairness Queueing), come meccanismo di coda finale quando verranno spediti pacchetti fuori verso gli strati bassi. HFSC: è capace di supportare un guaranteed minimum delay di pacchetti di rete. Questo è importante per le applicazioni real time come Voce pramite IP (VoIP), dove il ritardo e segnali di disturbo a un impatto sulla qualità. Con HFSC è possibile definire un minimum guaranteed bandwidth per ogni classe, e un maximum bandwight il quale risulta usufruibile da questa classe. CBQ: esiste da molto più tempo rispetto HTB ma ha meno opzioni per il controllo del traffico. Mastershaper supporta CBQ nel caso in cui HTB non è disponibile. Mastershaper per default usa HTB, comunque è possibile cambiare questa scelta comodamente dall interfaccia web. 41

42 15. Uso Mastershaper usa delle condizioni per definire le regole di shaping Bandwidth Badwidth significa la velocità della rete nel link. Mastershaper usa la definizione della velocità in kbit per secondo (kbit/s) Protocolli E possibile trovare più protocolli in un ambiente di rete. In questo caso però consideriamo soltanto il traffico IP o il traffico ICMP (ping) ma ci sono molti altri protocolli come ESP & AH per IPSec, GRE per GRE-Packet-Tunnelling o i protocolli del Router come IGMP. Comunque ogni protocollo ha un unico numero assegnato dallo IANA Porte Le porte riflettono i comuni numeri di porta per il traffico TCP & UDP (http/80, IMAP/143, ). Durante l installazione è possibile istruire Mastershaper per riempire la tabella delle porte con tutte le porte assegnate dallo IANA Targets Targets significa IP-Addresses o MAC-Addresses. IP-Addresses può specificare un singolo host ( ), l indirizzo di rete ( /8) o un range ip ( ). MAC-Addresses può solo essere usato con IPTables. Più targets possono essere raggruppati insieme come target group. 42

43 15.3 Service Levels Service Levels significa limiti predefiniti di banda. E possibile definire i dettagli dei paramentri per le discipline di coda HTB, HFSC o CBQ. Per CBQ si può specificare il rate e la priorità. In aggiunta è possibile definire il limite massimo e la fuoriuscita con HTB per il traffico di ingresso e di uscita. (linee asimmetriche). Per HFSC è possible specificare il massimo ritardo dei pacchetti di rete Filtres Filters rappresenta il metodo per confrontare il traffico con delle regole definite. Per esempio è possibile definire una regola per filtrare il trffico Web controllando le porte HTTP e HTTPS rispettivamente 80/tcp e 443/tcp. Inoltre è possibile controllare Il flag-tos, TCP, IPP2P, layer7, tempo e lunghezza del pacchetto.. La disponibilità delle funzioni filtro dipende dal sistema di matching che viene usato. Mastershaper supporta tc-filter e iptables. Mentre tc-filter è veloce ed è già integrato nel pacchetto iproute2. Iptables è un sottosistema addizionale che supporta molte elaborate metodi di confronto. Se le molte funzioni di IPTables non sono richieste, è possibile usare tc-filter. Per scoprire se IPTables supporta tutte le caratteristiche di Mastershaper, occorre verificare se i necessari moduli di confronto sono disponibili nella directory dei moduli di IPTables (tipicamente /lib/iptables). Libipt_TOS.so Libipt_tcp.so Libipt_ipp2p.so Libipt_time.so Libipt_length.so Per il confronto TOS Per il confronto TCP-flag Per il confronto IP-P2P Per il confronto Time Per il confronto della lunghezza del pacchetto 43

44 Libipt_layer7.so Libipt helper.so Libipt_conntrack.so Per il confronto del protocollo layer7 Per il confronto ftp data channel Per il confronto ftp data canne Mastershaper generalmente non controlla se questi moduli sono presenti. Se si ricevono alcuni errori quando si leggono le regole di IPTables, occorre verificare se tutti i moduli sono installati correttamente Layer7 protocol matching Dalla versione V0.32 il layer7 protocol maching viene supportato ed è ben integrato all intermo di Mastershaper. Dal opzione Uptade L7 Protocol Mastershaper è possibile vedere il nome del protocollo e salvarlo nel database. Se si aggiorna l installazione dell l7- filter è possibile eseguire quest opzione in Mastershaper Catena Le catene sono canali di traffico. Ogni catena a assegnato un livello di servizio, ossia la massima banda disponibile all interno del canale. Se si ha una sola catena, questo livello di servizio è normalmente uguale alla velocità della linea. (2048/1024kbit/s per esempio). In aggiunta ogni catena ha un livello di servizio di fall-back e ogni traffico che non può essere confrontato attraverso una definizione di pipe può soltanto usare la banda del livello di servizio di fall-back. Cosi Mastershaper è sicuro che nessun traffico non conosciuto può consumare tutta la banda. Per iserire del traffico all interno di una catena, esso viene confrontato con una definizione di target. Le altre regole delle catene sono importanti. Il primo confronto vince, 44

45 non quello che è più giusto per un determinato tipo di traffico. Così se si ha due catene con i seguenti target (in questo ordine): / Il traffico tra sarà confrontato dalla catena con il target /24 e non dalla catena con il target Se non si vuole specificare gli ndirizzi IP targets è possibile usare any durante l ipostazione della catena. E anche possibile definire una catena che ignora completamente i settaggi QoS. Questo è utile se si vuole che il traffico non venga toccato da alcuni settaggi dello shaper (LAN DMZ). Le catene che ignorano i settaggi del QoS non sono memorizzate attraverso tc_collector.pl e non vengono visualizzate dal grafico di monitoraggio Pipes Le pipe tengono catene filters e livelli diservizio insieme. In aggiunta è possibile specificare la direzione della pipe (incoming, outgoing). E possibile anche assegnare un livello di servizio, con regolare uso della banda in questa pipe. La banda corrente distribuita tra le pipes può essere visualizzata dall opzione Pipes Bridge o Router Un Bridge è un dispositivo trasparente di rete. Normalmente si è connessi a un Router (cisco, nortel, ) direttamente allo switch di rete. Ora è possibile connettere il router alla prima interfaccia del bridge. La seconda interfaccia del bridge è connessa allo switch di rete. Il bridge agisce in modo invisibile per ogni connessione tra il router e la rete. Ma si è capaci di influire sul flusso di rete in entrambe le interfaccie del bridge. 45

46 Un Router connette insieme due differenti reti ( /24 e /24). Nessuno dei clients in differenti sottoreti conosce gli altri clients nelle altre reti. Loro conoscono solamente dove poter spedire il pacchetto per le altre reti (via default gateway, route, ) Il router conosce soltanto la sua tabella di routing, dove poter spedire i pacchetti. Il trattamento dei pacchetti è esattamente confrontato con le interfacce di rete ed è leggermente differente tra router e bridges. Tramite Mastershaper è possibile impostarlo. 16. Installazione del pacchetto Alcuni passi nella procedura di installazione a bisogno della conoscenza di alcuni comandi basilari di MySQL. Per semplificare la procedura è possibile utilizzare il tool phpmyadmin per far leggere il database a Mastershaper. Passi per poter installare Mastershaper: Creare un nuovo database MySQL I comandi successivi permette di creare a riga di il database shaper e assegnarlo ad un utente di nome shaper con password shaper. mysql u root -p create database shaper; GRANT ALL ON shaper.* TO IDENTIFIED BY shaper ; Estrarre il pacchetto Masteshaper Occorre estrarre il pacchetto mastershaper_x.xx.tar.gz su una directory temporanea: mkdir /tmp/shaper cd /tmp/shaper tar zxfv (PATH_WHERE_FILE_IS_LOCATED)/mastershaper_x.xx.tar.gz. 46

47 Spostare Mastershaper all interno delaa root del web server Muovere il contenuto della directory htdocs (PHP scripts, images, ) così i documenti presenti sotto il root web server (like /var/www/shaper/) saranno raggiungibili dal browser. Installare le jpgraph Occorre scaricare, decomprimere e inserire le jpgraph all interno della directory in cui è presente Mastershaper. Installare phplayersmenu Occorre scaricare il pacchetto phplayermenu dal sito e scomprimerlo all interno della directory in cui è installato Mastershaper. Installare il modulo PHP-Pear E necessario installare il modulo PHP-PEAR come segue: pear install DB Net_IPv4 Installare Mastershaper Dall installer di Mastershaper specificare i parametri e salvare i dati. Nel caso di errori l installer dirà dove ci sono problemi. Comunque, preventivamente, per poter installare questo tool occorre patchare il kernel e IPTables. Preparare IMQ Se si usa IMQ è necessario alcune regole di iptables per ricevere il traffico dall interfaccie IMQ (EXT_DEV significa l interfaccia dove si vuole controllare i traffico): 47

48 ip link set imq0 up ip link set imq1 up iptables t mangle I PREROUTING i eth0 j IMQ todev 0 iptables t mangle I POSTROUTING o etho j IMQ todev 1 Tali regole non vengono settate dal Mastershaper. Configurare Sudo Molti dei web server non girano con privilegi di root e quindi non hanno il permesso di parlare direttamente con il kernel e leggere le regole (tc o iptables). Per attivare le regole, Mastershaper usa lo script shaper_loader.sh, un piccolo script di shell che tratta entrambi i comandi tc e iptables-rules. Per garantire questi privilegi allo script, occorre aprire il file di configurazione di sudo che si trova in /etc/sudoers e aggiungere la seguente linea: apache ALL=NOPASSWD:/var/www/mastershaper/shaper_loader.sh 48

49 17. Configurazione Molte delle tante opzioni sono ben documentate sull intrfaccia web. Di seguito verra riportato soltanto alcune delle opzioni disponibili. L immagine successiva riporta la schermata di inzio che si ha quando si inserisce l url sul browser per il mastershaper, in cui è possibile fornire le credenziali per poter accedere alla sua configurazione. 49

50 Nella schermata successiva viene mostrata la schermata con cui è possibile impostare l esatta configurazione di mastershaper, in cui sono riportati: Brandwidth Fornire il valore della banda iniziale è fondamentale per inizializzare la classe e per specificare la massima velocità di una specifica interfaccia (Ethernet, DSL, ). Interfaces Occorre inoltre, specificare l interfaccia di ingresso e uscita a cui lo shaper può accedere. Se si usa i dispositivi IMQ occorre specificarlo nell interfaccia del mastershaper attraverso il IMQ-Option. MS Option E possibile anche specificare una direzione per gli ACK packets e altri small packets. E possibile configurare le discipline di coda come HTB,HFSC e CBQ, scegliere tra tc-filter o iptables-matching e se il mastershaper deve essere eseguito come router o come bridge. 50

51 17.1 Manage Service Levels Nell immagine successiva è evidente come è possibile specificare i service levels usati nel Chains, Pipes e nelle Option-View. Ogni livello di servizio ha una separata definizione dei parametri per HTB, HFSC e CBQ (discipline di coda). 51

52 Filters Nell immagine successiva viene riportato come è possibile amministrare le definizioni per i filtri. I filtri sono meccanismi per il matching del traffico, con il quale è possibli classificare il traffico e così è possibile indirizzarlo nelle corrette pipe. Il tipo di filtro che è possibile creare qui è dipendente dalle opzioni di Traffic filter Chains Nell immagine successiva viene riportato come è possibile amministrare le definizioni per le catene. Le catane sono necessarie per matchare il traffico rispetto ad un target. Se la definizione del target matcha il traffico di rete, il flusso di rete viene rediretto all interno di questa catena così potra essere matchato dalle definizioni delle pipe. 52

53 Una catena ha bisogno che sia definito l ammontare totale della banda e un livello di servizio di fall-back. Tutto il traffico che arriva all interno di questa catena e non è matchato da nessuna definizione di pipe cade nel livello di servizio di fall-back. Nell immagine successiva invece viene evidenziato come poter definire una catena, e quindi tutti i parametri ad essa associati. 53

54 Pipes Le pipes sono assegnate a una catena e matchano le definizioni dei filtri rispetto al traffico di rette che virtualmente fluisce attraverso la catena. La pipe gestisce anche come viene consumata la banda associata a un servizio. 54

55 L immagine successiva riporta in dettaglio come viene definita una pipe. 55

56 Monitoraggio Se le regole del mastershaper sono correttamente scritte e lo script tc_collector.pl è attivo, Mastershaper disegnerà un grafico: Chains: Visualizza se c è una corretta distribuzione della banda tra catene; Pipes: Visualizza se c è una corretta distribuzione della banda fra pipes; Bandwidth: Visualizza se è presente la totale banda in uscita e ingresso interfaccia shaper_loader.sh Dalla versione V0.31 del MasterShaper, è stato introdotto, una nuovo loader per le regole. Questo è stato necessario, perché lo script deve essere capace di cancellare tuuti i residui delle regole di MasterShaper iptables. E questo è possibile grazie a questo script. Inoltre riesce ad eseguire tc e iptables-ruleset, così solo lo script ha i privilegi di root. 56

57 collector tc_collector.pl tc_collector.pl è una piccola applicazione Perl che raduna le statistiche di traffico dall utility tc. A causa del fatto che non c è un metodo per richiamare la distribuzione delle pipe, esso raduna l ammontare totale di bytes trasferiti nell intervallo di 10 secondi e calcola la media dei kilobits per secondo. Occorre eseguire tc_collector richiamando:./tc_collector.pl Lo script inizierà a radunare il traffico con l utility tc e a memorizzarlo all interno del database MySQL. Occorre comunque inserire la sua configurazione all interno del file: config.dat. 57

58 18. Introduzione M0n0wall M0n0wall è un software firewall free che si differenzia dagli altri software per i seguenti motivi: È basato su FreeBSD, e non su Linux; È ottimizzato per PC non molto potenti, ed è compatibile con un gran numero di periferiche; È licenziato su piattaforme come FreeBSD più che GPL 2. M0n0wall è per la maggior una creazione di Manuel Kasper. Manuel Kasper ha iniziato la creazione di m0n0wall come una interfaccia grafica per FreeBSD utilizzandolo come filtro pacchetti per alcuni PC. Da qui il prodotto si è trasformato velocemente in un vero e proprio firewall con interfaccia grafica PHP. Manuel, non contento della mancanza di flessibilità dovuta all'utilizzo dello script di shell della piattaforma Unix, aggiunge al m0n0wall una interfaccia di configurazione basata su pagine PHP (tecnologia utilizzata per la creazione di pagine web dinamiche). L'utilizzo di pagine PHP in questo modo consente di ottenere tutte le configurazioni del firewall in un file XML. Allo stesso tempo permette di mantenere l'immagine del prodotto molto compatta (al momento occupa meno di 6MB). La prima versione beta del m0n0wall è stata rilasciata nel Febbraio del Durante un anno di lavoro sono state prodotte ben 26 versioni beta che hanno permesso la realizzazione della versione v1.0. Il m0n0wall è al momento un progetto collaborativo, ma Manuel Kasper provvede ancora alla produzione di nuove funzionalità e alla gestione delle versioni evolutive. Le funzionalità del m0n0wall v1.0 sono: filtro pacchetti con regole per permesso/blocco del traffico su tutte le reti; NAT & PAT (optional) incluso 1:1; 58

59 supporto client DHCP, PPPoE, PPTP per le WAN; Indirizzi statici; regolatore di traffico; Client DNS dinamico; server DHCP, configurabile separatamente per tutte le reti; memorizzazione dei forward DNS con indirizzi di ingresso statici opzionali; Supporto per Alias per host e network; Supporto per interfaccia Wireless; IPSEC VPN endpoint, network to network e clients mobile; PPTP VPN endpoint, con supporto autenticazione RADIUS; agent SNMP; Logging a un server Syslog remoto; Online firmware upgrade; Configurazione Backup/Restore. Il m0n0wall a differenza degli altri software è stato progettato per funzionare anche su piattaforme PC dedicate (AMD, VIA ecc). Una volta avviato il software funziona solamente nella memoria RAM e le configurazioni vengono salvate su un file XML. Le piattaforme PC dedicate si prestano ad essere degli ottimi routers e firewall per i seguenti motivi: Sono compatti, non richiedono molto spazio; Consumi ridotti, di norma consumano < 10W, questo è molto importante per dispositivi che devono rimanere accesi costantemente; Generano poco calore, importante per dispositivi che devono essere installati in luoghi piccoli e poco ventilati; Sicuri, non hanno parti meccaniche mobili. L'unico svantaggio nell'utilizzo di PC dedicati è che questi prodotti non sono facilmente aggiornabili, infatti la maggior parte dei componenti sono saldati direttamente sulla scheda madre. 59

60 Il m0n0wall ufficialmente supporta i net45xx / net48xx di Soekris (Santa Cruz, USA) e i WRAP (Wireless Router Application Platform) di PC Engines (Switzerland). Immagini compilate appositamente per queste piattaforme possono essere scaricate dal sito del produttore. La piattaforma net45xx/net48xx di Soekris sembra essere tra le più utilizzate tra gli utenti del m0n0wall Configurazione Standard con PC dedicato Il m0n0wall non necessita di PC specifici. Le immagini per PC funzionano sulla maggior parte dell' hardware esistente e le specifiche da rispettare sono minime: Processori Intel o compatibili (i ) o superiori 64MB RAM supporto per 2 interfacce network Hard Disk IDE o Compact Flash IDE superiore a 8MB or Floppy Disk ATAPI, CD- ROM Drive IDE e BIOS che supporti il boot da CD-ROM supporto VGA Le richieste minime coprono la maggior parte degli hardware. Per tutti gli utenti che intendono utilizzare hardware obsoleto, la richiesta più problematica sarà quella dei 64Mb di RAM. Questa richiesta di RAM si manifesta in quanto il prodotto funziona completamente memorizzato sulla RAM. Un altro problema che può presentarsi è per l'interfaccia Network, fortunatamente FreeBSD 4.9 supporta la maggior parte dei chipsets. Per maggiori informazioni si consiglia di visitare il sito del produttore. 60

61 17.2 net4801 di Soekris Il net4801 è il modello base della Soekris. La Soekris ha progettato il net48xx per utilizzarlo come router, firewall e access point wireless. Il processore AMD 133 Mhz ElanSC520 del net4801 fornisce delle performance paragonabili a quelle di un Intel Pentium P100. A differenza della linea mini-itx di VIA,che è stata progettata per un minimo ingombro, il net48xx di Soekris non possiede un sistema operativo con interfaccia grafica come ad esempio MS Windows o Linux/FreeBSD con X-Windows. La mancanza di hard disk e di ventole di raffreddamento fanno di questo prodotto uno tra i più silenziosi e dei meno soggetti a guasti sul mercato. Il net4801 è venduto come un "system board" con un case metallico opzionale. Quando viene ordinato con il case, la scheda madre viene pre assemblata nel case. Le specifiche sono le seguenti: 133 Mhz AMD ElanSC520 CPU; 64 MB SDRAM; CF Type I/II socket; 3 auto-sensing 10/100 Mbit Ethernet ports, RJ-45; 1 Serial port, DB9; Power LED, Activity LED, Error LED; Mini-PCI type III socket; PCI Slot, 3.3V, right angle; Temperatura di funzionamento 0-60 C; L'alimentatore esterno può essere acquistato direttamente da Soekris. Il case è di buona qualità con una verniciatura anti-polvere. Le dimensioni esterne del case sono 216mm X 150mm X 30mm, e con la scheda madre e il lettore CompactFlash (CF) installati pesa circa 750g. 61

62 Per installare il m0n0wall su un net4801 basta copiare l'immagine su una CF. L'immagine non compressa del m0n0wall richiede uno spazio di circa 5-6MB. Le ultime immagini per le varie piattaforme sono disponibili nella sezione download del sito del produttore all'indirizzo: Avviare m0nowall per la prima volta Le istruzioni dettagliate presenti sul sito del m0n0wall suggeriscono di accendere il net4801 e di loggarsi tramite HyperTerminal di Windows o tramite altri software simili. Come default l'interfaccia Net0 del net4801 è assegnata all'interfaccia LAN del m0n0wall ed è configurata con l'indirizzo /24 (Subnet mask ) con DHCP attivo. Per assicurarsi del corretto funzionamento, aprire il web browser e digitare l'indirizzo verrà presentata una interfaccia di login. La username di default è admin e la password è mono, entrambe in minuscolo e senza numeri. A questo punto è possibile configurare l'indirizzo di rete in modo da interfacciarlo con la propria rete PC generici Come detto in precedenza, le immagini per PC generici possono essere installate su qualsiasi prodotto che possiede hardware compatibile con Intel x86. L'unica decisione da affrontare è quale tipo di istallazione si desidera utilizzare (Compact Flash, IDE Hard Disk or CD-ROM)? Si consiglia, se possibile, di utilizzare sempre l'istallazione su CF. Adattatori IDE CF e CF cards sono relativamente economici ma soprattutto sono il supporto per cui il m0n0wall è stato sviluppato. L'unico inconveniente delle CF è il numero relativamente basso dei cicli di scritturta/cancellazione che la memoria sopporta prima di danneggiarsi. Questo viene calcolato in qualche centinaia di migliaia di volte, ma, in un firewall costantemente 62

63 connesso ad internet che è configurato per scrivere il log per ogni pacchetto di IP bloccati, questo limite viene raggiunto molto velocemente. Per risolvere questo problema, il m0n0wall accede alla memoria CF solo in tre occasioni: avvio del sistema e caricamento del software nella RAM salvataggio delle configurazioni su file XML salvataggio di una nuova immagine utilizzando la funzionalità Firmware Upgrade mentre il firewall è on-line. Qualsiasi altra azione viene effettuata in RAM. Questo spiega la richiesta di un minimo di 64Mb di RAM. Se non è possibile utilizzare le CompactFlash, si consiglia l'utilizzo di un hard disk. L'utilizzo di un firewall basato su un hard disk non è molto comune ma permette di usufruire della funzionalità di aggiornamento del Firmware. Il procedimento di installazione di una immagine su disco fisso non si discosta molto da quello descritto per le CompactFlash. L'unico inconveniente è che bisogna in parte smontare il PC e collegare l'hard disk. Si consiglia di porre attenzione su quale partizione viene istallato il m0n0wall perchè si potrebbe incorre nel problema di cancellazione del sistema operativo. L'ultima opzione è l'istallazione su CD-ROM. Da un punto di vista oggettivo, questa sembra essere la peggiore soluzione adottabile. Per utilizzare questo tipo di istallazione bisogna masterizzare l'immagine iso con un qualsiasi software di masterizzazione, assicurandosi che il software venga scritto in Mode-1 a 2048 byte/sector. In seguito bisogna formattare un disco floppy da 1.44MB 3.5" con file system FAT16. Inserire il floppy nell'apposito lettore e configurare l'avvio del pc da CD- ROM. 63

64 17.3 Primo avvio di m0n0wall Su un PC generico, il monowall non può assegnarsi automaticamente l'interfaccia di rete da utilizzare, anche perchè l'hardware può variare da PC a PC. Di norma il m0n0wall non ha problemi di funzionamento anche quando non sono collegati tastiera e schermo, ma questi, al primo avvio, sono necessari per la configurazione dell'interfaccia LAN. Il m0n0wall supporta la maggior parte delle schede di rete presenti sul mercato. Tuttavia è possibile controllare la lista di compatibilità del FreeBSD 4.9; si ricorda che le schede non compatibili non verranno rilevate e non sarà possibile nemmeno configurarle manualmente o aggiornare i driver presenti nell'immagine del m0n0wall. Al primo avvio si presenta un'interfaccia per la configurazione delle varie connessioni LAN, WAN e OPT. L'utente può distinguere i vari adattatori in base al loro indirizzo MAC. Suggerimento: il m0n0wall adotta un concetto di interfacce logiche. Come minimo, devono essere presenti due interfacce di rete, una LAN (Local Network) e una WAN (Wide Area Network). Tutte le interfacce aggiuntive rilevate vengono viste come OPTx (Optional) dove "x" indica il numero di interfaccia. Queste possono essere rinominate con nomi maggiormente esplicativi mediante l'interfaccia del m0n0wall. Un esempio è DMZ per indicare una connessione senza firewall. Dopo aver configurato il monowall basta effettuare un reboot del sistema e collegare il firewall alla rete privata e a internet. Una volta riavviato, la tastiera e il monitor possono essere scollegati dal firewall. 64

65 17.4 Traffic shaping con m0n0wall Generalmente ci sono tre parti nello shaper: Regole, code e pipes. Le regole sono il cervello dello shaper; funzionano tanto come le regole del firewall, tranne per il fatto che invece di far passare o ostruire il traffico, selezionano dove i pacchetti vanno: Direttamente ad un pipe, o attraverso una coda che a loro volta la passano sopra alla relativa pipe. Le code, shaper police sono frapposte fra le regole ed le pipes; mantengono i pacchetti in modo ordinato fino a che la pipe collegata non sia pronta per accettare più dati, e nel frattempo ripartisce la larghezza di banda su più pipes secondo le differenti code. Le pipes sono lo strato inferiore dello shaper, limitano semplicemente la larghezza di banda massima usata, così come opzione introduce un ritardo fisso per tutti i pacchetti che gli passano attraverso. Nota: Poiché lo shaper di traffico introduce un certo numero di strati in questo modo m0n0wall può processare i relativi pacchetti, comunque le varie limitazioni delle code riduce la banda disponibile o aumenta la latenza. Ciò deve essere prevista e nella maggior parte dei casi sarà più di quanto compensata dal aumento del rendimento realizzato con il trattamento adeguata del traffico. Il senso logico delle tre parti dello shaper sono dal basso verso l alto, cominciando dalle pipes, che accedono alle code che vengono rifinitre con le regole. E importante capire la logica per poter capire a fonodo come configurare lo shaper Pipes La proprità più importante delle pipes è l impostazione della larghezza di banda (o più precisamente, il limite di larghezza di banda ). Ciò determina il flusso massimo di traffico che passa tramite la pipe. Se più traffico prova a passare attraverso essa, la pipe avvierà la parte fall-back per la tenuta dei pacchetti (se i pacchetti sono in una coda, rimarranno semplicemente là fino a che la pipe non aspetta altro traffico). 65

66 Regole pratiche per quanto riguarda l'uso della larghezza di banda Accertarsi che la larghezza di banda totale di tutte le pipes (numero previsto di pipes virtuali ) non eccedi mai la larghezza di banda (nell'ambiente) reale (preferibilmente come viene rivelato da una velocità di prova, piuttosto chevcalcolandola dalla larghezza di banda dichiarata dall ISP. Se non è possibile occorre calcolarla, sottraendo almeno 10% della larghezza di banda dichiarata). Oltre al banda, una pipe può introdurre un ritardo simulando un collegamento di alto-strato latente. Soltanto un pacchetto è trasmesso tramite la pipe durante ogni intervallo, questo significa che se la spettrografia di massa è specificata a 10, solo 100 pacchetti entreranno ogni secondo. Tuttavia, potrebbe essere che ogni pacchetto viene ritardato semplicemente per l'intervallo specificato, in qual caso tutto il numero di pacchetti può passare ad ogni secondo, ma solo dopo aver aspettato il numero specificato di millisecondi. Ritardare il traffico non ha senzo a meno che realmente si desidera limitare severamente la velocità di determinati pacchetti e nondimeno questo è efficace per il traffico fuori banda, oppure come i pacchetti in banda con ritardo, quando raggiungono il firewall, che, in genere, causano un accumulo sull'isp, impedendo allo shaper di funzionare correttamente. Infine la pipe può avere un Maschera usata per determinare quando viene creata la pipe virtuale. Il motivo di questo è che ogni host IP confronta la maschera (sorgente o destinazione), e genera una pipe virtuale. Ciò può essere usata per dividere la larghezza di banda staticamente disponibile, fra gli hosts. Per esempio, una pipe che accetta il traffico outbound (come determinato da alcune regole) senza alcuna maschera, indurrà gli hosts locali a ripartire la larghezza di banda della pipe per tutto il traffico outbound che passa tramite questa pipe (larghezza di banda totale = larghezza di banda della pipe). Se la sorgente viene specificata per la maschera, ogni host locale otterrà la relativa pipe (virtuale) e ciascuna otterrà la larghezza di 66

67 banda specificata (larghezza di banda totale = larghezza di banda degli host locali della pipe x). Si potrebbe anche specificare una maschera di destinazione, in qual caso la pipe (outbound) genera una pipe virtuale per ogni host di destinazione sulla WAN. Occorre anche ricordare che il senso del traffico è determinato non solo tramite le regole, ma anche a quale interfaccia le regole sono applicate (lo stesso pacchetto potrebbe in primo luogo essere inbound sulla lan e outbound sulla WAN) così quando le regole si muovono da un'interfaccia ad un altra, si dovrà scambiare la maschera (se specificata). Alcuni esempi di pipes: No: Bandwidth, Delay, Mask, Description) 1: 232 Kbit/s, [blank], [blank], "<= ADSL Full" 2: 992 Kbit/s, [blank], [blank], "=> ADSL Full" Queste due pipe sono relative a una tipica connessione ADSL (che è disponibile tramite un modem ADSL di 1024/256 Kbit/s), in cui la banda disponibile viene divisa in due pipes Code Una coda ha effetto soltanto se esiste, realmente entra in gioco soltanto quando viene assegnato un peso differente ad un certo numero di code per mezzo della stessa pipe. In questo modo le code forniscono la priorità; più è alto il peso e più ottiene larghezza di banda dalle pipes (mentre sempre accertando che tutte le code ottengano la loro parte, anche se una coda con un peso più alto ha pacchetti in attesa, gli viene fornita soltanto la banda relativa al suo peso, così si ha l'uso del peso piuttosto che della priorità ). Regole pratiche per quanto riguarda l'uso del peso Occorre ricordare che questi sono i relativi rapporti. La coda che ha 20 dovrebbe ottenere due volte la larghezza di banda rispetto ad una coda che ha 10, ma poiché questo numero non è rigorosamente una priorità, anche se la coda che ha 20 ha tantissimi pacchetti in attesa è sicuro che la coda che ha 10 ottiene il relativo terzo della larghezza di banda. 67

68 Come le pipes, le code possono avere una maschera. La stessa logica che si applica alle pipes, si applica alle code. Le code virtuali sono generate basandosi su questa maschera. Mentre ci potrebbero essere altre possibilità ragionevoli, la più ovvia è che una coda dovrebbe tipicamente avere la stessa regolazione della maschera della relativa pipe collegata ed in molti casi la coda non dovrebbe avere nessuna maschera, anche se la pipe ne ha una. L'unico motivo per dare ad una coda una maschera, è dare ad ogni hosts una coda separata e una pipe separata, così da rendente il traffico per ogni hosts interamente independante dal traffico dagli altri hosts. Regole pratiche per quanto riguarda l'uso della maschena Occorre accertare che la maschera di una coda (se c'è) sia abbinata a quella della pipe (se c'è) che si sta usando. Poiché è possibile specificare una regola che trasmette i pacchetti direttamente alla pipe, escludente le code complessivamente, c è sempre una coda di prioritaria supplementare disponibile. Dovrebbe tuttavia, essere chiaro che alcuni piccoli pacchetti, (quali il ACK, SYN e DNS) dovrebbero attraversare lo shaper il più rapidamente possibile. Alcuni esempi di coda: (Num: Pipe, Weight, Mask, Description) 1: 1, 96, [blank], "<= High" 2: 1, 32, [blank], "<= Medium" 3: 1, 2, [blank], "<= Low" Queste sono le differenti code di uscita. Tutte loro usano alcune pipe ma differenti pesi per priotizzare differenti traffici. 4: 2, 96, [blank], "=> High" 5: 2, 32, [blank], "=> Medium" 6: 2, 2, [blank], "=> Low" Ci sono altre tre code di ingresso come sopra, ma per l altro traffico. 68

69 7: 3, 4, [blank], "<= Limited" 8: 4, 4, [blank], "=> Limited" Queste sono le code usate dagli guests che vanno su due pipes limitate e con maschera. Queste code vanno alle pipes separatamente, ed è evidente che si è scelti di usare una coda globale anziché quella virtuale minimizzando lo sforzo di m0n0wall Regole Come accennato le regole dello shaper sono uguali a quelle usate per il firewall, in cui è possibile specificare l'interfaccia, il protocollo, la sorgente, destinazione e il range di porte sono le stesse. Oltre questo, è possibile specificare una direzione (riguardante la scelta dell'interfaccia), un formato di pacchetto (o l'intervallo di grandezza) ed un certo numero di flag TCP che devono o non devono essere presenti nel pacchetto, interamente usate per raffinare i test di verifica. Infine ogni regola ha un obiettivo che può essere una pipe o una coda, a cui tutti i pacchetti di corrispondenza sono inviati. Come con le regole del firewall, l'ordine delle regole dello shaper sono relative, e un pacchetto sarà controllato in base alle regole dall alto verso i basso e la prima regola che corrisponde sarà usata per decidere a quale pipe o coda il pacchetto sarà trasmesso. La lista delle regola potrebbe essere separata per ogni interfaccia come per le regole del firewall. Creare queste regole è come fare le regole per il firewall, con alcune eccezioni: L'interfaccia, è tipicamente la WAN cioè la rete esterna che dovrà essere modellata. Inoltre una regola dello shaper ha un senso, che viene usato per dividere il traffico fra le pipe e le code di ingresso e uscita. Infine è possibile specificare un formato del pacchetto (o l'intervallo di grandezza) ed un certo numero di flag che devono essere contenute o al di fuori nel pacchetto. I flags sono usati per limitare i test di verifica di corrispondenza secondo determinate flags che non sono contenute o vengono usate principalmente per i casi speciali, come i pacchetti SYN o ACK. La limitazione di formato può essere usata quando esclude le code, per impedire ai grandi pacchetti ACK (IE. pacchetti uniti di dati e del ACK) di riempire la pipe e così di ostruire le code, o in altri casi dove i pacchetti devono essere separatamente trattati. Le regole dello Shaper hanno anche una direzione (in, out o any) che viene usata per splittare il traffico sulle pipes o sulle code d ingresso o uscita. 69

70 Alcune regole di esempio: (IF,Dir, Proto,Src/port(s),Dest/port(s),Length,Flags,Target,Description) LAN,any,any,IntraNet/any,IntraNet/any,[blank],[don't care],pipe 5,"LAN<=>WLAN" WLAN,any,any,IntraNet/any,IntraNet/any,[blank],[don't care],pipe 5,"WLAN<=>LAN" Queste regole sono impiegate per limitare il traffico della LAN <=> WLAN (per accetare che una certa larghezza di banda sia riservata per traffico dalla rete senza file). Occorre notare che non viene usato una coda per questo traffico. Infatti si presuppone che ci sarà raramente un accumulo/congestione su Intranet. IntraNet è il pseudonimo per la sottorete x.x.32.0/23 che comprende le sottoreti di WLAN (x.x.32.0/24) e LAN (x.x.33.0/24). Questo ha senso per evitare di avere un insieme di regole simile per ogni sottorete (lo stesso trucco può essere usato per il DHCP o altro range di IP, se fatto per adattare un formato e un contorno di sottorete). WLAN è l interfaccia OPT1, usata come AP senza fili in m0n0wall. WAN,out,TCP,PrioNet/any,*/any,0-128,ACK set,pipe 1,"<= ACK" WAN,in,TCP,*/any,PrioNet/any,0-128,ACK set,pipe 2, "=> ACK" Queste regole sono usate per accertare il trasferimento rapido di piccoli ACKs in entrambi i sensi (questi sono trasmessi direttamente alla pipe anziché attraverso una coda). Ho un insieme delle regole simile per SYNs (con il flag di SYN anziché il ACK ed il formato = 0-512) e per DNS (nessun flag, formato = 0-512, porta sorgente/destinazione = 53, con un insieme di regole supplementari per l UDP. PrioNet è uno pseudonimo per una piccola sottorete (x.x /30), comprendente l'ips assegnato ai miei hosts sulla WLAN. WAN,out,TCP,PrioNet/25,any/*,[blank],[don't care],queue 1,"<= SMTP" WAN,in,TCP,*/any,PrioNet/143,[blank],[don't care],queue 4,"=> IMAP" Queste regole sono per il traffico della posta (smtp fuori ed IMAP dentro in questo caso). Questo traffico è passato alla coda di prioritaria, per accertare che la posta otterrà un eccedenza di preferenza su qualunque altro genere di traffico (con l'eccezione dei pacchetti ACK, SYN e DNS). WAN,out,TCP,myhost/p2pp,any/*,[blank],[don't care],queue 3,"<=P2P(clients)" WAN,in,TCP,*/any,myhost/p2pp,[blank],[don't care],queue 6,"=>P2P(clients)" 70

71 Queste regole sono per i programmi p2p. Questo traffico viene passato alla coda di scarsa priorità, per accertare che nessun altro ottenga la preferenza al di sopra del traffico p2p. Facendolo questo, con una coda con peso basso che va allo stessa pipe associata all altro traffico, permette che il programma p2p usi tutta la larghezza di banda disponibile, mentre viene forzata per liberargli una determinata frazione di banda una volta che un altro tipo di traffico ha bisogno di banda. WAN, out,any,prionet/any,*/any,[blank],[don't care],queue 2,"<=Other Prio traffic" WAN,in,any,*/any,PrioNet/any,[blank],[don't care],queue 5,"=>Other Prio traffic" Queste regole sono catch alls per tutto il traffico non abbinato alle regole precedentementi specificate, ma che va a o da gli hosts di priorità. Questo è passato alla coda priorità media, dandogli la priorità al di sopra del traffico p2p. WAN,out,any,*/any,*/any,[blank],[don't care],queue 7,"<=Other Prio traffic" WAN,in,any,*/any,*/any,[blank],[don't care],queue 8,"=>Other Prio traffic" Queste regole controllano tutto il taffico che non è stato controllato precedentemente dalle altre regole, presupponendo che questo sia traffico di un generico host sulla WAN. Questo traffico è passato alle code limitate, che a loro volta lo passano alle pipes limitate e mascherate (che, come accennato, forniranno una ripartizione di larghezza di banda statica per ciascuno di questi hosts). 71

72 Configurazione grafica di regole con m0n0wall Per poter comporre delle regole con m0n0wall occorre accedere alla comoda interfaccia web che esso fornisce e andare a configurare i più svariati parametri per quanto riguarda firewall, traffic shaping e molto altro. L immagine successiva riporta come è possibile impostare semplicemente il traffic shaping con l apposito wizard fornito da m0n0wall. In questo esempio, come è possiblie osservare dall immagine, la banda in download e upload è stata imposta a 80 kbps, 72

73 73

74 L immagine precedente ci mostra il risultato automatico che tali impostazione provoca alle impostazioni del traffic shaping e le regole create dal wizard in automatico. Come risulta dall immagine le regole si riferiscono al traffico entrante che al traffico uscente dall interfaccia di rete e su questo traffico viene effettuata la limitazione di 80 kbps. L immagine riporta le pipes creata automaticamente dal wizard, come si vede i valori impostati sono leggermente diversi dagli 80 kbps impostati sul wizard, per l upload è di 72 kbit/s per il download 76 kbit. L immagine successiva invece riporta le code che vengono create in automatico. 74

75 L immagine successiva riporta le code che vengono automaticamente create. Le 8 code vengono creata automaticamente dal wizard, come si vede ci sono 5 code per l upload e 3 code per il download, con il diverso peso per ogni tipo di traffico che può transitare attraverso il firewall. Di seguito viene riportata l immagine che riporta la velocià di download per il taffico ftp con l impostazione del limite di 80 kbps. 75

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP.

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP. Configurazione di indirizzi IP statici multipli Per mappare gli indirizzi IP pubblici, associandoli a Server interni, è possibile sfruttare due differenti metodi: 1. uso della funzione di Address Translation

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

CONFIGURAZIONE DEI SERVIZI (seconda parte)

CONFIGURAZIONE DEI SERVIZI (seconda parte) Corso ForTIC C2 LEZIONE n. 10 CONFIGURAZIONE DEI SERVIZI (seconda parte) WEB SERVER PROXY FIREWALL Strumenti di controllo della rete I contenuti di questo documento, salvo diversa indicazione, sono rilasciati

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi:

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Routing (instradamento) in Internet Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Stub AS: istituzione piccola Multihomed AS: grande istituzione (nessun ( transito Transit AS: provider

Dettagli

Routers and Routing process explanation through the Network Address Translation

Routers and Routing process explanation through the Network Address Translation Routers and Routing process explanation through the Network Address Translation 0x100 Router 0x110 Cos è? Quello che nel gergo informatico viene chiamato Router (o Switch Router) è un dispositivo di rete

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 2 Marzo 2005, ore 14.30 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette.

Dettagli

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Protocolli di rete Sommario Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Configurazione statica e dinamica

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Il World Wide Web: nozioni introduttive

Il World Wide Web: nozioni introduttive Il World Wide Web: nozioni introduttive Dott. Nicole NOVIELLI novielli@di.uniba.it http://www.di.uniba.it/intint/people/nicole.html Cos è Internet! Acronimo di "interconnected networks" ("reti interconnesse")!

Dettagli

Imola Prontuario di configurazioni di base

Imola Prontuario di configurazioni di base Imola Prontuario di configurazioni di base vers. 1.3 1.0 24/01/2011 MDG: Primo rilascio 1.1. 31/01/2011 VLL: Fix su peso rotte 1.2 07/02/2011 VLL: snmp, radius, banner 1.3 20/04/2011 VLL: Autenticazione

Dettagli

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Procedure per la scansione di sicurezza Versione 1.1 Release: settembre 2006 Indice generale Finalità... 1 Introduzione... 1 Ambito di applicazione dei

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp.

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. Symbolic Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. La nostra mission è di rendere disponibili soluzioni avanzate per la sicurezza

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

Dettagli

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+... Setup delle ConnessioniTCP Una connessione TCP viene instaurata con le seguenti fasi, che formano il Three-Way Handshake (perchè formato da almeno 3 pacchetti trasmessi): 1) il server si predispone ad

Dettagli

Cosa è lo spoofing. Cosa è lo spoofing. Argomenti. Spoofing conosciuti. Introduzione. Corso di Sistemi di Elaborazione: Sicurezza su Reti

Cosa è lo spoofing. Cosa è lo spoofing. Argomenti. Spoofing conosciuti. Introduzione. Corso di Sistemi di Elaborazione: Sicurezza su Reti Introduzione Corso di Sistemi di Elaborazione: Sicurezza su Reti A.A. 2001/2002 Prof. A. De Santis A cura di: Angelo Celentano matr. 53/11544 Raffaele Pisapia matr. 53/10991 Mariangela Verrecchia matr.

Dettagli

La configurazione degli indirizzi IP. Configurazione statica, con DHCP, e stateless

La configurazione degli indirizzi IP. Configurazione statica, con DHCP, e stateless La configurazione degli indirizzi IP Configurazione statica, con DHCP, e stateless 1 Parametri essenziali per una stazione IP Parametri obbligatori Indirizzo IP Netmask Parametri formalmente non obbligatori,

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

ARP (Address Resolution Protocol)

ARP (Address Resolution Protocol) ARP (Address Resolution Protocol) Il routing Indirizzo IP della stazione mittente conosce: - il proprio indirizzo (IP e MAC) - la netmask (cioè la subnet) - l indirizzo IP del default gateway, il router

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

DNS (Domain Name System) Gruppo Linux

DNS (Domain Name System) Gruppo Linux DNS (Domain Name System) Gruppo Linux Luca Sozio Matteo Giordano Vincenzo Sgaramella Enrico Palmerini DNS (Domain Name System) Ci sono due modi per identificare un host nella rete: - Attraverso un hostname

Dettagli

Lezione n 1! Introduzione"

Lezione n 1! Introduzione Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Cos è un protocollo? Ciao. Ciao 2:00. tempo. Un protocollo umano e un protocollo di reti di computer:

Cos è un protocollo? Ciao. Ciao 2:00. <file> tempo. Un protocollo umano e un protocollo di reti di computer: Cos è un protocollo? Un protocollo umano e un protocollo di reti di computer: Ciao Ciao Hai l ora? 2:00 tempo TCP connection request TCP connection reply. Get http://www.di.unito.it/index.htm Domanda:

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Introduzione alle VLAN Autore: Roberto Bandiera 21 gennaio 2015

Introduzione alle VLAN Autore: Roberto Bandiera 21 gennaio 2015 Introduzione alle VLAN Autore: Roberto Bandiera 21 gennaio 2015 Definizione Mentre una LAN è una rete locale costituita da un certo numero di pc connessi ad uno switch, una VLAN è una LAN VIRTUALE (Virtual

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Funzioni nuove e modificate

Funzioni nuove e modificate Gigaset S675 IP, S685 IP, C470 IP, C475 IP: Funzioni nuove e modificate Questo documento integra il manuale di istruzioni dei telefoni VoIP Gigaset: Gigaset C470 IP, Gigaset C475 IP, Gigaset S675 IP e

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

Determinare la grandezza della sottorete

Determinare la grandezza della sottorete Determinare la grandezza della sottorete Ogni rete IP possiede due indirizzi non assegnabili direttamente agli host l indirizzo della rete a cui appartiene e l'indirizzo di broadcast. Quando si creano

Dettagli

SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it)

SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it) SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it) In una rete TCP/IP, se un computer (A) deve inoltrare una richiesta ad un altro computer (B) attraverso la rete locale, lo dovrà

Dettagli

MPLS è una tecnologia ad alte prestazioni per l instradamento di pacchetti IP attraverso una rete condivisa

MPLS è una tecnologia ad alte prestazioni per l instradamento di pacchetti IP attraverso una rete condivisa Cosa è MPLS MPLS è una tecnologia ad alte prestazioni per l instradamento di pacchetti IP attraverso una rete condivisa L idea di base consiste nell associare a ciascun pacchetto un breve identificativo

Dettagli

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

Dettagli

Incontri a Tema Universita deglistudidipadova. GNU/Linux Firewall. Alberto Cammozzo Mauro Malvestio {mmzz, malveo} @ stat.unipd.it

Incontri a Tema Universita deglistudidipadova. GNU/Linux Firewall. Alberto Cammozzo Mauro Malvestio {mmzz, malveo} @ stat.unipd.it Incontri a Tema Universita deglistudidipadova GNU/Linux Firewall Alberto Cammozzo Mauro Malvestio {mmzz, malveo} @ stat.unipd.it NAT (SNAT / DNAT / MASQ) SNAT : Cambia la provenienza della connesione [SOURCE

Dettagli

Ambienti supportati. Configurazione della stampante di rete. Stampa. Gestione della carta. Manutenzione. Risoluzione dei problemi.

Ambienti supportati. Configurazione della stampante di rete. Stampa. Gestione della carta. Manutenzione. Risoluzione dei problemi. I server di stampa vengono utilizzati per collegare le stampanti alle reti. In tal modo, più utenti possono accedere alle stampanti dalle proprie workstation, condividendo sofisticate e costose risorse.

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

SERVER VIDEO 1-PORTA H.264

SERVER VIDEO 1-PORTA H.264 SERVER VIDEO 1-PORTA H.264 MANUALE UTENTE DN-16100 SALVAGUARDIA IMPORTANTE Tutti i prodotti senza piombo offerti dall'azienda sono a norma con i requisiti della legge Europea sulla restrizione per l'uso

Dettagli

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright

Dettagli

Istruzioni per l uso Guida software

Istruzioni per l uso Guida software Istruzioni per l uso Guida software Leggere subito Manuali per questa stampante...8 Preparazione per la stampa Installazione rapida...9 Conferma del metodo di connessione...11 Connessione di rete...11

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Sicurezza delle reti wireless. Alberto Gianoli alberto.gianoli@fe.infn.it

Sicurezza delle reti wireless. Alberto Gianoli alberto.gianoli@fe.infn.it Sicurezza delle reti wireless Alberto Gianoli alberto.gianoli@fe.infn.it Concetti di base IEEE 802.11: famiglia di standard tra cui: 802.11a, b, g: physical e max data rate spec. 802.11e: QoS (traffic

Dettagli

Gestione posta elettronica (versione 1.1)

Gestione posta elettronica (versione 1.1) Gestione posta elettronica (versione 1.1) Premessa La presente guida illustra le fasi da seguire per una corretta gestione della posta elettronica ai fini della protocollazione in entrata delle mail (o

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Architettura di un sistema informatico 1 CONCETTI GENERALI

Architettura di un sistema informatico 1 CONCETTI GENERALI Architettura di un sistema informatico Realizzata dal Dott. Dino Feragalli 1 CONCETTI GENERALI 1.1 Obiettivi Il seguente progetto vuole descrivere l amministrazione dell ITC (Information Tecnology end

Dettagli

Posta Elettronica Certificata

Posta Elettronica Certificata Posta Elettronica Certificata Manuale di utilizzo del servizio Webmail di Telecom Italia Trust Technologies Documento ad uso pubblico Pag. 1 di 33 Indice degli argomenti 1 INTRODUZIONE... 3 1.1 Obiettivi...

Dettagli

SOGEAS - Manuale operatore

SOGEAS - Manuale operatore SOGEAS - Manuale operatore Accesso La home page del programma si trova all indirizzo: http://www.sogeas.net Per accedere, l operatore dovrà cliccare sulla voce Accedi in alto a destra ed apparirà la seguente

Dettagli

- Antivirus, Firewall e buone norme di comportamento

- Antivirus, Firewall e buone norme di comportamento Reti Di cosa parleremo? - Definizione di Rete e Concetti di Base - Tipologie di reti - Tecnologie Wireless - Internet e WWW - Connessioni casalinghe a Internet - Posta elettronica, FTP e Internet Browser

Dettagli

Qualità di Servizio - Tutorial - Mauro Campanella INFN-GARR Mauro.Campanella@garr.it

Qualità di Servizio - Tutorial - Mauro Campanella INFN-GARR Mauro.Campanella@garr.it Qualità di Servizio - Tutorial - Mauro Campanella INFN-GARR Mauro.Campanella@garr.it Agenda - Introduzione alla Qualità di Servizio - Definizione quantitativa della QoS - Architetture di QoS - QoS : compiti

Dettagli

Manuale di installazione e d uso

Manuale di installazione e d uso Manuale di installazione e d uso 1 Indice Installazione del POS pag. 2 Funzionalità di Base - POS Sagem - Accesso Operatore pag. 2 - Leggere una Card/braccialetto Cliente con il lettore di prossimità TeliumPass

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

ATA MEDIATRIX 2102 GUIDA ALL INSTALLAZIONE

ATA MEDIATRIX 2102 GUIDA ALL INSTALLAZIONE ATA MEDIATRIX 2102 GUIDA ALL INSTALLAZIONE Mediatrix 2102 ATA Guida all installazione EUTELIAVOIP Rev1-0 pag.2 INDICE SERVIZIO EUTELIAVOIP...3 COMPONENTI PRESENTI NELLA SCATOLA DEL MEDIATRIX 2102...3 COLLEGAMENTO

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

Modulo 11. Il livello trasporto ed il protocollo TCP Indice

Modulo 11. Il livello trasporto ed il protocollo TCP Indice Pagina 1 di 14 Il livello trasporto ed il protocollo TCP Indice servizi del livello trasporto multiplexing/demultiplexing trasporto senza connesione: UDP principi del trasferimento dati affidabile trasporto

Dettagli

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

Dettagli

Reti di Telecomunicazione Lezione 7

Reti di Telecomunicazione Lezione 7 Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1

UBUNTU SERVER. Installazione e configurazione di Ubuntu Server. M. Cesa 1 UBUNTU SERVER Installazione e configurazione di Ubuntu Server M. Cesa 1 Ubuntu Server Scaricare la versione deisiderata dalla pagina ufficiale http://www.ubuntu.com/getubuntu/download-server Selezioniare

Dettagli

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete.

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete. Premessa. La traccia di questo anno integra richieste che possono essere ricondotte a due tipi di prove, informatica sistemi, senza lasciare spazio ad opzioni facoltative. Alcuni quesiti vanno oltre le

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: Eduard Roccatello eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor NetMonitor Micro guida all uso per la versione 1.2.0 di NetMonitor Cos è NetMonitor? NetMonitor è un piccolo software per il monitoraggio dei dispositivi in rete. Permette di avere una panoramica sui dispositivi

Dettagli

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi I semestre 03/04 Inidirizzi IP e Nomi di Dominio Domain Name System Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica

Dettagli

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it Zabbix 4 Dummies Dimitri Bellini, Zabbix Trainer Quadrata.it Relatore Nome: Biografia: Dimitri Bellini Decennale esperienza su sistemi operativi UX based, Storage Area Network, Array Management e tutto

Dettagli

Plesk Automation. Parallels. Domande tecniche più frequenti

Plesk Automation. Parallels. Domande tecniche più frequenti Parallels Plesk Automation Primo trimestre, 2013 Domande tecniche più frequenti Questo documento ha come scopo quello di rispondere alle domande tecniche che possono sorgere quando si installa e si utilizza

Dettagli

Manuale Software. www.smsend.it

Manuale Software. www.smsend.it Manuale Software www.smsend.it 1 INTRODUZIONE 3 Multilanguage 4 PANNELLO DI CONTROLLO 5 Start page 6 Profilo 7 Ordini 8 Acquista Ricarica 9 Coupon AdWords 10 Pec e Domini 11 MESSAGGI 12 Invio singolo sms

Dettagli

FileMaker Server 13. Guida introduttiva

FileMaker Server 13. Guida introduttiva FileMaker Server 13 Guida introduttiva 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono marchi

Dettagli

Come difendersi dai VIRUS

Come difendersi dai VIRUS Come difendersi dai VIRUS DEFINIZIONE Un virus è un programma, cioè una serie di istruzioni, scritte in un linguaggio di programmazione, in passato era di solito di basso livello*, mentre con l'avvento

Dettagli

PRESENTAZIONE DI UN SMS AL GATEWAY

PRESENTAZIONE DI UN SMS AL GATEWAY Interfaccia Full Ascii Con questa interfaccia è possibile inviare i dati al Server utilizzando solo caratteri Ascii rappresentabili e solo i valori che cambiano tra un sms e l altro, mantenendo la connessione

Dettagli

Progetto VirtualCED Clustered

Progetto VirtualCED Clustered Progetto VirtualCED Clustered Un passo indietro Il progetto VirtualCED, descritto in un precedente articolo 1, è ormai stato implementato con successo. Riassumendo brevemente, si tratta di un progetto

Dettagli

Gestione Nuova Casella email

Gestione Nuova Casella email Gestione Nuova Casella email Per accedere alla vecchia casella questo l indirizzo web: http://62.149.157.9/ Potrà essere utile accedere alla vecchia gestione per esportare la rubrica e reimportala come

Dettagli

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

Questo documento è allegato al libro Elettrotecnica, Elettronica, Telecomunicazioni e Automazione di

Questo documento è allegato al libro Elettrotecnica, Elettronica, Telecomunicazioni e Automazione di Questo documento è allegato al libro Elettrotecnica, Elettronica, Telecomunicazioni e Automazione di Trapa L., IBN Editore, a cui si può fare riferimento per maggiori approfondimenti. Altri argomenti correlati

Dettagli

Windows Mail Outlook Express 6 Microsoft Outlook 2003 Microsoft Outlook 2007 Thunderbird Opera Mail Mac Mail

Windows Mail Outlook Express 6 Microsoft Outlook 2003 Microsoft Outlook 2007 Thunderbird Opera Mail Mac Mail Configurare un programma di posta con l account PEC di Il Titolare di una nuova casella PEC può accedere al sistema sia tramite Web (Webmail i ), sia configurando il proprio account ii nel programma di

Dettagli

Sicurezza delle reti Spoofing: cos'è e come avviene IP Spoofing Spoofing non Cieco

Sicurezza delle reti Spoofing: cos'è e come avviene IP Spoofing Spoofing non Cieco SPOOFING Sicurezza delle reti Non bisogna essere sorpresi dal fatto che le reti di computer siano l'obbiettivo preferito, sia oggi sia in futuro, da parte di aggressori. Visto che un attacco su larga scala

Dettagli

PAOLO CAMAGNI RICCARDO NIKOLASSY. I linguaggi. Web. del. HTML, CSS, JavaScript, VBScript, ASP, PHP

PAOLO CAMAGNI RICCARDO NIKOLASSY. I linguaggi. Web. del. HTML, CSS, JavaScript, VBScript, ASP, PHP PAOLO CAMAGNI RICCARDO NIKOLASSY I linguaggi del Web HTML, CSS, JavaScript, VBScript, ASP, PHP Paolo Camagni Riccardo Nikolassy I linguaggi del Web HTML, CSS, JavaScript, VBScript, ASP, PHP EDITORE ULRICO

Dettagli

GESTIONE DELLA E-MAIL

GESTIONE DELLA E-MAIL GESTIONE DELLA E-MAIL Esistono due metodologie, completamente diverse tra loro, in grado di consentire la gestione di più caselle di Posta Elettronica: 1. tramite un'interfaccia Web Mail; 2. tramite alcuni

Dettagli

MailStore Proxy è disponibile gratuitamente per tutti i clienti di MailStore Server all indirizzo http://www.mailstore.com/en/downloads.

MailStore Proxy è disponibile gratuitamente per tutti i clienti di MailStore Server all indirizzo http://www.mailstore.com/en/downloads. MailStore Proxy Con MailStore Proxy, il server proxy di MailStore, è possibile archiviare i messaggi in modo automatico al momento dell invio/ricezione. I pro e i contro di questa procedura vengono esaminati

Dettagli

Standard di Sicurezza sui Dati previsti dai Circuiti Internazionali. Payment Card Industry Data Security Standard

Standard di Sicurezza sui Dati previsti dai Circuiti Internazionali. Payment Card Industry Data Security Standard Standard di Sicurezza sui Dati previsti dai Circuiti Internazionali Payment Card Industry Data Security Standard STANDARD DI SICUREZZA SUI DATI PREVISTI DAI CIRCUITI INTERNAZIONALI (Payment Card Industry

Dettagli

Documentazione Servizio SMS WEB. Versione 1.0

Documentazione Servizio SMS WEB. Versione 1.0 Documentazione Servizio SMS WEB Versione 1.0 1 Contenuti 1 INTRODUZIONE...5 1.1 MULTILANGUAGE...5 2 MESSAGGI...7 2.1 MESSAGGI...7 2.1.1 INVIO SINGOLO SMS...7 2.1.2 INVIO MULTIPLO SMS...9 2.1.3 INVIO MMS

Dettagli

Considerazioni generali nella progettazione di una rete

Considerazioni generali nella progettazione di una rete Considerazioni generali nella progettazione di una rete La tecnologia che ormai costituisce lo standard per le reti LAN è l Ethernet per cui si sceglie di realizzare una LAN Ethernet 100BASE-TX (FastEhernet)

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

Interfaccia Web per customizzare l interfaccia dei terminali e

Interfaccia Web per customizzare l interfaccia dei terminali e SIP - Session Initiation Protocol Il protocollo SIP (RFC 2543) è un protocollo di segnalazione e controllo in architettura peer-to-peer che opera al livello delle applicazioni e quindi sviluppato per stabilire

Dettagli

CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB...

CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB... 1. CHE COS È DOCFLY FATTURAZIONE PA... 3 1.1 IL GESTIONALE WEB... 3 1.2 ACCESSO ALL INTERFACCIA WEB... 4 1.3 FUNZIONALITÀ DELL INTERFACCIA WEB... 5 1.3.1 CREAZIONE GUIDATA DELLA FATTURA IN FORMATO XML

Dettagli

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,

Dettagli

Guida all'installazione ed uso dell'app RXCamLink

Guida all'installazione ed uso dell'app RXCamLink Guida all'installazione ed uso dell'app RXCamLink Questa guida riporta i passi relativi all'installazione ed all'utilizzo dell'app "RxCamLink" per il collegamento remoto in mobilità a sistemi TVCC basati

Dettagli

Posta Elettronica. Claudio Cardinali claudio@csolution.it

Posta Elettronica. Claudio Cardinali claudio@csolution.it Posta Elettronica Claudio Cardinali claudio@csolution.it Posta Elettronica: WebMail Una Webmail è un'applicazione web che permette di gestire uno o più account di posta elettronica attraverso un Browser.

Dettagli

Web Solution 2011 EUR

Web Solution 2011 EUR Via Macaggi, 17 int.14 16121 Genova - Italy - Tel. +39 010 591926 /010 4074703 Fax +39 010 4206799 Cod. fisc. e Partita IVA 03365050107 Cap. soc. 10.400,00 C.C.I.A.A. 338455 Iscr. Trib. 58109 www.libertyline.com

Dettagli

Come configurare un programma di posta con l account PEC di GLOBALCERT.IT

Come configurare un programma di posta con l account PEC di GLOBALCERT.IT Come configurare un programma di posta con l account PEC di GLOBALCERT.IT Il Titolare di una nuova casella PEC può accedere al sistema sia tramite Web (Webmail i ), sia configurando il proprio account

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli