Re: duda con iptables
On Oct 21, 2010, at 6:12 PM, Miguel Oyarzo O. wrote: Si, por aca el ruteo es correcto pero no el filtrado. Actually el PREROUTING y el POSTROUTING y las marcas mangle trabajan como corresponde, pero FORWARD no, si se trata de la entrada y salida por la misma interfaz. Si tienes modificaciones, tal vez lo que estas incorrecto es que la regla en FORWARD no calza. Haz un FORWARD -j LOG para ver que los paquetes realmente están pasando por ahí. Aldrin Martoq http://aldrin.martoq.cl/
duda con iptables
Estimados, despues de años me surgió esta duda: Si con iptables tengo -P FORWARD DROP Esto funciona para paquetes que pretendan atravesar de una interfaz a otra. pero qué pasa con los paquetes que entran por una interfaz y deben salir por la misma? Por ejemplo la misma maquina linux trabajando como PROXY ARP. La cadena FORWARD cadena no funcionaría en ese caso ... o me equivoco? Atte, -- = Miguel A. Oyarzo O. Ingeniería en Redes y Telecomunicaciones Austro Internet S.A.INALAMBRICA S.A. Teléfono: [+05661] 710030 Punta Arenas - Chile Linux User: # 483188 - counter.li.org =
Re: duda con iptables
On Oct 21, 2010, at 10:08 AM, Miguel Oyarzo O. wrote: Estimados, despues de años me surgió esta duda: Si con iptables tengo -P FORWARD DROP Esto funciona para paquetes que pretendan atravesar de una interfaz a otra. pero qué pasa con los paquetes que entran por una interfaz y deben salir por la misma? No, FORWARD no consiste en los que entran por una interfaz y salen por otra. Viejo pero aún válido (simplificado) el mono: http://bit.ly/9MPxAH Cuando un paquete entra al kernel, queda en una estructura llamada skbuff que tiene toda la información: - Si ese paquete es ruteado por el kernel (por eso el sys.net.ipv4.ip_forward=1), pasará por FORWARD - Si en cambio ese paquete es consumido por un proceso, pasará en cambio por INPUT y desaparece de la vista del kernel (skbuff) Esto es independiente de la interfaz por la que entra/sale. Por ejemplo la misma maquina linux trabajando como PROXY ARP. La cadena FORWARD cadena no funcionaría en ese caso ... o me equivoco? Depende de cómo está implementado el PROXY ARP (cosa que desconozco): - Si es un proceso de usuario (un demonio), entrará por INPUT y no por FORWARD - Si es algo a nivel del kernel no creo que sea consumido el skbuff y pasará por FORWARD en vez de INPUT Hay algunas funcionalidades en el kernel que están implementadas como procesos, pero creo que ninguna funcionalidad de redes. Aldrin Martoq http://aldrin.martoq.cl/
Re: duda con iptables
2010/10/21 Aldrin Martoq amar...@dcc.uchile.cl: On Oct 21, 2010, at 10:08 AM, Miguel Oyarzo O. wrote: Estimados, despues de años me surgió esta duda: Si con iptables tengo -P FORWARD DROP Esto funciona para paquetes que pretendan atravesar de una interfaz a otra. pero qué pasa con los paquetes que entran por una interfaz y deben salir por la misma? No, FORWARD no consiste en los que entran por una interfaz y salen por otra. Viejo pero aún válido (simplificado) el mono: http://bit.ly/9MPxAH heyy.. yo me recuerdo de esta presentación !!! seguro que fue en 2001 ??? como pasa el tiempo !!! :D salu2 -- -- Victor Hugo dos Santos Linux Counter #224399
Re: duda con iptables
El 21-10-2010 13:05, Aldrin Martoq escribió: On Oct 21, 2010, at 10:08 AM, Miguel Oyarzo O. wrote: Estimados, despues de años me surgió esta duda: Si con iptables tengo -P FORWARD DROP Esto funciona para paquetes que pretendan atravesar de una interfaz a otra. pero qué pasa con los paquetes que entran por una interfaz y deben salir por la misma? No, FORWARD no consiste en los que entran por una interfaz y salen por otra. Viejo pero aún válido (simplificado) el mono: http://bit.ly/9MPxAH Cuando un paquete entra al kernel, queda en una estructura llamada skbuff que tiene toda la información: - Si ese paquete es ruteado por el kernel (por eso el sys.net.ipv4.ip_forward=1), pasará por FORWARD - Si en cambio ese paquete es consumido por un proceso, pasará en cambio por INPUT y desaparece de la vista del kernel (skbuff) Esto es independiente de la interfaz por la que entra/sale. Aldrin, lo que mencionas arriba lo tengo muy claro (olvida el trafico INPUT, no es el caso) A raiz de eso mismo me sale la duda Si la interfaz da lo mismo, entonces por que razon al realizar este ensayo: LAN1--(router)--eth0FW/Linux LAN2--(router)--eth0---| .. FORWARD -i eth0 -s LAN1 -d LAN2 -j DROP (no bloquea) pero desde luego si funciona (bloqueando): LAN1--(router)--eth0--FW/Linux-eth1-(router)--LAN2 En este caso el kernel rutea bien los paquetes entre LAN1 y LAN2, pero no logro que FORWARD DROP trabaje bien si los paquetes son forwarded entre ambas LANs usando la misma Interfaz como entrada y salida. Que opinas? = Miguel A. Oyarzo O. Ingeniería en Redes y Telecomunicaciones Austro Internet S.A.INALAMBRICA S.A. Teléfono: [+05661] 710030 Punta Arenas - Chile Linux User: # 483188 - counter.li.org =
Re: duda con iptables
On Oct 21, 2010, at 4:22 PM, Miguel Oyarzo O. wrote: A raiz de eso mismo me sale la duda Si la interfaz da lo mismo, entonces por que razon al realizar este ensayo: LAN1--(router)--eth0FW/Linux LAN2--(router)--eth0---| .. FORWARD -i eth0 -s LAN1 -d LAN2 -j DROP (no bloquea) pero desde luego si funciona (bloqueando): LAN1--(router)--eth0--FW/Linux-eth1-(router)--LAN2 En este caso el kernel rutea bien los paquetes entre LAN1 y LAN2, pero no logro que FORWARD DROP trabaje bien si los paquetes son forwarded entre ambas LANs usando la misma Interfaz como entrada y salida. Lo acabo de probar y funciona perfecto tanto con/sin nat # iptables -nL FORWARD -v Chain FORWARD (policy ACCEPT 1348K packets, 539M bytes) pkts bytes target prot opt in out source destination 13 1092 DROP all -- br0* 192.168.1.0/24 172.16.26.0/24 Que opinas? No sé, yo pondría tcpdump en los 3 equipos (red1, router, red2) para ver qué sucede realmente. Aldrin Martoq http://aldrin.martoq.cl/
Re: duda con iptables
El 21-10-2010 17:07, Aldrin Martoq escribió: On Oct 21, 2010, at 4:22 PM, Miguel Oyarzo O. wrote: A raiz de eso mismo me sale la duda Si la interfaz da lo mismo, entonces por que razon al realizar este ensayo: LAN1--(router)--eth0FW/Linux LAN2--(router)--eth0---| .. FORWARD -i eth0 -s LAN1 -d LAN2 -j DROP (no bloquea) pero desde luego si funciona (bloqueando): LAN1--(router)--eth0--FW/Linux-eth1-(router)--LAN2 En este caso el kernel rutea bien los paquetes entre LAN1 y LAN2, pero no logro que FORWARD DROP trabaje bien si los paquetes son forwarded entre ambas LANs usando la misma Interfaz como entrada y salida. Lo acabo de probar y funciona perfecto tanto con/sin nat # iptables -nL FORWARD -v Chain FORWARD (policy ACCEPT 1348K packets, 539M bytes) pkts bytes target prot opt in out source destination 13 1092 DROP all -- br0* 192.168.1.0/24 172.16.26.0/24 Que opinas? No sé, yo pondría tcpdump en los 3 equipos (red1, router, red2) para ver qué sucede realmente. Aldrin Martoq http://aldrin.martoq.cl/ No estoy seguro si es lo mismo, en tu ejemplo muestra una interfaz/bridge (br0). En tu caso tu interfaz es transparente entre 2 LANs y tienes capacidad de filtrado entre ambas, pero no de ruteo, es decir, no eres gateway de ninguna (incluso podrias cambiar tu br0(IP) y tu topologia ni lo notaría. En mi ejemplo yo uso ethX y soy gateway para ambos routers del ejemplo. = Miguel A. Oyarzo O. Ingeniería en Redes y Telecomunicaciones Austro Internet S.A.INALAMBRICA S.A. Teléfono: [+05661] 710030 Punta Arenas - Chile Linux User: # 483188 - counter.li.org =
Re: duda con iptables
On Oct 21, 2010, at 5:28 PM, Miguel Oyarzo O. wrote: En tu caso tu interfaz es transparente entre 2 LANs y tienes capacidad de filtrado entre ambas, pero no de ruteo, es decir, no eres gateway de ninguna (incluso podrias cambiar tu br0(IP) y tu topologia ni lo notaría. br0 es igual a eth0 para este caso, está así por otras razones que no vale detallar acá pero el equipo que hizo de router solo tiene una tarjeta activa (la otra está desconectada). Puse a mano los gateway en los equipos y tcpdump en los 3 equipos, verificando que el ruteo fuera correcto ¿Hiciste lo mismo? Aldrin Martoq http://aldrin.martoq.cl/
Re: duda con iptables
El 21-10-2010 17:56, Aldrin Martoq escribió: On Oct 21, 2010, at 5:28 PM, Miguel Oyarzo O. wrote: En tu caso tu interfaz es transparente entre 2 LANs y tienes capacidad de filtrado entre ambas, pero no de ruteo, es decir, no eres gateway de ninguna (incluso podrias cambiar tu br0(IP) y tu topologia ni lo notaría. br0 es igual a eth0 para este caso, está así por otras razones que no vale detallar acá pero el equipo que hizo de router solo tiene una tarjeta activa (la otra está desconectada). Puse a mano los gateway en los equipos y tcpdump en los 3 equipos, verificando que el ruteo fuera correcto ¿Hiciste lo mismo? Aldrin Martoq http://aldrin.martoq.cl/ Si, por aca el ruteo es correcto pero no el filtrado. Actually el PREROUTING y el POSTROUTING y las marcas mangle trabajan como corresponde, pero FORWARD no, si se trata de la entrada y salida por la misma interfaz. = Miguel A. Oyarzo O. Ingeniería en Redes y Telecomunicaciones Austro Internet S.A.INALAMBRICA S.A. Teléfono: [+05661] 710030 Punta Arenas - Chile Linux User: # 483188 - counter.li.org =