elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Seguridad (Moderador: r32)
| | |-+  Ayuda con script iptables
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con script iptables  (Leído 6,099 veces)
sworksht

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Ayuda con script iptables
« en: 30 Abril 2011, 19:30 pm »

Buenas a todos, es mi primer mensaje en este foro, aprovecho para presentarme y plantear un problema que tengo con un script de iptables.

Tengo un ordenador con 2 tarjetas de red, corriendo debian únicamente cono firewall entre el router y un switch, para proteger una red interna.

Los servicios hacía el exterior funcionan todos correctamente, es decir, las reglas que aplico en forward, funcionan bien, el problema lo tengo con la redirección de servicios hacia máquinas internas, en concreto, un servidor windows al cual necesitamos acceder a el por escritorio remoto desde el exterior y que también provee de un servidor FTP.

No consigo que funcione ninguno de esos dos servicios, al igual que tampoco funciona la regla SSH que abre este servicio en el firewall para acceder desde internet a el.

Os pego el script y a ver si alguien me puede ayudar en lo que está fallando.

Gracias anticipadas.

Script:


#!/bin/sh
## SCRIPT de IPTABLES - ejemplo del manual de iptables
## Ejemplo de script para firewall entre red-local e internet
## con servicios abiertos de puerto 25, 110, y 1723
## Pello Xabier Altadill Izura
## www.pello.info - pello@pello.info

echo -n Aplicando Reglas de Firewall...

## FLUSH de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

## Establecemos politica por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

## Empezamos a filtrar

# Servicios redirigidos a maquinas internas
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3389 -j DNAT --to 192.168.1.2:3389
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 3389 -j DNAT --to 192.168.1.2:3389
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8245 -j DNAT --to 192.168.1.2:8245
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j DNAT --to 192.168.1.2:21



## Nota: eth0 es el interfaz conectado al router y eth1 a la LAN
# El localhost se deja (por ejemplo conexiones locales a mysql)
iptables -A INPUT -i lo -j ACCEPT

# Al firewall tenemos acceso desde la red local
iptables -A INPUT -s 192.168.1.0/24 -i eth1 -j ACCEPT
#iptables -A INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT

# Y abrimos el puerto SSH
iptables -A INPUT -s 0.0.0.0 -p tcp --dport 22 -j ACCEPT

## Ahora con regla FORWARD filtramos el acceso de la red local
## al exterior. Como se explica antes, a los paquetes que no van dirigidos al
## propio firewall se les aplican reglas de FORWARD

# Aceptamos que vayan a puertos 80
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p tcp --dport 80 -j ACCEPT
# Aceptamos que vayan a puertos https
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p tcp --dport 443 -j ACCEPT

# Aceptamos que consulten los DNS
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 53 -j ACCEPT

#Dejo salir al Noip
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 8245 -j ACCEPT

#Dejo salir a FTP
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 21 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 22 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

#Dejamos salir el correo
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 110 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 25 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 993 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -p udp --dport 465 -j ACCEPT

# Y denegamos el resto. Si se necesita alguno, ya avisaran
iptables -A FORWARD -s 192.168.1.0/24 -i eth1 -j DROP

# Ahora hacemos enmascaramiento de la red local
# y activamos el BIT DE FORWARDING (imprescindible!!!!!)
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

# Con esto permitimos hacer forward de paquetes en el firewall, o sea
# que otras máquinas puedan salir a traves del firewall.
echo 1 > /proc/sys/net/ipv4/ip_forward

## Y ahora cerramos los accesos indeseados del exterior:
# Nota: 0.0.0.0/0 significa: cualquier red

# Cerramos el rango de puerto bien conocido
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp --dport 1:1024 -j DROP
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p udp --dport 1:1024 -j DROP

# Cerramos un puerto de gestión: webmin
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp --dport 10000 -j DROP

echo " OK . Verifique que lo que se aplica con: iptables -L -n"

# Fin del script


« Última modificación: 30 Abril 2011, 19:33 pm por sworksht » En línea

c0d3rSh3ll

Desconectado Desconectado

Mensajes: 190



Ver Perfil
Re: Ayuda con script iptables
« Respuesta #1 en: 1 Mayo 2011, 02:34 am »

lo ideal es que no copies y pegues script que no sabes lo que hacen.

que puertos quieres abrir?? y en que ip. cual es tu tarjeta que se conecta a internet?


En línea

sworksht

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda con script iptables
« Respuesta #2 en: 1 Mayo 2011, 09:57 am »

Hola, los puertos que quiero abrir Redireccionados un pc de la red son el 3389 y el 21 en la ip 192.168.1.2 y en el propio firewall el 22. La tarjeta que se conecta a internet es la eth0.

Gracias.
En línea

SokarTefnut

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda con script iptables
« Respuesta #3 en: 3 Mayo 2011, 20:45 pm »

