Old:Parametri a run-time per Netfilter: differenze tra le versioni
m (eliminato template stub) |
m (ha spostato Parametri a run-time per Netfilter a Old:Parametri a run-time per Netfilter) |
||
(14 versioni intermedie di 6 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Old}} | |||
__TOC__ | |||
==Premessa== | ==Premessa== | ||
Di seguito riporto un elenco delle principali variabili del kernel relative a | Di seguito riporto un elenco delle principali variabili del kernel relative a Netfilter impostabili a run-time. | ||
Per ciascuna di esse è indicato: | Per ciascuna di esse è indicato: | ||
* nome della variabile; | * nome della variabile; | ||
* tipo (booleano, integer, ecc | * tipo (booleano, integer, ecc); | ||
* una breve descrizione. | * una breve descrizione. | ||
Queste variabili possono essere impostate in vari modi: | Queste variabili possono essere impostate in vari modi. Ad esempio potremmo scrivere in un terminale (o inserire in uno script): | ||
<pre> | |||
# echo $VAL > /proc/sys/net/VARIABLE | |||
</pre> | |||
dove <code>$VAL</code> è il valore booleano o intero che si vuole assegnare alla variabile <code>VARIABLE</code>. | |||
Per impostare alcune variabili al boot possiamo editare il file <code>/etc/sysctl.conf</code> aggiungendo: | |||
<pre> | |||
net/VARIABLE = val | |||
</pre> | |||
notare che è stato omesso <code>/proc/sys</code>. | |||
Buona lettura! | Altra documentazione (in inglese) si trova allegata ai sorgenti del kernel all'interno di <code>'''Documentation/networking/ip-sysctl.txt'''</code> | ||
Buona lettura! | |||
==Variabili a run-time== | ==Variabili a run-time== | ||
'''ip-forward (boolean) | <code>'''ip-forward'''</code> (boolean): permette il forwarding dei pacchetti; | ||
''' | <code>'''ipfrag_high_thresh'''</code> (integer): massima memoria utilizzabile per riassemblare i pacchetti frammentati. I pacchetti eccedenti vengono scartati fino a che non si raggiunge nuovamente la soglia settata da <code>'''ipfrag_low_thresh</code>; | ||
''' | <code>'''ipfrag_time'''</code> (integer): tempo massimo per mantenere un frammento IP in memoria; | ||
''' | <code>'''tcp_syn_retries'''</code> (integer): numero massimo di tentativi di ritrasmissione per stabilire una connessione (valore max=255); | ||
''' | <code>'''tcp_synack_retries'''</code> (integer): | ||
idem come sopra, ma per le connessioni passive; | |||
''' | <code>'''tcp_keepalive_time'''</code> (integer): | ||
indica quanto spesso verrà inviato il messaggio <code>TCP KEEPALIVE</code>; | |||
''' | <code>'''tcp_keepalive_probes'''</code> (integer): | ||
indica quanti pacchetti <code>TCP PROBES</code> inviare prima di considerare la connessione <code>BROKEN</code>; | |||
''' | <code>'''tcp_keepalive_interval'''</code> (integer): | ||
indica quanto frequentemente vengono inviati i pacchetti <code>TCP PROBES</code>. Moltiplicando questo valore per il <code>'''tcp_keepalive_probes'''</code> si ottiene il timeout per il KILL di una connessione; | |||
''' | <code>'''tcp_retries1'''</code> (integer): | ||
numero di tentativi/richieste prima che al network layer del kernel venga segnalato che qualcosa non va; | |||
''' | <code>'''tcp_retries2'''</code> (integer): | ||
numero di tentativi/richieste prima che una connessione TCP '''attiva''' venga terminata; | |||
''' | <code>'''tcp_orphan_retries'''</code> (integer): | ||
idem come sopra, ma senza considerare attiva la connessione; | |||
''' | <code>'''tcp_fin_timeout'''</code> (integer): | ||
indica per quanto tempo mantenere una connessione in stato <code>FIN WAIT 2</code>; | |||
''' | <code>'''tcp_max_tw_buckets'''</code> (integer): | ||
numero massimo di socket simultanee in timewait mantenute dal sistema; | |||
''' | <code>'''tcp_max_orphans'''</code> (integer): | ||
numero massimo di socket TCP che possono rimanere non collegate a ''file handlers'' aperti dal sistema; | |||
''' | <code>'''tcp_abort_on_overflow'''</code> (boolean): | ||
permette il reset di una connessione se un servizio in <code>LISTENING</code> è troppo lento nella risposta; | |||
''' | <code>'''tcp_syncookies'''</code> (boolean): | ||
opzione valida solo se il kernel è stato compilato con il supporto dei <code>SYNCOOKIES</code>, previene possibili attacchi di tipo ''syn flood''; | |||
''' | <code>'''tcp_timestamps'''</code> (boolean): | ||
abilita/disabilita il timestamp; | |||
''' | <code>'''tcp_ecn'''</code> (boolean): | ||
abilita/disabilita la notifica di possibili congestioni della rete; | |||
''' | <code>'''ip_local_port_range'''</code> (2 integers): | ||
definisce l'intervallo delle porte locali utilizzate da TCP e UDP. Il primo valore è l'estremo inferiore ed il secondo quello superiore dell'intervallo. Il valore di default dipende dalla memoria ram disponibile; | |||
''' | <code>'''ip_dynaddr'''</code> (boolean): | ||
se diverso da <code>0</code>, abilita il supporto per gli indirizzi dinamici; | |||
''' | <code>'''icmp_echo_ignore_all'''</code> (boolean): | ||
ignora i ''ping'' (<code>ICMP ECHO REQUEST</code>); | |||
''' | <code>'''icmp_echo_ignore_broadcasts'''</code> (boolean): | ||
se settato (deve esserlo anche il precedente) il sistema ignora i ''ping'' verso indirizzi di broadcast e multicast; | |||
''' | <code>'''log_martians'''</code> (boolean): | ||
logga i pacchetti provenienti da indirizzi IP impossibili; | |||
''' | <code>'''accept_redirects'''</code> (boolean): | ||
abilita la ricezione di pacchetti <code>ICMP REDIRECT</code>; | |||
''' | <code>'''forwarding'''</code> (boolean): | ||
abilita il forwarding per una specifica interfaccia; | |||
''' | <code>'''proxy_arp'''</code> (boolean): | ||
abilita il proxy <code>ARP</code>; | |||
<code>'''secure_redirects'''</code> (boolean): | |||
accetta <code>ICMP REDIRECT</code> solo dai gateway configurati. | |||
Autore | {{Autori | ||
|Autore = [[Utente:Keltik|Keltik]] 13:28, Jun 11, 2005 (EDT) | |||
}} |
Versione attuale delle 11:30, 25 giu 2016
Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica. |
Premessa
Di seguito riporto un elenco delle principali variabili del kernel relative a Netfilter impostabili a run-time.
Per ciascuna di esse è indicato:
- nome della variabile;
- tipo (booleano, integer, ecc);
- una breve descrizione.
Queste variabili possono essere impostate in vari modi. Ad esempio potremmo scrivere in un terminale (o inserire in uno script):
# echo $VAL > /proc/sys/net/VARIABLE
dove $VAL
è il valore booleano o intero che si vuole assegnare alla variabile VARIABLE
.
Per impostare alcune variabili al boot possiamo editare il file /etc/sysctl.conf
aggiungendo:
net/VARIABLE = val
notare che è stato omesso /proc/sys
.
Altra documentazione (in inglese) si trova allegata ai sorgenti del kernel all'interno di Documentation/networking/ip-sysctl.txt
Buona lettura!
Variabili a run-time
ip-forward
(boolean): permette il forwarding dei pacchetti;
ipfrag_high_thresh
(integer): massima memoria utilizzabile per riassemblare i pacchetti frammentati. I pacchetti eccedenti vengono scartati fino a che non si raggiunge nuovamente la soglia settata da ipfrag_low_thresh
;
ipfrag_time
(integer): tempo massimo per mantenere un frammento IP in memoria;
tcp_syn_retries
(integer): numero massimo di tentativi di ritrasmissione per stabilire una connessione (valore max=255);
tcp_synack_retries
(integer):
idem come sopra, ma per le connessioni passive;
tcp_keepalive_time
(integer):
indica quanto spesso verrà inviato il messaggio TCP KEEPALIVE
;
tcp_keepalive_probes
(integer):
indica quanti pacchetti TCP PROBES
inviare prima di considerare la connessione BROKEN
;
tcp_keepalive_interval
(integer):
indica quanto frequentemente vengono inviati i pacchetti TCP PROBES
. Moltiplicando questo valore per il tcp_keepalive_probes
si ottiene il timeout per il KILL di una connessione;
tcp_retries1
(integer):
numero di tentativi/richieste prima che al network layer del kernel venga segnalato che qualcosa non va;
tcp_retries2
(integer):
numero di tentativi/richieste prima che una connessione TCP attiva venga terminata;
tcp_orphan_retries
(integer):
idem come sopra, ma senza considerare attiva la connessione;
tcp_fin_timeout
(integer):
indica per quanto tempo mantenere una connessione in stato FIN WAIT 2
;
tcp_max_tw_buckets
(integer):
numero massimo di socket simultanee in timewait mantenute dal sistema;
tcp_max_orphans
(integer):
numero massimo di socket TCP che possono rimanere non collegate a file handlers aperti dal sistema;
tcp_abort_on_overflow
(boolean):
permette il reset di una connessione se un servizio in LISTENING
è troppo lento nella risposta;
tcp_syncookies
(boolean):
opzione valida solo se il kernel è stato compilato con il supporto dei SYNCOOKIES
, previene possibili attacchi di tipo syn flood;
tcp_timestamps
(boolean):
abilita/disabilita il timestamp;
tcp_ecn
(boolean):
abilita/disabilita la notifica di possibili congestioni della rete;
ip_local_port_range
(2 integers):
definisce l'intervallo delle porte locali utilizzate da TCP e UDP. Il primo valore è l'estremo inferiore ed il secondo quello superiore dell'intervallo. Il valore di default dipende dalla memoria ram disponibile;
ip_dynaddr
(boolean):
se diverso da 0
, abilita il supporto per gli indirizzi dinamici;
icmp_echo_ignore_all
(boolean):
ignora i ping (ICMP ECHO REQUEST
);
icmp_echo_ignore_broadcasts
(boolean):
se settato (deve esserlo anche il precedente) il sistema ignora i ping verso indirizzi di broadcast e multicast;
log_martians
(boolean):
logga i pacchetti provenienti da indirizzi IP impossibili;
accept_redirects
(boolean):
abilita la ricezione di pacchetti ICMP REDIRECT
;
forwarding
(boolean):
abilita il forwarding per una specifica interfaccia;
proxy_arp
(boolean):
abilita il proxy ARP
;
secure_redirects
(boolean):
accetta ICMP REDIRECT
solo dai gateway configurati.
Guida scritta da: Keltik 13:28, Jun 11, 2005 (EDT) | Debianized 20% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |