[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Tengo una duda para asegurar el firewall.



 --- Pablo Braulio <brulics@gmail.com> escribió:

> Hola.
> Al final lo he dejado así para asegurar el acceso a
> la LAN.
> 
> I_EXT=eth0
> I_LAN=eth1
> I_DMZ=eth2
> 
> LAN=192.168.1.0/24
> DMZ=192.168.0.2
> 
> EQUIPO1=192.168.1.4
> EQUIPO2=192.168.1.2
> 
> echo -n "Activando reglas para interfaces: "
> 		#I_EXT
> 		iptables -A INPUT -i $I_EXT -m state --state
> ESTABLISHED,RELATED -j ACCEPT
> 		iptables -A OUTPUT -o $I_EXT -m state --state
> NEW,ESTABLISHED,RELATED -j 
> ACCEPT

Con estas reglas esta permitiendo gran cantidad de
tráfico de salida y, por consiguiente, de respuestas
de entrada al propio firewall todo en la interfaz
externa. ¿De verdad te interesa eso?
> 		
> 		#De LAN al exterior		
> 		iptables -A FORWARD -i $I_LAN -s $LAN -d 0.0.0.0/0
> -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

para esto yo suelo hacer lo siguiente:

iptables --new-chain lan_a_ext
iptables -A FORWARD -i $I_LAN -o $I_EXT -j lan_a_ext

iptables -A lan_a_ext -m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT

#denegamos y logeamos el resto del tráfico
iptables -A lan_a_ext -j LOG --log-prefix "LAN->EXT: "
iptables -A lan_a_ext -j DROP


> 		iptables -A FORWARD -o $I_LAN -s 0.0.0.0/0 -d $LAN
> -m state --state 
> ESTABLISHED,RELATED -j ACCEPT
Esta regla no es de lan a ext, es de ext a lan, una
sutil diferencia.
iptables --new-chain ext_a_lan
iptables -A FORWARD -i $I_EXT -o $I_LAN -j ext_a_lan

iptables -A ext_a_lan -m state --state
ESTABLISHED,RELATED -j ACCEPT

#DENEGAMOS Y LOGEAMOS EL RESTO DEL TRÁFICO
iptables -A ext_a_lan -j LOG --log-prefix "EXT->LAN: "
iptables -A ext_a_lan -j DROP

> 
> # 		De DMZ al exterior.
> 		iptables -A FORWARD -i $I_DMZ -s $DMZ -d 0.0.0.0/0
> -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Esto tambien lo separo en una cadena distinta igual
que antes.

> 		iptables -A FORWARD -o $I_DMZ -s 0.0.0.0/0 -d $DMZ
> -m state --state 
> ESTABLISHED,RELATED -j ACCEPT

Esto no es de DMZ al Exterior, es del Exterior a DMZ

> 		echo "hecho."
> 
> 		echo -n "Asegurando LAN: "
> # 		Permitiendo ssh de equipo1 y equipo2 a firewall.
> 		iptables -A INPUT -i $I_LAN -p tcp -s $equipo1 -d
> 192.168.1.1 --dport 560 -m 
> state --state NEW,ESTABLISHED,RELATED -j ACCEPT
> 		iptables -A INPUT -i $I_LAN -p tcp -s $equipo2 -d
> 192.168.1.1 --dport 560 -m 
> state --state NEW,ESTABLISHED,RELATED -j ACCEPT
> 
> 		iptables -A OUTPUT -o $I_LAN -p tcp -s 192.168.1.1
> -d $equipo1 --sport 560 
> -m state --state ESTABLISHED,RELATED -j ACCEPT
> 		iptables -A OUTPUT -o $I_LAN -p tcp -s 192.168.1.1
> -d $equipo2 --sport 560 
> -m state --state ESTABLISHED,RELATED -j ACCEPT

Todo esto lo separaría en dos: LAN a firewall y
firewall a LAN.
No hace falta que en todas las reglas pongas el
estado, si lo separas en dos cadenas y en la cadena de
firewall a LAN pones al principio algo como

iptables -A firewall_a_lan -m state --state
ESTABLISHED,RELATED -j ACCEPT

te sobra, siempre y cuando los paquetes de respuesta
no se deban a una conexión a un puerto UDP.
> 
> 		echo "hecho."
> 
> Lo que no he conseguido es crear nuevas reglas.

¿No has podido crear nuevas cadenas? ¿Que raro? ¿Te da
algún error? De todas formas te he puesto un par de
ejemplos con tu propio script de como creo yo las
nuevas cadenas.

Para dar acceso al exterior a las redes internas no
veo ninguna regla de enmascaramiento. De esta forma
tus paquetes viajan mostrando al mundo exterior tus
ips internas. No es muy recomendable.
Para solucionar esto, yo suelo añadir una regla que
hace SNAT justo despues de definir las variables :

#Enmascaramiento al exterior
iptables -t nat -A POSTROUTING -s
ip_del_firewall_en_la_lan/24 -o $I_EXT -j SNAT --to
ip_del_firewall_en_la_iface_externa


iptables -t nat -A POSTROUTING -s
ip_del_firewall_en_la_dmz/24 -o $I_EXT -j SNAT --to
ip_del_firewall_en_la_iface_externa

de esta forma cambiamos la direccion de origen en
todos los paquetes ip que mandamos al exterior.

Un saludo


		
______________________________________________ 
Renovamos el Correo Yahoo! 
Nuevos servicios, más seguridad 
http://correo.yahoo.es



Reply to: