Ayuda de Iptables
Tuthotep-El Negro
tuthotep en gmail.com
Jue Dic 6 21:53:52 GMT 2007
Ulises M. Alvarez wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Tuthotep-El Negro wrote:
>
>> Buenas gente:
>>
>> Salida ifconfig:
>> eth0 Link encap:Ethernet HWaddr 00:D0:B7:16:7B:2C
>> inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
>> inet6 addr: fe80::2d0:b7ff:fe16:7b2c/64 Scope:Link
>> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
>> RX packets:2822617 errors:0 dropped:0 overruns:0 frame:0
>> TX packets:7766278 errors:0 dropped:0 overruns:0 carrier:0
>> collisions:0 txqueuelen:1000
>> RX bytes:181805465 (173.3 MiB) TX bytes:401871921 (383.2 MiB)
>>
>> eth1 Link encap:Ethernet HWaddr 00:0E:2E:05:6E:13
>> inet addr:10.35.126.99 Bcast:10.35.126.127 Mask:255.255.255.224
>> inet6 addr: fe80::20e:2eff:fe05:6e13/64 Scope:Link
>> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
>> RX packets:28031 errors:0 dropped:0 overruns:0 frame:0
>> TX packets:21203 errors:0 dropped:0 overruns:0 carrier:0
>> collisions:0 txqueuelen:1000
>> RX bytes:4205010 (4.0 MiB) TX bytes:10767279 (10.2 MiB)
>> Interrupt:10 Base address:0x2c00
>>
>>
>>
>>
>> Tengo una maquina que comparte dos redes y es un firewall; Uso
>> Firestarter, con retoques a mano. Toda petición http, la re-envia a un
>> web de la máquina 10.35.126.99. He permitido conexiones a un par de
>> direcciones con otros puertos, y todo ok.
>>
>> Pero al hacerlo con el puerto 80 (http), las dos lineas - una en
>> user-pre y otra en user-post de firestarter - que re-envian las
>> peticiones http:
>>
>> iptables -t nat -A PREROUTING -s 10.35.126.96/27 -p tcp -m tcp --dport
>> 80 -j DNAT --to-destination 10.35.126.99-10.35.126.99:80-80
>> iptables -t nat -A POSTROUTING -s 10.35.126.96/27 -p tcp -m tcp --dport
>> 80 -j SNAT --to-source 10.35.126.99
>>
>>
>> siguen funcionando; O sea, necesito una execpción a ciertas ip's, para
>> las dos reglas mencionadas antes.
>> He probado varias cosas, que fuí encontrando en google, tutorials, me
>> leí las man de iptables 5 mil veces, pero no doy con ello.
>> Por fa, necesito una mano, mi ultimo intento fue:
>> //iptables -t nat -A POSTROUTING -s 10.35.126.96/27 -d 69.72.161.58 -j
>> SNAT --to-source 10.35.126.99
>> //iptables -A INPUT -p TCP -m state --state related -j ACCEPT
>> y tampoco lo conseguí..........
>> me estoy volviendo loco........
>> y las chinas me persiguen.............
>>
>> GRACIAS
>>
>>
>>
>
> ¡Hola!
>
> Vamos a ver si comprendí tu petición, de acuerdo a:
>
>
>> iptables -t nat -A POSTROUTING -s 10.35.126.96/27 -p tcp -m tcp \
>> --dport 80 -j SNAT --to-source 10.35.126.99
>>
>
> Lo que entiendo es, ¿deseas enmascarar las peticiones para que que
> parezca que provienen de la IP 10.35.126.99 (eth1)?
>
> Si es así, la regla quedaría:
>
> iptables -t nat -A POSTROUTING -s 10.35.126.96/27 \
> - -j SNAT --to-source 10.35.126.99
>
> Saludos.
> - --
> Ulises M. Alvarez.
> Unidad de Gestión del Conocimiento e Innovación Tecnológica.
> Centro de Física Aplicada y Tecnología Avanzada.
> UNAM
> http://www.fata.unam.mx/
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFHVv++QLeMG7SzNAoRAoddAJwJNiQ9m2olEH59DdVLzReJF6iIIQCdG4s2
> b1jt3vWOnOQeZajgLnwXKCM=
> =ohag
> -----END PGP SIGNATURE-----
>
>
Gracias Ulises.
Eso ya lo realiza. a ver si me explico mejor.
colocas www.google.com, o cualquier web que quieras, y te sale la web
por defecto del host 10.35.126.99.
Hasta funciona correctamente.
Ahora, quiero que, para ciertas ip's/nombre de hosts, si se permita el
acceso.
Con la regla de postrouting creo que no hay problema, pero,
diseccionando un poco la de pre:
iptables -t nat -A PREROUTING -s 10.35.126.96/27 -p tcp -m tcp --dport
80 -j DNAT --to-destination 10.35.126.99-10.35.126.99:80-80
Corregirme si me equivoco, todo lo que venga de la red 10.35.126.96/27,
y por el puerto 80, enviarlo al host 10.35.126.99, y aqui sale nuestra web.
Yo necesito una execpción, por ip, a esta regla.
he probado con:
(todo lo que venga de la red 10.35.126.96/27, por el puerto 80, y el
destino sea 65.72.161.65, aceptar, o sea, no enviarlo a --to-destination
10.35.126.99-10.35.126.99:80-80)
iptables -t nat -A PREROUTING -s 10.35.126.96/27 -d 65.72.161.65 -p tcp -m tcp --dport
80 -j DNAT ACCEPT
Y no me funcionó, pero creo que la regla de postrouting no tengo que tocarla, aunque puede que me equivoque tambien.
Gracias , y necesito la ayuda de verdad.
Más información sobre la lista de distribución ubuntu-es