Newsgroup: it.comp.os.linux.sys
Titolo: IPCHAINS

Dove si trovano le spiegazioni per tutti i vari codici che tira fuori
ipchains nei log?
-- 
Tagliaferri Roberto
r.tagl...@tosnet.it

 ipchains nei log?
Sui protocolli?
-- 
Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).
<<      LINUX: the choice of a GNU generation     >>
<<   For my real address... ask the Balrog.       >>
* Sostenete la Lega per la Soppressione dei Troll *

 --
Non so se la domanda e` sarcastica o seria (viste le mitiche risposte
che dai a volte), se e` seria mi serve sapere come interpretare i vari 
REJECT eth0 PROTO=1 
194.119.192.34:8
 
212.141.168.4:0
 L=1500 S=0x00
I=44675 F=0x4000 T=245 (#38)
Mi sa che questa e` una richiesta lecita (l' indirizzo citato e` un
nameserver), pero` non so dove intervenire...
-- 
Tagliaferri Roberto
r.tagl...@tosnet.it

 nameserver), pero` non so dove intervenire...
Giuro che ero serio, anzi serissimo !! Allora, vediamo:
e' stato rigettato un pacchetto sull'interfaccia eth0, con protocollo
ICMP (rif. /etc/protocols) dall'indirizzo 194.119.192.34 (messaggio ICMP
dalla porta 8) all'indirizzo (il tuo) 212.141.168.4 e queste sono le
cose che ti interessa sapere.. ad es. qui sulla mia macchina stavolta
abbiamo:
Aug 24 12:30:02 cppcccslnxd59 kernel: Packet log: input REJECT eth0
PROTO=6 
10.2.4.172:2110
 
10.2.4.121:23
 L=44 S=0x00 I=55892 F=0x4000 T=128
SYN (#24) 
e' stato rifiutato un pacchetto sull'interfaccia eth0, stavolta di tipo
TCP (protocollo 6) dall'indirizzo 10.2.4.172, porta 2110, da parte della
mia macchina, 10.2.4.121 porta 23. Degli altri parametri sinceramente
non mi sono mai interessato piu' di tanto, qualora dovessi decidere
guardero' sullo Stevens.


 guardero' sullo Stevens.
Giusto questo... GRazie
-- 
Tagliaferri Roberto
r.tagl...@tosnet.it

 I=44675 F=0x4000 T=245 (#38)
manca qualcosa davanti a REJECT, forse input, che sarebbe il
nome della "chain" relativa, provo a riscrivere la riga completa:
Aug 24 14:45:30 ciemme kernel: Packet log: input REJECT eth0 PROTO=1
194.119.192.34:8
 
212.141.168.4:0
 L=1500 S=0x00 I=44675 F=0x4000 T=245
(#38)
input
e' la catena (le predefinite sono input=robba in entrata,
output=pacchetti in uscita e forward=che passa e va ;)
REJECT
e' il comportamento (ACCEPT=vabbe' e' chiaro, DENY=non rispondere
neppure o REJECT=rispondi dicendo che non te ne puo' fregare di meno)
eth0
e' l'interfaccia (in questo caso la prima scheda di rete, poteva
essere ippp0 per ISDN o ppp0 per il modem)
PROTO=1
prova un cat /etc/protocols vedrai
ip      0       IP      # internet protocol, pseudo protocol number
icmp    1       ICMP    # internet control message protocol
ecc
quindi icmp
194.119.192.34 
IP di provenienza
:8
la porta di provenienza, nota bene che essendo tipo icmp non si
tratta di porta ma di "tipo" icmp
altrimenti per protocolli tipo tcp e udp vedi /etc/services per il
numero porta->nome
212.141.168.4
IP di destinazione
:0
la porta di destinazione, nota bene che essendo tipo icmp non si
tratta di porta ma di "tipo" icmp
.... cose che non so ... 
(#38) 
numero della regola applicata alla catena (quindi la 38esima regola
alla chain input) vedi ipchains -L
quindi, in sostanza, in base alle regola 38 della chain input il tuo
kernel ha respinto (mandando un mi pare icmp tipo ? host o port
irraggiungibile?) un ping proveniente da 194.119.192.4
... credo, ma sono pronto a ritrattare tutto.
-- 
nebbia

 SYN (#24) 
non mi dire che te lo sei digitato tutto... come hai fatto ad
includerlo?
-- 
nebbia

includerlo?
mai sentito parlare di copia-incolla?

 includerlo?
Strano ma vero, copy+paste col mouse.


 Strano ma vero, copy+paste col mouse.
mi tocca attaccarci un mouse+gpm allora, mi pare comoda sta faccenda
-- 
nebbia

 .... cose che non so ... 
Gli x= dopo gli indirizzi sono informazioni che il kernel ti da sul quel
datagramma IP, piu' precisamente sono alcuni dei campi dell'header dello
stesso.
Vedi /usr/src/linux/net/ipv4/ip_fw.c, funzione dump_packet().
L indica la lunghezza totale del datagramma, S e' il Type of Service (un
byte per indicare i 4 valori possibili), I e' l'id di quel datagramma, F
e' l'offset per la frammentazione (evidentente questo pacchetto era
frammentato) e T e' il Time to Live. 
La lunghezza di 1500 byte e' quella standard per le eth, ma mi sembra
strano che F sia a 0x4000 dato che il ping standard e' di 54+8 byte,
magari qualcuno ha tentato un Ping of Death :-)
-- 
Fabio   fabio161616(at)
libero.it
 blackmagic(at)
penguinpowered.com
 
char *p="char *p=%c%s%c;main(){printf(p,34,p,34);}";main(){printf(p,34,p,34);}

 stesso.
grazie. gli unici due di cui immaginavo il significato erano T e L,
sugli altri buio completo.
-- 
nebbia