redireccionamientod e puertos con iptables

Yonathan Dossow ydossow en inf.utfsm.cl
Vie Nov 6 10:53:34 CLST 2009


On Fri, 2009-11-06 at 00:55 -0300, Aldrin Martoq wrote:
> 2009/11/5  <rvr en vtr.net>:
> > El cuento es el siguiente, tengo un proveedor (Telmex) el cual vamos a dar
> > de baja a fin de mes. Todo me funciona bien, mi red interna (usuarios y
> > servidores) sales por mi linux con iptables, cuento corto, ningún problema.
> > El proveedor nuevo instalo el cablerio nuevo y su aparato (obviamnete hay IP
> > nueva GTD ) y ahí viene el problema.
> > Acá alojamos varios sitios y mientras no se haga el cambio de todos los
> > sitios a la IP nueva no podemos llegar y cambiar el enlace, por lo que monté
> > otro equipo con Linux + iptables, y lo que quería hacer era redireccionar
> > todas las peticiones al puerto 80 en la IP nueva hacia mi servidor apache.
> 
> > La ip interna del servidor web es 192.168.0.1, y el Linux + iptables nuevo
> > tiene la 192.168.0.3., por lo que entre ellos se ven sin problemas. El
> > problema viene cuando llega la petición a la IP nueva y la reenvía bien
> > hacia adentro con una regla PREROUTING,
> 
> No no no: la _tabla_ es PREROUTING, probablemente estás usando DNAT
> para redirigir a tu servidor en su IP interna.

PREROUTING es una cadena, las tablas son filter, nat, mangle y raw

> 
> > pero el server viejo 192.168.0.1 ve
> > que le llego una peticion desde la IP nueva, puerto 80 y por ende trata de
> > contestar usando el GW del proveedor viejo (gateway por defecto) , por lo
> > que la conexión se queda esperando eternamente.
> 
> No no no: en realidad ve que la petición llega desde una IP de
> internet (y el puerto origen no es 80). Si la IP de origen dice
> internet, la respuesta se irá por TELMEX en vez de volver por la IP
> interna, y por eso el DNAT no funciona como una espera... Una solución
> para tu configuración es cambiar la IP de origen... algo como esto:
> 
> iptables -N MITABLA
> iptables -A PREROUTING -p tcp --dport 80 -j MITABLA
> iptables -A PREROUTING -p tcp --dport 25 -j MITABLA
> [... etc con el resto de los servicios ...]
> 
> iptables -A MITABLA -j DNAT --to-destination 192.168.0.1
> iptables -A MITABLA -j SNAT --to-source 192.168.0.3

esto deberia ir en la tabla nat... en filter eso no deberia funcionar.

-- 
Yonathan H. Dossow Acun~a
Unidad de Servicios de Computacion e Internet  Fono: +56 32 2654367
Universidad Tecnica Federico Santa Maria          Valparaiso, Chile
------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre     : no disponible
Tipo       : application/pgp-signature
Tamaño     : 198 bytes
Descripción: This is a digitally signed message part
Url        : http://listas.inf.utfsm.cl/pipermail/linux/attachments/20091106/6e477a4d/attachment.bin 


Más información sobre la lista de distribución Linux