Pagina 1 di 1
IPtables: packet mangling
Inviato: mer 20 set 2006, 13:30
da whites11
Ciao!
avrei bisogno di creare una regola iptables che prenda i pacchetti in arrivo da un certo ip su una certa porta e li modifichi sostituendo all'indirizzo locale quello pubblico (si tratta di un firewall/nat configurato in un gateway).
Mi bastano anche link a documentazioni chiare sul packet mangling...please help!
Inviato: mer 20 set 2006, 16:45
da slacker
iptables -t nat -I POSTROUTING -s x.x.x.x/32 -j MASQUERADE
Re: IPtables: packet mangling
Inviato: mer 20 set 2006, 17:25
da masalapianta
whites11 ha scritto:Ciao!
avrei bisogno di creare una regola iptables che prenda i pacchetti in arrivo da un certo ip su una certa porta e li modifichi sostituendo all'indirizzo locale quello pubblico (si tratta di un firewall/nat configurato in un gateway).
Mi bastano anche link a documentazioni chiare sul packet mangling...please help!
dicendo "sostituendo all'indirizzo locale quello pubblico" intendi indirizzo sorgente del pacchetto, indirizzo destinazione o che altro?
Re: IPtables: packet mangling
Inviato: mer 20 set 2006, 18:50
da whites11
masalapianta ha scritto:whites11 ha scritto:Ciao!
avrei bisogno di creare una regola iptables che prenda i pacchetti in arrivo da un certo ip su una certa porta e li modifichi sostituendo all'indirizzo locale quello pubblico (si tratta di un firewall/nat configurato in un gateway).
Mi bastano anche link a documentazioni chiare sul packet mangling...please help!
dicendo "sostituendo all'indirizzo locale quello pubblico" intendi indirizzo sorgente del pacchetto, indirizzo destinazione o che altro?
intendo dire all'interno del pacchetto, sostituire l'indirizzo del mittente..
Inviato: mer 20 set 2006, 20:32
da masalapianta
e' sufficiente usare il target MASQUERADE di iptables, oppure SNAT se entrambi gli ip son statici (man iptables)
Inviato: gio 21 set 2006, 18:58
da whites11
attualmente per fare il nat io uso le seguenti due regole:
Codice: Seleziona tutto
iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
sai dirmi come modificarle per poter ottenere ciò che voglio???
Inviato: gio 21 set 2006, 20:22
da masalapianta
whites11 ha scritto:attualmente per fare il nat io uso le seguenti due regole:
Codice: Seleziona tutto
iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
sai dirmi come modificarle per poter ottenere ciò che voglio???
o non ho capito io cosa vuoi oppure non hai capito tu che gia' fa quello che vuoi
Inviato: ven 22 set 2006, 9:32
da whites11
purtroppo credo che con queste regole iptables faccia si il nat, ma cambiando solo l'indirizzo di destinazione del pacchetto a basso livello: ma nel contenuto del pacchetto (nell'header sip per intenderci) lascia l'indirizzo della lan. comunque controllerò meglio!
Inviato: ven 22 set 2006, 10:33
da masalapianta
whites11 ha scritto:purtroppo credo che con queste regole iptables faccia si il nat, ma cambiando solo l'indirizzo di destinazione del pacchetto a basso livello: ma nel contenuto del pacchetto (nell'header sip per intenderci) lascia l'indirizzo della lan. comunque controllerò meglio!
no, la prima regola accetta tutto il traffico che viene "routato" da ppp0 a eth0, mentre la seconda viene applicata a tutti i pacchetti in uscita su ppp0 _dopo_ che sono state applicate le regole di routing e su quelli di ritorno; su questi pacchetti fa le seguenti cose:
nei pacchetti in uscita sostituisce l'ip sorgente nell'intestazione ip con l'ip di ppp0 e ricalcola il checksum, invece nei pacchetti di ritorno sostituisce l'ip di destinazione con quello sorgente che aveva sotituito nei pacchetti in uscita, ricalcolando anche stavolta il checksum
Inviato: ven 22 set 2006, 10:53
da whites11
ritengo ragionevole che quello dovrebbe essere il comportamento corretto, purtroppo però non pare essere così:
i pacchetti che, secondo me, escono "sbagliati" sono delprotocollo sip.
infatti non riesco ad autenticarmi sul server sip e ottengo come risposta "please don't use local ip addresses". in pratica dovrei usare un server stun, che però non è supportato dal mio client sip (un telefono wifi).
faro degli sniffing del traffico e posterò maggiori dettagli.
intanto grazie mille per l'aiuto!
Inviato: ven 22 set 2006, 11:36
da Paoletta
whites11 ha scritto:ritengo ragionevole che quello dovrebbe essere il comportamento corretto, purtroppo però non pare essere così:
i pacchetti che, secondo me, escono "sbagliati" sono delprotocollo sip.
infatti non riesco ad autenticarmi sul server sip e ottengo come risposta "please don't use local ip addresses". in pratica dovrei usare un server stun, che però non è supportato dal mio client sip (un telefono wifi).
faro degli sniffing del traffico e posterò maggiori dettagli.
intanto grazie mille per l'aiuto!
credo che quello che vuoi fare tu non si possa fare con un ip firewall, che per definzione lavora a livello ip; tu hai bisogno di un firewall che lavori a livello applicativo (cioè un proxy)
Inviato: ven 22 set 2006, 13:33
da whites11
Paoletta ha scritto:whites11 ha scritto:ritengo ragionevole che quello dovrebbe essere il comportamento corretto, purtroppo però non pare essere così:
i pacchetti che, secondo me, escono "sbagliati" sono delprotocollo sip.
infatti non riesco ad autenticarmi sul server sip e ottengo come risposta "please don't use local ip addresses". in pratica dovrei usare un server stun, che però non è supportato dal mio client sip (un telefono wifi).
faro degli sniffing del traffico e posterò maggiori dettagli.
intanto grazie mille per l'aiuto!
credo che quello che vuoi fare tu non si possa fare con un ip firewall, che per definzione lavora a livello ip; tu hai bisogno di un firewall che lavori a livello applicativo (cioè un proxy)
mi sa proprio che hai ragione...grazie anche a te!