[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