Problemas con nat

Dinko linux-utfsm en dinko.cl
Mie Mar 3 12:57:23 CLST 2004


On Wed, Mar 03, 2004 at 10:39:44AM -0300, Jose Miguel Vidal Lavin wrote:
> Señores
> 
> 	Tengo una máquina que funciona com squid proxy y funciona bien, 
> inclusive me filtra msn, kazaa y demases. El problema es que tengo ke 
> usar nat para habilitar todos los servicios a ciertas máquinas y eso lo 
> hago desde una máquina que tengo de firewall pero de un momento a otro 
> dejó de funcionar el ruteo y no me puedo conectar a internet usando esa 
> puerta de enlace, he revisado toda la configuración y no he podido 
> encontrar el error.
> 
> 	mi configuración que me entrega iptables es la siguiente:
>
> [...]
> Tabla: filter
> Chain INPUT (policy DROP)
> target     prot opt source               destination
> ACCEPT     icmp --  anywhere             anywhere           icmp 
> echo-request
> ACCEPT     tcp  --  anywhere             anywhere           tcp dpt:ssh
> ACCEPT     tcp  --  anywhere             anywhere           tcp spt:ssh
> [...]

Esta configuracion es extranna -al menos en la cadena INPUT-, en cuanto a
tener los source ports de esa manera. Piensa que en teoria, podria forjar un
paquete con puertos de origen especificos y... mejor olvidate de permitir
conexiones mediante source ports.

Lo que conozco es aceptar conexiones solo si han sido establecidas desde tu
intranet:

ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED

Esto va de la mano con el enmascaramiento. Ver mas adelante...

> [...]
> Chain POSTROUTING (policy ACCEPT)
> target     prot opt source               destination
> MASQUERADE  all  --  anywhere             anywhere
> 
> [...]

Esto es enmascaramiento gratis. Quizas sea bueno restringir esto a tu
intranet, p.e.:

MASQUERADE  all  --  10.0.0.0/24      anywhere

Bastaria que cada uno de los clientes de la intranet tenga configurado como
gateway a esta maquina y liztaylor.

Ahora, respecto a tu problema en si, no veo reglas para direccionar servicios
a otras maquinas, p.e. algo similar a:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  anywhere             anywhere           tcp dpt:25 to:10.0.0.3:25

que transfiere el smtp a otra maquina, la cual a su vez tiene como gateway a
esta (la del firewall), sino los paquetes de salida no tienen por donde ser
enviados para responder las peticiones.

No tendras el ruteo en algun script por ahi? Me tinca que tuviste que reiniciar
la maquina y no tienes "en duro" tales reglas.

Tambien no se ven 2 interfaces de red... debes ser mas explicito en las reglas
para cada una de ellas, y separar bien ambas redes: interfaz hacia internet
(insegura) e interfaz hacia intranet (menos insegura :).

Revisa los ejemplos que hay en iptables.org, ahi se aprende bastante!

> -- 
> Jose Miguel Vidal Lavin       User #333809 http://couter.li.org
> Departamento de Informática                      Fono : 6764600
> Cobranzas y Servicios Afines                            6764622
> Bulnes 317, Oficina 612     					
> 

-- 

		Saludos, Dinko



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