Hay un par de cosas que no tienen mucha lógica en tu enunciado:
1 .- Si solamente utilizas el Firewall, no necesitamos acceso a localhost
2.-  No necesitamos utilizar NAT, pues el router externo se encargará de hacer la conversion de IP




Usando la politica ACCEPT,básicamente quedaría:

# Permitir  SSH a Debian desde eth0

iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j ACCEPT

# Permitir Escritorio remoto y FTP

iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
iptables -A FORWARD -p tcp --dport 20 -j ACCEPT
iptables -A FORWARD -p tcp --dport 21 -j ACCEPT

iptables -A FORWARD -p tcp --sport 3389 -j ACCEPT
iptables -A FORWARD -p tcp --sport 20 -j ACCEPT
iptables -A FORWARD -p tcp --sport 21 -j ACCEPT


# El resto DROP
iptables -A INPUT -j DROP
iptables -A OUTPUT -j DROP
iptables -A FORWARD -j DROP




« Última modificación: 3 Mayo 2011, 20:47 pm por SokarTefnut » En línea

"Saber romper medidas de seguridad no hace que seas hacker, al igual que saber hacer un puente en un coche no te convierte en un ingeniero de automoción"
-- Eric Raymond -- http://en.wikipedia.org/wiki/Eric_S._Raymond
sworksht

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda con script iptables
« Respuesta #4 en: 3 Mayo 2011, 23:51 pm »

Hay un par de cosas que no tienen mucha lógica en tu enunciado:
1 .- Si solamente utilizas el Firewall, no necesitamos acceso a localhost
2.-  No necesitamos utilizar NAT, pues el router externo se encargará de hacer la conversion de IP




Usando la politica ACCEPT,básicamente quedaría:

# Permitir  SSH a Debian desde eth0

iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -j ACCEPT

# Permitir Escritorio remoto y FTP

iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
iptables -A FORWARD -p tcp --dport 20 -j ACCEPT
iptables -A FORWARD -p tcp --dport 21 -j ACCEPT

iptables -A FORWARD -p tcp --sport 3389 -j ACCEPT
iptables -A FORWARD -p tcp --sport 20 -j ACCEPT
iptables -A FORWARD -p tcp --sport 21 -j ACCEPT


# El resto DROP
iptables -A INPUT -j DROP
iptables -A OUTPUT -j DROP
iptables -A FORWARD -j DROP

Gracias por contestar y me vas a perdonar pero creo que ando un poco "perdido"

En el router, en el apartado Virtual host, he creado un NAT para que todo lo que entra en el rango de puertos 1-66355 los direccione a la ip del firewall, por eso desde ahí establezco esas reglas para que redireccione el tráfico.
Tal vez el fallo está en la configuración del router entonces....
Podríais aclararme este punto ?

Antes andaba perdido, pero con tu respuesta ya si que no me aclaro... Gracias de nuevo.

En línea

SokarTefnut

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda con script iptables
« Respuesta #5 en: 4 Mayo 2011, 08:01 am »

Explica un poco la topología de la red, ¿ Están todos los equipos conectados a mismo switch ó está el router fisicamente conectado solo a la eth0 y el resto de equipos a la eth1 via otro switch ?



En línea

"Saber romper medidas de seguridad no hace que seas hacker, al igual que saber hacer un puente en un coche no te convierte en un ingeniero de automoción"
-- Eric Raymond -- http://en.wikipedia.org/wiki/Eric_S._Raymond
sworksht

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda con script iptables
« Respuesta #6 en: 4 Mayo 2011, 08:50 am »

Explica un poco la topología de la red, ¿ Están todos los equipos conectados a mismo switch ó está el router fisicamente conectado solo a la eth0 y el resto de equipos a la eth1 via otro switch ?


La última opción es la correcta. Toda la red local conectada al switch, y entre medias del router y el switch, está el firewall con 2 tarjetas de red. La eth0 al router y la eth1 al switch. De ahí las reglas de redireccionamiento.

Gracias de nuevo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[shell script] ayuda con script, :( « 1 2 »
Scripting
dark_fidodido 14 11,380 Último mensaje 16 Septiembre 2009, 10:28 am
por dark_fidodido
ayuda sobre iptables
Seguridad
tecasoft 0 2,783 Último mensaje 4 Mayo 2010, 00:15 am
por tecasoft
Ayuda Iptables
Seguridad
cutanea 0 2,431 Último mensaje 21 Julio 2010, 22:41 pm
por cutanea
Como bucle for en script iptables?
Seguridad
sputnik99 0 2,666 Último mensaje 13 Septiembre 2010, 00:33 am
por sputnik99
Ayuda configuración IPTABLES
Seguridad
SCU 2 2,403 Último mensaje 3 Junio 2014, 12:07 pm
por SCU
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines