evitar mapeos de red

Sebastian Veloso Varas sveloso en sevelv.cl
Vie Sep 12 11:46:45 CLT 2008


Jorge Luis Rodriguez escribió:
> Hola comunidad!
>
> les cuento mi problema, resulta que tenemos una red clase A con el rango de
> ip 10.0.0.xxx, con salida a internet y algunos servicios para la red
> interna, dentro de esta red
> instales un servidor con debian, ese servidor tiene la eth0 con ip
> 10.0.0.150, y una eth1 con ip 192.168.1.1. Este servidor debe brindar nada
> mas que internet a la subred de
>
> clase C con ip 192.168.1.xxx. Resulta que con el scrips que posteso mas
> abajo funciona perfecto, pero no logro evitar que desde la red interna se
> pueda mapear la red de clase
>
> A (10.0.0.xxx), probe con nmap, languard, y en ambos caso si mapeo el rango
> de ip 10.0.0.1-10.0.0.250 estando en la red de clase C (192.168.1.1) puedo
> ver todas las pc que
>
> estan en la red 10.0.0.xxx. Eh buscado y leido mucho, quizas la solucion sea
> una tontera, pero bueno, lo cierto es que no logro ver la socucion entre
> todo lo que ley y busque.
>
> internet-=|Router-1|10.0.0.1=-------10.0.0.150-=|Router-2|=-192.168.1.1
>
> #!/bin/bash
> #Firewall con politicas por defecto DROP!
>
> route add default gw 10.0.0.1
>
> IPTABLES="`which iptables`"
> IPLOCAL="192.168.1.1"
>
> EXTIF="eth0"
>
> INTIF="eth1"
>
>
> echo " Interface Externa:  $EXTIF"
> echo " Interface Interna:  $INTIF"
> echo " Path a iptables  :  $IPTABLES"
> echo " IP de local    :  $IPLOCAL"
>
> #cargamos los modulos
>
> /sbin/modprobe ip_tables
> /sbin/modprobe ip_conntrack
> /sbin/modprobe ip_conntrack_ftp
> /sbin/modprobe iptable_nat
> /sbin/modprobe ip_nat_ftp
> /sbin/modprobe iptable_filter
> /sbin/modprobe ipt_LOG
> /sbin/modprobe ipt_REJECT
> /sbin/modprobe ipt_state
> /sbin/modprobe ipt_MASQUERADE
>
> #bit necesarios en el kernel
> echo 1 > /proc/sys/net/ipv4/ip_forward
> echo 1 > /proc/sys/net/ipv4/ip_dynaddr
>
> #borramos Reglas Preestablecidas
> $IPTABLES -F
> $IPTABLES -X
> $IPTABLES -Z
> $IPTABLES -t nat -F
>
> #establecemos las politicas por defecto
> $IPTABLES -P INPUT DROP
> $IPTABLES -P OUTPUT DROP
> $IPTABLES -P FORWARD DROP
>
> #habilitar el enmascarado
> $IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
>
> #Se permiten pasar solo las conecciones establecidas
> $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state
> ESTABLISHED,RELATED -j ACCEPT
> $IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
> $IPTABLES -A FORWARD -j LOG
>
>
> $IPTABLES -A INPUT -i $EXTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
> $IPTABLES -A OUTPUT -o $EXTIF -j ACCEPT
>
> #permitimos entrar y salir al loopback
> $IPTABLES -A INPUT -i lo -j ACCEPT
> $IPTABLES -A OUTPUT -o lo -j ACCEPT
>
> #solo mi ip puede entrar al SSH
> $IPTABLES -A INPUT -i $INTIF -p tcp --dport 22 -s 192.168.1.9 -j ACCEPT
> $IPTABLES -A OUTPUT -o $INTIF -p tcp --sport 22 -d 192.168.1.9 -j ACCEPT
>
> $IPTABLES -A INPUT -i $INTIF -p udp --dport 53 -j ACCEPT
> $IPTABLES -A OUTPUT -o $INTIF -p udp --sport 53 -j ACCEPT
>
> #Permitiendo ingresar al DHCP
> $IPTABLES -A INPUT -i $INTIF -p tcp --sport 68 --dport 67:68 -j ACCEPT
> $IPTABLES -A INPUT -i $INTIF -p udp --sport 68 --dport 67:68 -j ACCEPT
>
> $IPTABLES -A OUTPUT -p tcp --sport 67 --dport 67:68 -j ACCEPT
> $IPTABLES -A OUTPUT -p udp --sport 67 --dport 67:68 -j ACCEPT
>
> #Habilitar pings
> $IPTABLES -A INPUT -p icmp -i $INTIF -j ACCEPT
> $IPTABLES -A OUTPUT -p icmp -o $INTIF -j ACCEPT
>
> #$IPT -L
>
>
> basicamente lo que deseo es que desde la red 192.168.1.xxx no se puedan
> hacer scaneos de red hacia la red 10.0.0.xxx
>
> Muchas gracias a todos.
>
> Ricardo!
>
>   
Ricardo,

          Primero que todo, que tipo de scans estas realizando por nmap
u otra herramienta hacia la red 10? Yo sugiero que controles los tipos
de ataques con PortScan Attack Detector psad
(http://cipherdyne.org/psad/). Una de las "debilidades" de Iptables es
esta. Yo tengo un par de equipos con firewalls con scripts iptables y a
los mas he creado reglas que controlen las secuencias tcp, syn para asi
poder determinar si se trata de un ataque o no (administrativamente
puede ser lineas y lineas de reglas!!) y aun asi es complejo evitar que
me detecten puertos abiertos en algun equipo, a pesar de que tengas
filtrado por defecto todo.
Respecto a psad, te da todas las ventajas de un IDS/IPS, está diseñado
para trabajar con Iptables y puedes utilizar las firmas de Snort para
poder filtrar ataques.

Saludos Cordiales

-- 

Sebastián Veloso Varas
Seguridad y Comunicaciones
E-Mail : sveloso en sevelv.cl
Móvil : 9-4968717
PGP-Key : http://www.sevelv.cl/pgp/keypub/sveloso@sevelv.cl.asc
WebSite : http://www.sevelv.cl



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