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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  GNU/Linux (Moderador: MinusFour)
| | |-+  Reglas de iptables no se aplican
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Reglas de iptables no se aplican  (Leído 7,632 veces)
ccrunch


Desconectado Desconectado

Mensajes: 1.050



Ver Perfil WWW
Reglas de iptables no se aplican
« en: 24 Mayo 2014, 23:43 pm »

Necesito ayuda con una cosa. Estoy en Debian y estoy aplicando unas reglas iptables para hacer más seguro el sistema pero al hacer iptables -L está todo sin reglas y en ACCEPT.

El script es este:

Código
  1. #!/bin/sh
  2.  
  3. IPTABLES=/sbin/iptables
  4.  
  5. if [ ! -x $IPTABLES ]; then
  6.  exit 0
  7. fi
  8.  
  9. if [ "$IFACE" = eth0 ]; then
  10.  
  11.  # 1) Definir la norma de cada cadena básica
  12.  $IPTABLES -P INPUT DROP
  13.  $IPTABLES -P FORWARD DROP
  14.  $IPTABLES -P OUTPUT ACCEPT
  15.  
  16.  # 2) Aceptar paquetes en estado establecido y relacionado
  17.  $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  18.  
  19.  # 4) Optativo: Registrar paquetes que van a ser desechados
  20.  #$IPTABLES -A INPUT -j LOG --log-level debug --log-prefix "Drop INPUT: "
  21.  
  22. fi

Está cogido de la página de debian chile.
He dado los permisos necesarios, primero probé haciendo un ifdown y ifup, luego reiniciar la red, y luego reinicié el sistema y nada, me manda a comer *****. Alguien sabe por qué no funciona?

He probado a poner alguna regla a mano como iptables -P FORWARD DROP y tampoco se aplica, o algo estoy yo haciendo mal.

El script está en /etc/network/if-up.d/firewall

Salu2


En línea

xv0


Desconectado Desconectado

Mensajes: 1.027



Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #1 en: 25 Mayo 2014, 00:36 am »

Este es un fragmento de uno de mis antiguos scripts.

Código:
#!/bin/sh
IPTABLES=/sbin/iptables
MODPROBE=/sbin/modprobe
INT_NET=192.168.1.1/24
INTIF=ath0

### Normas actuales y polittcas de las cadenas
echo "[+] Estableciendo politi­ca a las cadenas y cargando modulos..."
iptables -F
iptables -F -t nat
iptables -X
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP                                                   
### Cargar modulos de localizacionn de conexionn
modprobe ip_conntrack
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

##### Cadena INPUT [Entrada] #####
echo "[+] Estableciendo reglas cadena de entrada INPUT..."
### Estado de las reglas
iptables -A INPUT -m state --state INVALID -j LOG --log-prefix "DROP INV " --log-ip-options --log-tcp-options
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
### Reglas anti-spoofing
iptables -A INPUT -i $INTIF -s $INT_NET -j LOG --log-prefix "SPOOFED PKT "
iptables -A INPUT -i $INTIF -s $INT_NET -j DROP
### Reglas aceptadas
iptables -A INPUT -i $INTIF -p tcp -s $INT_NET --dport 23 --syn -m state --state NEW -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
### Registro de entrada por defecto de la regla
iptables -A INPUT -j NFLOG --nflog-prefix "DROP "

No deja de ser otro sricpt mas, simplemente dile que se ejecute en el strartup del sistema y ya esta, eso es lo que hacia yo en mi Gentoo. Pero si no quieres hacerlo de esa forma, si buscaras un poco encontrarias cosas como esta.

Código:
http://serverfault.com/questions/511099/debian-ignores-etc-network-if-pre-up-d-iptables

Un saludo.


En línea

ccrunch


Desconectado Desconectado

Mensajes: 1.050



Ver Perfil WWW
Re: Reglas de iptables no se aplican
« Respuesta #2 en: 25 Mayo 2014, 21:29 pm »

Y una duda más, si creo una máquina virtual para probar que el FW funciona, como irá por adaptador puente eth0 el firewall filtrará también ese tráfico? Es decir, primero saldrá por la eth0 y volverá a entrar para hacer ping y otras cosas al sistema real, habrá algún problema?
En línea

xv0


Desconectado Desconectado

Mensajes: 1.027



Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #3 en: 25 Mayo 2014, 23:31 pm »

Intentare responder tus pregunta, por que no veas.

No te hace falta crear una maquina virtual para probar un cortafuegos, pero si la quieres crear adelante.

Iptables filtrara las conexiones o protocolos a la interfaz que tu ordenaste, para algo esta la opcion -i, esa opcion significa que esa regla solo se aplica a eth0 en tu caso.

Luego hay reglas como esta.

Código:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Que esta es "global" vamos que se aplica a todas las interfaces, ya que no especificaste alguna.

Y despues de eso intentare responder esta pregunta.

Es decir, primero saldrá por la eth0 y volverá a entrar para hacer ping y otras cosas al sistema real, habrá algún problema?

Si tu politica OUTPUT le permite a la interfaz realizar la conexion que le pediste no habra algun problema.

Código
  1. iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Si tienes eso establecido y una politica en OUTPUT DROP, y quieres hacer una peticion ftp o http, no funcionara ya que no estas dejando la salida a los paquetes NEW. Tendrias que hacer algo asi.

Código:
iptables -A OUTPUT -p tcp --dport 21 --syn -m state --state NEW -j ACCEPT

Entonces se dejara salir la conexion, pero claro luego tiene que entrar de nuevo, y de eso se encarga la politica INPUT, si esta no permite las conexiones entrantes a esa direccion tendras prolemas, pero para eso pusiste esta regla.

Código:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Significa que todos los paquetes con las banderas ESTABLISHED,RELATED seran aceptados, si yo realizo una peticion ftp este saldra con el NEW si el servidor remoto la acepta este me enviara otra conexion con la bandera ESTABLISHED y entonces si que podras establecer la conexion.

Pero si alguien remotamente intenta hacer una peticion ftp, este no podra ya que tu politica INPUT no aceptas los paquetes con banderas NEW. Dado que tu politica OUTPUT esta en ACCEPT no tendrias que tener problemas.

Yo si fuera tu entenderia las reglas antes de aplicar nada, y mucho menos hacer un copiar y pegar de un foro o pagina de Debian.

Un saludo.

P.D: No se si eso responde tus preguntas, si no vuelve a formularlas mejor.
« Última modificación: 25 Mayo 2014, 23:45 pm por cpu2 » En línea

Jenag


Desconectado Desconectado

Mensajes: 968


Conoce a tu enemigo como a tí mismo..


Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #4 en: 25 Mayo 2014, 23:50 pm »

Ccrunch hola , también puedes hecharle un vistazo a :
https://foro.elhacker.net/buscador-t403983.0.html
https://foro.elhacker.net/buscador-t391339.0.html
https://foro.elhacker.net/buscador-t379532.0.html
https://foro.elhacker.net/buscador-t366614.0.html
Besitos mi robotito favorito seas flexo o bender o.. :-*
En línea

Para comentarme algo : Evamr1991@openmailbox.org : Válido para Bots y Robots..
xv0


Desconectado Desconectado

Mensajes: 1.027



Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #5 en: 26 Mayo 2014, 00:12 am »

Te recomiendo que ignores esos links que te paso ese usuario, sobre todo el ultimo, si no quieres quedarte mas confuso y perdido, es un sript a base de reglas encontradas por internet me apuesto algo, y es caotico como el solo.

Un saludo.

En línea

ccrunch


Desconectado Desconectado

Mensajes: 1.050



Ver Perfil WWW
Re: Reglas de iptables no se aplican
« Respuesta #6 en: 26 Mayo 2014, 16:47 pm »

Ahora he comprobado por casualidad si se estaban aplicando y sí se han aplicado, al reiniciar y sin hacer nada. No se por qué pero ahora ya va.

Y como recomendación, qué filtros me recomendáis dejar para una estación de trabajo?

Yo he mirado esto: http://man-es.debianchile.org/cortafuego.html para estación de trabajo y no entiendo la 2ª y 3ª opción.

Lo que quiero es filtrar por todas las interfaces (solo tengo eth0 y wlan0) todo el tráfico que pasa, eliminar absolutamente todos los paquetes que yo no haya solicitado, es decir, quiero que funcione el tráfico web con un servidor con el cual yo he pedido un establecimiento de conexión, pero que nadie pueda hacerme ping, etc.

Me suena que eso lo hace IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT pero no estoy seguro.

Ahora mismo iptables luce así:
Código:
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Salu2
« Última modificación: 26 Mayo 2014, 17:14 pm por ccrunch » En línea

xv0


Desconectado Desconectado

Mensajes: 1.027



Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #7 en: 26 Mayo 2014, 20:03 pm »

Y como recomendación, qué filtros me recomendáis dejar para una estación de trabajo?
Yo he mirado esto: http://man-es.debianchile.org/cortafuego.html para estación de trabajo y no entiendo la 2ª y 3ª opción.

Te recomiendo un cortafuegos con politica DROP, y a partir de hay ir abriendo los protocolos que quieras, piensa que un cortafuegos en DROP es menos propenso a los "fallos" o problemas de seguridad que uno en ACCEPT.

Venga va, que la segunda regla ya te la explique antes, y la tercera queda bastante claro, todas las conexiones entrantes "conexiones nuevas" son aceptadas en todas las interfaces menos en eth0. Ignora todas esas reglas, cada maquina y red es un mundo diferente a lo mejor esas reglas no se adaptan a ti, no te hace falta nada de eso.

Lo que quiero es filtrar por todas las interfaces (solo tengo eth0 y wlan0) todo el tráfico que pasa, eliminar absolutamente todos los paquetes que yo no haya solicitado, es decir, quiero que funcione el tráfico web con un servidor con el cual yo he pedido un establecimiento de conexión, pero que nadie pueda hacerme ping, etc.

Pues como te dije antes, politica DROP y deja operativo lo que te interese, si dejas la politica en DROP esta automaticamente bloqueara los icmp, a o ser que le dijas que los acepte.

Simplemente tienes que preocuparte de abrir, es lo mejor. Si lees el fragmento de srcipt que te deje en el primer comentario lo veras.

Un saludo.

P.D: Te recomiendo que dejes los tutos, si no quieres acabar con un FW como el user de arriba.
En línea

ccrunch


Desconectado Desconectado

Mensajes: 1.050



Ver Perfil WWW
Re: Reglas de iptables no se aplican
« Respuesta #8 en: 26 Mayo 2014, 20:20 pm »

Los tutos son para guiarme, algún día tendré que entender el funcionamiento del IPTABLES aunque me lo explicaron por encima.

El script ahora está así:

Código:
#Definir la norma de cada cadena básica
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#Aceptar paquetes en estado establecido y relacionado
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Y la salida de iptables -L es:
Código:
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Qué te parece esta configuración?

Salu2
En línea

xv0


Desconectado Desconectado

Mensajes: 1.027



Ver Perfil
Re: Reglas de iptables no se aplican
« Respuesta #9 en: 26 Mayo 2014, 20:53 pm »

Pues mal, que quieres que te diga, ninguna regla para logear paquetes descartados, OUTPUT en ACCEPT y FORWARD sin ninguna regla.

Porque no intentas establecer la conexion con el Server? Con la politica OUTPUT en DROP.

Un saludo.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines