Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoDino Castellano Modificato 8 anni fa
1
IPTABLES Un Firewall Linux Telematica A.A. 2005-2006 Claudio Bizzarri – Franco Pirri
2
LAN I collegamenti sono nell'ordine di 100m Velocità max possibile superiore alle altre reti I messaggi broadcast raggiungono tutti i terminali UTP+Ethernet 2
3
Intranet Rete interna (ad uso privato) di una struttura Può essere una semplice LAN o una connessione di LAN E' generalmente presente un server R R 3
4
Internet L'unione di tutte le reti locali utilizzando TCP/IP LAN 4
5
Extranet Una intranet realizzata tramite la rete pubblica anziché connessioni dedicate LAN 5
6
NAT e PAT NAT: Network Address Translation PAT: Port Address Translation Linux: port forwarding e masquerading Per il Bizzarri: – NAT = Port Forwarding – PAT = Masquerading 6
7
PAT Sadd: 10 SP: 4521 Dadd: 1.2.3.4 DP: 80 Sadd: 11 SP: 5623 Dadd: 1.2.3.4 DP: 80 Sadd: 12 SP: 2121 Dadd: 1.2.3.4 DP: 80 Tabella Sadd 10SP 4521SP 9000 Sadd 11SP 5623SP 9001 Sadd 12SP 2121SP 9002 Timeout: 120s Internet 192.168.1.0/24 80.121.23.21 7
8
NAT add: 10 add: 11 add: 12 Tabella Dport 80Dadd 10Dport2 80 Dport 110Dadd 11Dport2 110 Dport 8080Dadd 12Dport2 80 Tabella dinamica Sadd 1.2.3.4Dport 80Res 10:80 Sadd 3.4.5.6 Dport 110Res 11:110 Sadd 7.8.9.1 Dport 8080Res 12:80 Timeout: 120s Internet 192.168.1.0/24 80.121.23.21 8
9
Configurazioni di rete 1 indirizzo IP pubblico ADSL Router Server Router/modem ADSL con funzionalità di NAT/PAT 9
10
Configurazioni di rete 1-2 (1-4) indirizzi IP pubblici ADSL / HDSL M/R Server 1 Server 2 Questo può essere un modem ADSL PPPoE con un solo indirizzo pubblico NAT e PAT sono fatti da un server Linux Può realizzare proxy trasparente 10
11
Configurazioni di rete 3 o più indirizzi IP pubblici (8 o più) ADSL / HDSL CDN RouterFW Server 2 Server 1 Le comunicazioni fra S1 e S2 sono gestite dal firewall 11
12
12 Cenno su NETFILTER netfilter è un framework per il manipolamento dei pacchetti, esterno alla normale interfaccia socket Berkeley. Vediamo le sue caratteristiche principali: 1. ogni protocollo definisce degli "hook" (IPv4 ne definisce 5), ovvero punti ben definiti durante il viaggio dei pacchetti nella pila protocollare. In ciascuno di questi punti, il protocollo richiamerà il framework netfilter fornendo il pacchetto e il numero dell'hook. 2. porzioni del kernel possono registrarsi per "ascoltare", per ogni protocollo, differenti hook. Perciò quando un pacchetto è passato al framework netfilter, esso controlla se qualcuno si è registrato per quel determinato protocollo e hook; se sì, a ciascuno di essi è data, in ordine, una chance per esaminare (ed eventualmente alterare) il pacchetto, per scartarlo, per lasciarlo proseguire, o per chiedere a netfilter di accodarlo per lo userspace (spazio utente).
13
13 Cenno su NETFILTER 3. i pacchetti che sono stati accodati sono sistemati per essere inviati allo userspace; questi pacchetti sono gestiti in modo asincrono. 4. La parte finale consiste di splendidi commenti sul codice e di una ottima documentazione. 1432 Pacchetto che attraversa il sistema netfilter Netfilter Iptables / NAT
14
14 Cenno su NETFILTER – In aggiunta a questo framework grezzo sono stati realizzati vari moduli che forniscono funzionalità simili ai kernel precedenti (pre-netfilter), in particolare un sistema NAT e uno di filtraggio dei pacchetti (iptables) entrambi estendibili.
15
15 IPTABLES Iptables e’ l’interfaccia utente per l’impostazione di filtri eseguiti da netfilter a livello di Kernel (disponibile in tutte le versioni di Linux) E’ l’evoluzione di ipchains, entrambi sviluppati da Rusty Russell Attualmente la versione disponibile e’ la 1.3.1 da implementare sulla versione Kernel >= 2.4.x In grado di effettuare filtering su protocolli IPv4, IPv6, Decnet, etc.
16
16 Tipologie di filtri Controlla e verifica 5 tipi diversi di flussi attraverso la definizione di altrettante tabelle o chains: – Input – Output – Forward – Prerouting – Postrouting Oltre alle tabelle citate se ne possono creare altre personalizzate per scopi specifici E’ in grado di effettuare i LOG
17
17 Flusso pacchetti in IPTABLES http://www.siliconvalleyccie.com/linux-hn/iptables-intro.htm
18
18 Tipologie di filtri All’ interno di ciascuna tabella effettua il controllo su: – Input e Output Interface – Source MAC Address – Source e destination IP Address – Invalid Packets (CRC error, frammenti, etc) – Protocol (IP, TCP, UDP, ICMP, etc.) – Source e destination port (TCP e UDP) – Flag TCP (SYN, FIN, ACK, RST, URG, PSH, ALL, NONE) – Rate limit – Etc.
19
19 Politiche applicabili Per ogni pacchetto analizzato iptables e’ in grado di applicare le seguenti politiche: – ACCEPT (accetta il pacchetto) – DROP e REJECT (scarta il pacchetto) – QUEUE (passa il pacchetto allo userspace) – RETURN (esce dalla access list della attuale tabella e passa il controllo alla successiva tabella) La sintassi e’ di tipo command line per la costruzione di ACL sequenziali (per ciascun pacchetto l’esecuzione termina al primo match).
20
20 Esempi applicativi Dipartimento di Elettronica e Telecomunicazioni di Firenze Acme S.p.A.
21
DET LAN 150.217.8.0/24 FW ROUTERROUTER 21
22
22 DET (0) #!/bin/bash # # Variabili generali # BLACK_LIST=$(cat /etc/sysconfig/fw_tabelle/fw_black_list) SERVER_GOOD=$(cat /etc/sysconfig/fw_tabelle/fw_good_server) SERVER_BAD=$(cat /etc/sysconfig/fw_tabelle/fw_bad_server) CLIENT_GOOD=$(cat /etc/sysconfig/fw_tabelle/fw_good_client) CLIENT_BAD=$(cat /etc/sysconfig/fw_tabelle/fw_bad_client) ADMIN=$(cat /etc/sysconfig/fw_tabelle/fw_admin) I_ETH=eth0 O_ETH=eth1 #Pulizia delle regole service iptables stop #Attivazione modulo per servizio FTP attivo /sbin/modprobe ip_conntrack_ftp #Regole generali delle 3 catene per la tabella "filter" iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT #Regole per interfaccia Loopback: iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
23
23 DET (1) #---------------------------------------------------------------------------- # SEZIONE GENERALE #---------------------------------------------------------------------------- # # Regole per Protezione Syn-flood iptables -A FORWARD -i eth+ -p tcp -s 0/0 --syn -m limit --limit 1/s -j ACCEPT # Regole per Protezione Scanner iptables -A FORWARD -i eth+ -p tcp -s 0/0 --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT # Regole per Protezione Ping Death iptables -A FORWARD -i eth+ -p icmp -s 0/0 --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
24
24 DET (2-input) #---------------------------------------------------------------------------- # SEZIONE INPUT #---------------------------------------------------------------------------- # # *********** Regole per ICMP ********* # for admin in ${ADMIN}; do iptables -A INPUT -p ICMP -i $I_ETH -s ${admin} -j ACCEPT done # # Regole per SSH # for admin in ${ADMIN}; do iptables -A INPUT -i $I_ETH -p TCP -s ${admin} --dport 22 -j ACCEPT done # # Regole per i DNS # iptables -A INPUT -i $O_ETH -p udp -s 150.217.1.32 -m udp --sport 53 -j ACCEPT iptables -A INPUT -i $O_ETH -p udp -s 150.217.10.2 -m udp --sport 53 -j ACCEPT # # Devo fare mysql con nadir # iptables -A INPUT -i $I_ETH -p tcp -s 150.217.8.30 -m state --state ESTABLISHED -j ACCEPT # # le connessioni con diefi, lci e ingfi1.ing.unifi.it sono ammesse # iptables -A INPUT -i $I_ETH -p tcp -s 150.217.8.5 -m state --state ESTABLISHED -j ACCEPT iptables -A INPUT -i $I_ETH -p tcp -s 150.217.8.10 -m state --state ESTABLISHED -j ACCEPT iptables -A INPUT -i $O_ETH -p tcp -s 150.217.10.2 -m state --state ESTABLISHED -j ACCEPT # # apro STP con i time server per rimettere l'ora # iptables -A INPUT -m udp -p udp -s time.ien.it --sport 123 --dport 1025:65535 -j ACCEPT iptables -A INPUT -m udp -p udp -s ntp0.fau.de --sport 123 --dport 1025:65535 -j ACCEPT iptables -A INPUT -m udp -p udp -s ntp1.sp.se --sport 123 --dport 1025:65535 -j ACCEPT # # Connessioni FTP in ingresso da Radar iptables -A INPUT -i $I_ETH -p tcp -s 150.217.8.90 -m state --state ESTABLISHED -j ACCEPT
25
25 DET (3-forward) #------------------------------------------------------------------------ # SEZIONE FORWARD #------------------------------------------------------------------------ # # Regole per bloccare macchine esterne pericolose (non registrate....) # for black_list in ${BLACK_LIST}; do iptables -A FORWARD -i $O_ETH -s ${black_list} -j DROP done # # Regole per bloccare la porta 135 (connessioni in->out e out->in) # # La porta 135 è RPCM (Microsoft RPC) e serve principalmente ai virus e ai worm # L'abbiamo chiusa a causa dei due client 134 e 156 che, da soli, riuscivano a # saturare la tabella di tracciamento delle connessioni (28/10/2003) # iptables -A FORWARD -i $I_ETH -p tcp --dport 135 -j DROP iptables -A FORWARD -i $O_ETH -p tcp --sport 135 -j DROP # # *********** Regole per ICMP *************** # # Il protocollo ICMP puo' uscire verso tutte le direzioni; Possono # entrare solo i reply. # for server_good in ${SERVER_GOOD}; do iptables -A FORWARD -p ICMP -i $I_ETH -o $O_ETH -s ${server_good} -j ACCEPT iptables -A FORWARD -p ICMP -i $O_ETH -o $I_ETH -d ${server_good} -j ACCEPT done # for client_good in ${CLIENT_GOOD}; do iptables -A FORWARD -p ICMP -i $I_ETH -o $O_ETH -s ${client_good} --icmp-type echo-request -j ACCEPT iptables -A FORWARD -p ICMP -i $O_ETH -o $I_ETH -d ${client_good} --icmp-type echo-reply -j ACCEPT done
26
26 DET (4-forward) # # ************* Regole per DNS ****************** # iptables -A FORWARD -i $I_ETH -o $O_ETH -p udp -s 150.217.8.5 -m udp --sport 53 -d 150.217.1.32 -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p udp -s 150.217.1.32 -m udp --sport 53 -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p udp -s 150.217.10.2 -m udp --sport 53 -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p udp -s 150.217.1.32 -d 150.217.8.5 -m udp --dport 53 -j ACCEPT # # **************** Regole per TCP ***************** # # Regole per SAMBA # Il protocollo SMB non esce e non entra dal Firewall, solo su telemat funziona... :) # iptables -A FORWARD -i $I_ETH -o $O_ETH -p tcp -s 150.217.8.42 -m tcp --dport 137:139 -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p tcp -d 150.217.8.42 -m tcp --sport 137:139 -j ACCEPT iptables -A FORWARD -p tcp -s 0/0 -m tcp --dport 137:139 -j DROP
27
27 DET (5) # # ----------------------------------------------------------------------------- # SEZIONE GOOD SERVER # ----------------------------------------------------------------------------- # # I server sono accessibili dai servizi esterni, sia tcp che udp # for server_good in ${SERVER_GOOD}; do iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${server_good} -j ACCEPT iptables -A FORWARD -p TCP -i $O_ETH -o $I_ETH -d ${server_good} -j ACCEPT iptables -A FORWARD -p UDP -i $I_ETH -o $O_ETH -s ${server_good} -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${server_good} -j ACCEPT done
28
28 DET (6) # # ----------------------------------------------------------------------------- # SEZIONE GOOD CLIENT # ----------------------------------------------------------------------------- # # **************** Regole per TCP ***************** # I client possono richiedere connessioni all'esterno, ma non possono # accettarne di nuove # *************** Regole per UDP ******************** # Sono ammesse le porte >1023 e la porta 123 (Network Time Protocol) # #Regole per l'attivazione del servizio FTP attivo # for client_good in ${CLIENT_GOOD}; do iptables -A FORWARD -i $I_ETH -o $O_ETH -p tcp -s ${client_good} --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p tcp -d ${client_good} --sport 21 -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -i $I_ETH -o $O_ETH -p tcp -s ${client_good} --dport 20 -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -i $O_ETH -o $I_ETH -p tcp -d ${client_good} --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT done # for client_good in ${CLIENT_GOOD}; do iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client_good} -j ACCEPT iptables -A FORWARD -p TCP -i $O_ETH -o $I_ETH -d ${client_good} -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -p UDP -i $I_ETH -o $O_ETH -s ${client_good} -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client_good} -m udp --dport 123 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client_good} -m udp --dport 1024:65535 -j ACCEPT done T
29
29 DET (errore!) #---------------------------------------------------------------------------- # SEZIONE GENERALE (abolita perché dannosa - 28/10/03) # In effetti messe sulla catena di FORWARD come prima regola permettono il # passaggio di qualunque pacchetto alla massima velocità 1/s da qualunque # indirizzo interno. Ecco il motivo della ip_conntrack con la porta 135 #---------------------------------------------------------------------------- # # Regole per Protezione Syn-flood # iptables -A FORWARD -i eth+ -p tcp -s 0/0 --syn -m limit --limit 1/s -j ACCEPT # Regole per Protezione Scanner # iptables -A FORWARD -i eth+ -p tcp -s 0/0 --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT # Regole per Protezione Ping Death # iptables -A FORWARD -i eth+ -p icmp -s 0/0 --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
30
ACME S.p.A. LAN 192.168.1.0/24 SERVER WEB FW R 184.233.13.201 184.233.13.202 184.233.13.206 LAN 192.168.2.0/24 FW R I 192.168.1.254 192.168.2.254 IPSEC 30
31
31 ACME S.p.A. #!/bin/bash # service iptables stop # # Variabili generali # CLIENT_GOOD=$(cat /etc/sysconfig/fw_tabelle/fw_good_client) CLIENT_STD=$(cat /etc/sysconfig/fw_tabelle/fw_std_client) CLIENT_MAIL=$(cat /etc/sysconfig/fw_tabelle/fw_mail_client) I_ETH=eth1 O_ETH=eth0 NS1="194.243.23.201" NS2="151.99.125.2" NS3="151.99.125.3" LAN="192.168.1.0/24" REMOTELAN="192.168.2.0/24" #Regole generali delle 3 catene per la tabella "filter" iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT #Regole per interfaccia Loopback: iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
32
32 ACME S.p.A. (2) # # Masquerade # iptables -t nat -A POSTROUTING -s 192.168.1.0/255.255.255.0 -o $O_ETH -j MASQUERADE # # Abilito il port forwarding per Gabriele # iptables -A FORWARD -i $O_ETH -o $I_ETH -p tcp --dport 4662 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A PREROUTING -t nat -p tcp -d 184.233.13.206 --dport 4662 -j DNAT --to 192.168.1.3:4662 iptables -A FORWARD -i $O_ETH -o $I_ETH -p udp --dport 4672 -j ACCEPT iptables -A PREROUTING -t nat -p udp -d 184.233.13.206 --dport 4672 -j DNAT --to 192.168.1.3:4672 iptables -A FORWARD -i $O_ETH -o $I_ETH -p tcp --dport 4771 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A PREROUTING -t nat -p tcp -d 184.233.13.206 --dport 4771 -j DNAT --to 192.168.1.3:4771 # # Abilito il port forwarding per poter montare su webserver almeno un volume samba di mexal # iptables -A FORWARD -i $O_ETH -o $I_ETH -s 184.233.13.201 -p tcp --dport 139 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A PREROUTING -t nat -p tcp -d 184.233.13.206 --dport 139 -j DNAT --to 192.168.1.1:139
33
33 ACME S.p.A. (3) #------------------------------------------------------------------------ # SEZIONE INPUT #------------------------------------------------------------------------ # # allow IPsec # iptables -I INPUT -p udp --sport 500 --dport 500 -j ACCEPT iptables -I INPUT -p 50 -j ACCEPT iptables -I INPUT -p 51 -j ACCEPT # # Devo aprire un po' di porte: # # 22 SSH (solo da www.acmespa.com) # 53 (udp) DNS SERVER # iptables -A INPUT -p tcp -s 184.233.13.201 --dport 22 -j ACCEPT iptables -A INPUT -p UDP -s $NS1 -j ACCEPT iptables -A INPUT -p UDP -s $NS2 -j ACCEPT iptables -A INPUT -p UDP -s $NS3 -j ACCEPT # # Devo fare mysql con www.acmespa.com # e posta con telemat # iptables -A INPUT -i $O_ETH -p tcp -s 184.233.13.201 -m state --state ESTABLISHED -j ACCEPT iptables -A INPUT -i $O_ETH -p tcp -s 150.217.8.42 -m state --state ESTABLISHED -j ACCEPT # # Verso le macchine interne posso fare tutte le connessioni che voglio # iptables -A INPUT -i $I_ETH -p tcp -s 192.168.1.0/24 -m state --state ESTABLISHED -j ACCEPT iptables -A INPUT -i $I_ETH -p udp -s 192.168.1.0/24 -j ACCEPT # # Accetto le connessioni dhcp # iptables -A INPUT -i $I_ETH -p udp --dport 67 -j ACCEPT iptables -A INPUT -i $I_ETH -p tcp --dport 67 -j ACCEPT #
34
34 ACME S.p.A. (4) #------------------------------------------------------------------------ # SEZIONE FORWARD #------------------------------------------------------------------------ # # Creo una catena per l'accounting di tutta la LAN # iptables -N 192.168.1.254 iptables -A FORWARD -i $O_ETH -d 192.168.1.0/24 -j 192.168.1.254 iptables -A FORWARD -o $O_ETH -s 192.168.1.0/24 -j 192.168.1.254 iptables -A 192.168.1.254 -i $O_ETH -d 192.168.1.0/24 iptables -A 192.168.1.254 -o $O_ETH -s 192.168.1.0/24 # # creo le catene di forward per l'accounting di ogni IP address # NET="192.168.1" START=1 STOP=253 COUNT=$START; while [ $COUNT -le $STOP ]; do iptables -N $NET.$COUNT iptables -A FORWARD -i $O_ETH -d $NET.$COUNT -j $NET.$COUNT iptables -A FORWARD -o $O_ETH -s $NET.$COUNT -j $NET.$COUNT iptables -A $NET.$COUNT -i $O_ETH -d $NET.$COUNT iptables -A $NET.$COUNT -o $O_ETH -s $NET.$COUNT let COUNT=$COUNT+1; done;
35
35 ACME S.p.A. (6) # # I client possono richiedere connessioni all'esterno, ma non possono # accettarne di nuove # for client in ${CLIENT_GOOD}; do iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -j ACCEPT iptables -A FORWARD -p TCP -i $O_ETH -o $I_ETH -d ${client} -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -p UDP -i $I_ETH -o $O_ETH -s ${client} -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp --dport 1024:65535 -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS1 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS1 -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS2 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS2 -j ACCEPT done
36
36 ACME S.p.A. (6) # # Client BAD: Abilitati solo sulle porte 25, 80, 110, 443 e relative risposte # Traffico UDP Bloccato # for client in ${CLIENT_STD}; do iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 25 -j ACCEPT iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 80 -j ACCEPT iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 110 -j ACCEPT iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 443 -j ACCEPT iptables -A FORWARD -p TCP -i $O_ETH -o $I_ETH -d ${client} -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS1 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS1 -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS2 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS2 -j ACCEPT done ## # Client MAIL: Abilitati solo sulle porte 25, 110, (posta) e relative risposte # Traffico UDP Bloccato # for client in ${CLIENT_MAIL}; do iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 25 -j ACCEPT iptables -A FORWARD -p TCP -i $I_ETH -o $O_ETH -s ${client} -m tcp --dport 110 -j ACCEPT iptables -A FORWARD -p TCP -i $O_ETH -o $I_ETH -d ${client} -m state --state ESTABLISHED -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS1 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS1 -j ACCEPT iptables -A FORWARD -p udp -i $I_ETH -o $O_ETH -s ${client} -d $NS2 -j ACCEPT iptables -A FORWARD -p UDP -i $O_ETH -o $I_ETH -d ${client} -m udp -s $NS2 -j ACCEPT done #
37
37 Domande ? Riferimenti: – http://www.iptables.org/ http://www.iptables.org/ – http://iptables- tutorial.frozentux.net/chunkyhtml/index.htm l
38
LICENZA SOFTWARE DELL'UNIVERSITA' DI FIRENZE Versione 2.1, Aprile 2006 - Copyright (C) 2002-2006 Universita' di Firenze - Via S. Marta 3, 50139 Firenze - ITALIA Tutti i diritti sono riservati. Questo documento puo' essere liberamente copiato e distribuito da chiunque, ma a nessuno e' permesso di cambiarlo in alcun modo. Preambolo Il copyright imposto sui documenti pubblicati sul sito MMEDIA5.DET.UNIFI.IT ha lo scopo di consentire la libera circolazione del lavoro a scopo educativo, mantenendo pero' il doveroso riconoscimento agli autori delle varie parti. Si vuole, inoltre, consentire l'ulteriore distribuzione del lavoro sotto qualunque forma, anche con modifiche, mettendo pero' il successivo ricevente in grado di conoscere da chi il materiale sia stato originariamente scritto e da chi rivisto o modificato. Per questo, si impone il Copyright su tutto il materiale, ma si concede gratuitamente licenza per l'uso e l'ulteriore distribuzione, con la possibilita' di modificare il materiale, purche' vengano seguite le regole scritte piu' avanti. Il diritto di cui sopra e' concesso con la restrizione che il materiale modificato e redistribuito sia soggetto alle stesse restrizioni del materiale originario, e che la distribuzione avvenga a titolo gratuito o con la sola copertura delle spese vive con un piccolo margine per le spese generali di distribuzione. Inoltre, la re- distribuzione del materiale o la distribuzione di materiale modificato dovranno essere fatte in modo da garantire che ulteriori distribuzioni vengano fatte mantenendo le condizioni originarie. Ogni utente di MMEDIA5 potra' proporre all'Universita' di Firenze la pubblicazione di documenti in MMEDIA5. Scrivere a: fpirri@ing.unifi.it Tali documenti saranno soggetti ai termini qui specificati. Le condizioni per la licenza di pubblicazione e modifica sono riportate di seguito. LICENZA PER IL MATERIALE "MMEDIA5" OVVERO PER IL CONTENUTO NEI SITI WEB "MMEDIA5.DET.UNIFI.IT", "MEDIALAB.DET.UNIFI.IT", “TELEMAT.DET.UNIFI.IT”, “LTT.DET.UNIFI.IT” -- CONDIZIONI PER L'USO, LA MODIFICA E LA DISTRIBUZIONE 1.- Questa licenza e' applicabile al materiale contenuto nei siti WEB del Laboratorio di Tecnologia della Telematica, Dipartimento di Elettronica e Telecomunicazioni dell'Universita' di Firenze, via di S. Marta 3, 50139 Firenze - Italia (attualmente con indirizzo internet: http://mmedia5.det.unifi.it/, http://medialab.det.unifi.it, http://telemat.det.unifi.it, http://ltt.det.unifi.it ) che riporta al suo interno un avviso o legame con un file contenente la presente licenza. In questa licenza, con MMEDIA5 si intende un qualunque documento originariamente presente in uno dei siti. Per "documento derivato" si intende ogni documento che contenga porzioni oppure un intero documento MMEDIA5, con o senza modifiche, con o senza traduzioni in altra lingua, con o senza variazioni di supporto di memorizzazione o stampa; in questa licenza ogni documento di questo tipo e' indicato come "documento derivato". Per licenziatario si intende qualunque persona o organizzazione che copia, consulta, legge, memorizza su un qualunque supporto, produce o distribuisce a terzi un MMEDIA5 o un documento derivato. Per UNIVERSITA' si intende l'Universita' di Firenze.http://mmedia5.det.unifi.it/ http://medialab.det.unifi.ithttp://telemat.det.unifi.ithttp://ltt.det.unifi.it 2.- Un licenziatario puo' copiare, consultare, leggere, memorizzare su un qualunque supporto, produrre e distribuire a terzi un MMEDIA5, purche' su ogni copia, produzione, esibizione o distribuzione sia evidenziato il copyright originario, il ricevente sia adeguatamente informato della provenienza del materiale e dell'esistenza di questa licenza e questa licenza sia inserita indivisibilmente e senza modifica alcuna assieme all'MMEDIA5. L'eventuale cessione o distribuzione devono essere a titolo gratuito. E' comunque ammessa l'imposizione di un rimborso delle spese legate al supporto fisico di memorizzazione dello MMEDIA5, con un piccolo margine per il recupero delle spese generali legate alla riproduzione fisica.
39
3.- Il licenziatario puo' produrre documenti derivati, ai sensi dell'articolo 1, e distribuirli a terzi purche' siano rispettate tutte le seguenti condizioni: 3.1- ogni documento derivato deve riportare chiaramente la data e l'autore delle modifiche effettuate; 3.2- il licenziatario deve assicurare che ogni documento derivato sia sottoposto alla stessa licenza del documento originario, cosi' che la terza parte ricevente sia impegnata a sua volta negli stessi termini di questa licenza; 3.3- ogni documento derivato deve riportare, all'inizio e in buona evidenza questa licenza o un legame ad un file che la contiene, e il file deve essere distribuito indivisibilmente dal documento derivato; 4.- Al licenziatario e' espressamente vietato copiare, consultare, leggere, memorizzare su un qualunque supporto, produrre e distribuire a terzi un MMEDIA5, se non nelle forme e nei modi previsti in questa licenza. Ogni forma di inosservanza di questa norma comporta l'immediata revoca di ogni diritto concesso con questa licenza. 5.- L'uso di materiale soggetto a Copyright senza un esplicito assenso del proprietario del Copyright e' proibito dalla legge. L'UNIVERSITA' pone come prerequisito per ogni uso di MMEDIA5 l'accettazione di questa licenza. Quindi,e' fatto espresso divieto, a chiunque non intenda accettare i termini di questa licenza, di usare MMEDIA5 in alcun modo. Peraltro, non e' richiesta alcuna forma di accettazione esplicita della licenza, l'uso di MMEDIA5 costituisce implicita accettazione e conferisce al licenzatario tutti i diritti qui espressi. 6.- Ogni volta che MMEDIA5 od un documento derivato vengono distribuiti, al ricevente e' automaticamente estesa questa licenza. Al licenziatario non e' permesso imporre altri obblighi sul ricevente oltre la presente licenza. In ogni caso il licenziatario non e' considerato responsabile dell'uso che il ricevente fa di MMEDIA5. 7.- Se per qualunque motivo, compresi regolamenti o leggi dello Stato, non e' possibile per il licenziatario imporre questa licenza, o parti di essa, al ricevente, allora il licenziatario non puo' distribuire MMEDIA5, ne' parti di esso, ne' documenti derivati, in alcun modo. 8.- L'UNIVERSITA' potra' pubblicare revisioni di questa licenza. Le nuove versioni avranno intendimenti similari, ma potranno differire nei dettagli per far fronte a nuove situazioni. Ogni nuova versione avra' un proprio numero distintivo e sara' applicata ai documenti MMEDIA5 da allora pubblicati. 9.- Usi di MMEDIA5 diversi da quanto sopra specificato potranno essere autorizzati dall'UNIVERSITA'. Queste autorizzazioni non comporteranno variazioni per i licenziatari preesistenti. 10.- Essendo la licenza gratuita, l'UNIVERSITA' fornisce MMEDIA5 cosi' come si trova, e non assume alcuna garanzia di esattezza dei contenuti, o di adeguatezza a qualsiasi scopo. Inoltre, le singole parti di MMEDIA5 sono espressione dei vari autori o revisori menzionati e non espressione dell'UNIVERSITA', non comportano ne' implicano accettazione del contenuto da parte dell'UNIVERSITA'.
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.