[eside-ghost] Iptables

Alvaro Uría (Fermat) fermat en movimage.com
Jue Nov 4 19:38:20 CET 2004


Aupa Zefe!

Fernando de Urien [04/11/04 18:52 +0100] escribió:
// Enga, a ver si alguno de los gurús.......
// Resulta que quiero hacer que todas las peticiones que llegan a un 
// servidor y que provienen de una determinada máquina se redirijan 
// automaticamente hacia otro servidor (a que suena raro?? :-) )

En teoría no suena raro: esto es lo que hacen los firewalls más o menos.
Por ejemplo, todo lo que vaya al puerto 80 se redirije a la DMZ, y a la
IP del servidor Web... etc.

Si tienes que traducir una IP REAL (pública) a una de LAN, entonces
tendrías que usar NAT. Si no (que creo que es el caso), con un FORWARD
en la tabla 'filter' te valdría, creo yo O:)

Entonces, si todas las IPs son públicas (o accesibles desde el fuente sin
necesidad de traducir, como si entre IPs de LAN anduviera el juego),
>>>>>>>>>>>>>>>>>>>>
## IDA ##
iptables -A FORWARD -p tcp -s $IPCLIENTE -d $IPSERVER --dport 80 -j ACCEPT
## VUELTA ##
iptables -A FORWARD -p tcp -s $IPSERVER -d $IPCLIENT --sport 80 -j ACCEPT
<<<<<<<<<<<<<<<<<<<<

En teoría, $IPCLIENTE e $IPSERVER estarán en distintos rangos por lo
menos (en plan, una en 192.168.0.0/24 y la otra en 192.168.1.0/24), y
por lo tanto el router éste, tendrá 2 tarjetas de red. Si es así, y
están configuradas tal que,

eth0 => 192.168.0.1
eth1 => 192.168.1.1

Podrías incluir la interfaz en el script de iptables, tal que:
>>>>>>>>>>>>>>>>>>>>
## IDA ##
iptables -A FORWARD -p tcp -i eth0 -o eth1 -s $IPCLIENTE -d $IPSERVER --dport 80 -j ACCEPT
## VUELTA ##
iptables -A FORWARD -p tcp -i eth1 -o eth0 -s $IPSERVER -d $IPCLIENT --sport 80 -j ACCEPT
<<<<<<<<<<<<<<<<<<<<


// iptables -t nat -A PREROUTING  -p tcp  -s IPCLIENTE  -d SERVIDOR2 
// --destination-port 80 -j DNAT --to-destination servidor2
// echo 1 > /proc/sys/net/ipv4/ip_forward

No te hace falta activar 'ip_forward' si usas el FORWARD.

// A alguien se le ocurre qeu me puede estar fallando y no me he dado 
// cuenta (descartad que me falten los modulos del kernel)

O:-? Espero ayudarte.

Te recomiendo un howto impresionante,

	http://www.pello.info/filez/firewall/iptables.html

// Zefe

Saludos,

PD: cuando la tabla es 'filter' (-t filter), acostumbro a no ponerlo
porque es la tabla que iptables pilla por defecto O:-)
-- 
  ,--.
 |  oo| wget -O - fermat.movimage.com/fermat.asc | gpg --import
 |  ~~| Key FingerPrint = 02C3 E5E5 2283 D08F 506C  3070 4713 40EF 21C5 21E2
 |/\/\|
     |_[#] La ignorancia es temporal, la estupidez es para siempre!
------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre     : no disponible
Tipo       : application/pgp-signature
Tamaño     : 189 bytes
Descripción: Digital signature
Url        : https://listas.deusto.es/pipermail/eside-ghost/attachments/20041104/7ecf10af/attachment.bin


Más información sobre la lista de distribución eside-ghost