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!
From [EMAIL PROTECTED]  Fri Sep 12 11:46:45 2008
From: [EMAIL PROTECTED] (Sebastian Veloso Varas)
Date: Fri Sep 12 11:46:54 2008
Subject: evitar mapeos de red
In-Reply-To: <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>

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 : [EMAIL PROTECTED]
Móvil : 9-4968717
PGP-Key : http://www.sevelv.cl/pgp/keypub/[EMAIL PROTECTED]
WebSite : http://www.sevelv.cl

Responder a