|
IPFWADM(8) manual page
Table of Contents
ipfwadm - Amministrazione del firewall IP e dell'accounting
ipfwadm -A comando parametri [opzioni]
ipfwadm -I comando parametri [opzioni]
ipfwadm -O comando parametri [opzioni]
ipfwadm -F comando parametri [opzioni]
ipfwadm -M [ -l | -s ] [opzioni]
Ipfwadm viene usato per preparare,
gestire ed ispezionare il firewall IP e le regole di accounting (conteggio
d'uso) nel kernel di Linux. Queste regole sono divise in 4 differenti categorie:
accounting dei pacchetti IP, firewall di ingresso, firewall di uscita
e firewall passante (forwarding). Per ciascuna di queste categorie il kernel
ospita una lista di regole separata. Vedere ipfw(4)
per ulteriori dettagli.
Le opzioni riconosciute da ipfwadm possono essere divise in vari
gruppi.
Le seguenti opzioni vengono usate per selezionare la
categoria di regole alla quale va applicato il comando corrente:
- -A [direzione
]
- Regole di a ccounting IP. Si può facoltativamente specificare una direzione
(in, out, or both), indicando se si vogliono contare solo i pacchetti
entranti, solo quelli uscenti o entrambi La direzione di default è both.
- -I
- Regole per il firewall di i ngresso (pacchetti ricevuti da questo host).
- -O
- Regole per il firewall di uscita [NdT o utput] (pacchetti trasmessi
da questo host).
- -F
- Regole per il firewall passante [NdT f orwarding] (pacchetti
non originati nè destinati a questo host).
- -M
- Amministrazione dell'«IP m
asquerading». Questa categoria può solo essere usata in combinazione con
il comando -l (list: elenca) oppure -s (set timeout values: seleziona i
tempi limite).
Bisogna specificare una e solo una delle opzioni appena
elencate.
Le opzioni descritte qui specificano quale azione deve
essere effettuata. Solo una di esse può essere specificata sulla linea
di comando, a meno la descrizione dell'opzione dica diversamento.
- -a [policy
]
- Append: aggiungi una o più regole alla fine della lista selezionata.
Per la lista di regole di accounting, non occorre specificare alcuna "policy"
(comportamento). Per le liste di firewall bisogna speficare uno dei seguenti
comportamenti: accept, deny, or reject. Quando i nomi associati al mittente
e al destinatario ri riferiscono a più di un indirizzo IP, il programma
inserisce una regola per ogni possibile combinazione di indirizzi.
- -i [policy
]
- Insert: inserisce una o più regole all'inizio della lista selezionata.
Vedere la descrizione del comando -a per ulteriori dettagli.
- -d [policy ]
- Delete: cancella una o più voce dalla lista selezionata. La semantica
è uguale a quella dei comandi di aggiunta/inserzione. I parametri specificati
dovranno corrispondere esattamente ai parametri dati al comando di aggiunta
o di inserzione, altrimenti non verrà trovata alcuna corrispondenza e
la regola non verrà rimossa dalla lista. Viene cancellata solo la prima
regola che corrisponde a quella specificata.
- -l
- List: elenca tutte le regole
nella lista selezionata. Questo comando può essere combinato con il comando
-z (ripristina i contatori a zero). In questo caso, i contatori di pacchetti
e di byte verranno ripristinati a zero immediatamente dopo aver stampato
i loro valori correnti. A meno che l'opzione -x sia presente, i contatori
di pacchetti e di byte (se stampati) saranno mostrati come numeroK o numeroM,
dove 1K significa 1000 e 1M significa 1000K (arrotondati al valore intero
più vicino). Vedere anche le opzioni -e e -x per ulteriori informazioni.
- -z
- Zero: azzera i contatori dei pacchetti e dei byte per tutte le regole
nella lista selezionata. Questo comando può essere combinato con il comando
-l (list).
- -f
- Flush: rimuove tutte le regole nella lista di regole selezionata.
- -p policy
- Cambia il comportamento di default per il tipo di firewall selezionato.
Il comportamento deve essere uno tra accept, deny, e reject. Il comportamento
di default viene usato quando non si trovano regole che corrispondano
al pacchetto in questione. Questa operazione è solo valida per i firewall,
cioè per le categorie -I, -O, e -F.
- -s tcp tcpfin udp
- Cambia i valori di timeout
usati per la mascheratura. Questo comando accetta sempre 3 parametri, che
rappresentano i valori limite dei tempi di risposta in secondi (anche
detti "timeout") per le sessioni TCP, le sessioni TCP che hanno già ricevuto
un pacchetto FIN, e i pacchetti UDP. Un valore di timeout di 0 significa
che il valore attuale non viene modificato. Questa operazione può solo
essere specificata nella categoria -M.
- -c
- Controlla se questo pacchetto
sarebbe accettato, scartato o rifiutato dal tipo di firewall selezionato.
Questa operazione è solo valida per i firewall, cioè in combinazione con
l'opzione -I, -O, o -F.
- -h
- Help. Restituisce una descrizione della sintassi
dei comandi, al momento tale descrizione è molto concisa.
I
seguenti parametri possono essere usati in combinazione con i comandi
"append", "insert", "delete" o "check":
- -P protocollo
- Il protocollo cui
questa regola si riferisce, o quello del pacchetto da controllare. Il protocollo
specificato può essere uno tra tcp, udp, icmp, oppure all. Il protocollo
all corrisponde a tutti i protocolli, ed è il valore di default quando
questa opzione è omessa. All può solo essere usato in combinazione con
il comando "check".
- -S indirizzo [/maschera ] [porta ...]
- Specificazione
del mittente (facoltativa). Indirizzo può essere un nome di calcolatore,
un nome di rete o un indizzo IP numerico. La maschera può essere o una
"netmask" o un semplice numero che specifichi il numero di uni che appaiono
alla sinistra nella maschera. Perciò, una maschera pari a 24 è equivalente
a 255.255.255.0.
La specifica del mittente può includere una o più specifiche
di porta o tipi ICMP. Ognuna di esse può essere o un nome di servizio,
un numero di porta o un tipo ICMP (numerico). Nel seguito di questo paragrafo,
il termine porta indica o una specifica di porta o un tipo ICMP. Una di
queste specifiche può essere un intervallo di porte, nel formato porta:porta.
Inoltre, il numero totale di porte specificate insieme all'indirizzo del
mittente o del destinatario non deve essere maggiore di IP_FW_MAX_PORTS
(al momento 10). In questo conteggio, un intervallo di porte conta come
2 porte.
I pacchetti che non siano il primo frammento di un pacchetto
TCP, UDP o ICMP vengono sempre accettati dal firewall. Al fine dell'accounting,
questi ulteriori frammenti sono trattati in modo speciale, in modo da
essere in grado di contarli in qualche modo. Il numero di porta 0xFFFF
(65535) viene usato il secondo frammento e successivi di pacchetti TCP
o UDP. Ai fini dell'accounting i pacchetti verranno trattati come se entrambi
i numeri di porta fossero 0xFFFF. Il numero 0xFF (255) è usato per il
secondo frammento e i successibi relativi a pacchetti ICMP. Ai fini dell'accounting
questi pacchetti verranno trattati come se i loro tipi ICMP fossero 0xFF.
Si noti che il comando e il protocollo specificati possono comportare
delle restrizioni nelle porte specificate. Le porte possono essere specificate
solo in combinazione con i protocolli tcp, udp, o icmp.
Quando questa
opzione è omessa, verrà usata la coppia indirizzo/maschera 0.0.0.0/0 (che
corrisponde ad ogni indirizzo) come indirizzo del mittente. Questa opzione
è obbligatoria con il comando "check", e in questo caso deve essere specificata
solo una porta.
- -D indirizzo [/maschera ] [porta ...]
- Indirizzo di destinazione
(facoltativo). Vedere la descrizione dell'opzione -S (source) per una descrizione
dettagliata della sintassi, valori di default e altri dettagli. Si noti
che i tipi ICMP non sono permessi in combinazione con l'opzione -D: i tipi
ICMP possono solo essere specificati dopo l'opzione -S.
- -V indirizzo
- Indirizzo
opzionale di una interfaccia attraverso la quale un pacchetto è stato
ricevuto o attraverso la quale un pacchetto sta per essere spedito. Indirizzo
può essere un hostname o un semplice indirizzo IP. Quando un nome di host
viene specificato, deve corrispondere ad un solo indirizzo IP. Quando questa
opzione viene omessa, si assume per il suo valore l'indirizzo 0.0.0.0, che
ha un significato speciale e corrisponde ad ogni indirizzo di interfaccia.
Per il comando "check" questa opzione è obblgatoria.
- -W nome
- Nope opzionale
di una interfaccia attraverso la quale un pacchetto è stato ricevuto o
attraverso la quale un pacchetto sta per essere spedito. Quando questa
opzione viene omessa, si assume per il suo valore la stringa vuota, che
ha un significato speciale e corrisponde ad ogni indirizzo di interfaccia.
Per il comando "check" questa opzione è obblgatoria.
Le
seguenti opzioni aggiuntive possono venire specificate:
- -b
- Modo bidirezionale.
Questa regola corrisponderà a pacchetti IP transitanti in entrambe le
direzioni. Questa opzione è solo valida insieme ai comandi "append", "insert"
e "delete".
- -e
- Output esteso. Questa opzione fa si che il comando "list"
mostri anche l'indirizzo dell'interfaccia usata e le opzioni associate alla
regola (se ce ne sono). Per le liste del firewall lists, saranno mostrati
anche i contatori dei pacchetti e dei byte (normalmente questi contatori
vengono solo mostrati per le regole di accounting) e le maschere TOS. Quando
usata in combinazione con -M, verrà stampata anche l'informazione riguardante
i numeri di sequenza "delta".
- -k
- Riferisci la corrispondenza solo a pacchetti
TCP con il bit ACK attivo (questa opzione verrà ignorata per pacchetti
di altri protocolli). Questa opzione è solo valida insieme ai comandi "append",
"insert" o "delete".
- -m
- Opera il masquearading sul pacchetti accettati
per la ritrasmissione. Qunado questa opzione è specificata, i pacchetti
accettati da questa regola saranno mascherati come se provenissero dal
calcolatore locale. Inoltre, i pacchetti di risposta saranno riconosciuti
come tali e verranno de-mascherati automaticamente, senza passare per le
regole del firewall passante. Questa opzione è valida solo nelle regelo
del firewall passante (forwarding firewall) con policy accept (o quando
si specifica accept come policy di default) e può solo essere usata quando
il kernel è stato compilato con CONFIG_IP_MASQUERADE.
- -n
- Stampa numerica.
Gli indirizzi IP e i numeri di porta saranno stammati in formato numerico.
Normalmente il programma cerca di stamparli come hostname, nome di rete
o di servizio, quando ciò è possibile).
- -o
- Attiva il "logging" dei pacchetti
selezionati da questa regola. Quando questa opzione viene attivata per
una regola, il kernel stamperà delle informazioni riguardo ad ogni pacchetto
cui la regola si riferisce (per esempio, la maggior parte dei campi dell'header
IP) tramite printk(). Questa opzione ha effetto solo se il kernel è stato
compilato con l'opzione CONFIG_IP_FIREWALL_VERBOSE. Questa opzione è valida
solo in combinazione con i comandi "append", "insert" e "delete".
- -r [port
]
- Ridirigi i pacchetti ad un socket locale. Quando questa opzione è attivata,
i pacchetti accettati da questa regola saranno rediretti ad un socket
locale, anche se erano destinati ad un altro calcolatore. Se la porta di
ridirezione specificata è 0 (valore di default) la porta di destinazione
del pacchetto sarà usata come porta dei ridirezione. Questa opzione è valida
solo nelle regole per il firewall di ingresso con policy accept e può
solo essere usata quando il kernel è stato compilato con CONFIG_IP_TRANSPARENT_PROXY.
- -t andmask xormask
- Maschere usate per modificare il campo TOS nell'header
IP. Quando un pacchetto viene accettato, con o senza mascheramento, da
una regola del firewall, viene operata un'operazione AND tra il suo campo
TOS e la prima maschera; viene poi fatta un'operazione XOR tra il risultato
e la seconda maschera. Le maschere devono essere specificate come valori
ad 8 bit esadecimali. L'opzione è valida solo in combinazine con i comandi
"append", "insert" e "delete", senza avere effetto quando viene usata
con le regole di accounting e le regole di firewall per scartare o rifiutare
un pacchetto.
- -v
- Stampa prolissa ("verbose"). Stampa informazioni dettagliate
sulla regola o pacchetto da inserire, rimuovere o controllare. Questa opzione
ha solo effetto con i comandi "append", "insert", "delete" e "check".
- -x
- Espansione dei numeri. Stampa il valore esatto dei contatori di pacchetti
e di byte, invece del numero approssimato a K (multipli di mille) o M
(multipli di 1000K). Questa opzione ha solo effetto quando i contatori
vengono stampati (vedi anche l'opzione -e).
- -y
- Seleziona solo i pacchetti
TCP con il bit SYN attivo e il bit ACK inattivo (questa opzione sarà ignorata
per pacchetti di altri protocolli). Questa opzione è solo valida con i
comandi "append", "insert" e "delete".
/proc/net/ip_acct
/proc/net/ip_input
/proc/net/ip_output
/proc/net/ip_forward
/proc/net/ip_masquerade
ipfw(4)
Jos Vos <jos@xos.nl>
X/OS Experts in Open Systems
BV, Amsterdam, The Netherlands
Table of Contents
|
|
|
|