Foros del Web » Administración de Sistemas » Seguridad y redes »

IPTables :: Filtrado para un servidor web

Estas en el tema de IPTables :: Filtrado para un servidor web en el foro de Seguridad y redes en Foros del Web. Hola. Me estoy introduciendo en el mundo de las IPTABLES pero no logro entender un poco el funcionamiento. A grandes rasgos, tengo un servidor web ...
  #1 (permalink)  
Antiguo 20/12/2010, 05:52
Avatar de Smolky  
Fecha de Ingreso: mayo-2006
Ubicación: Cartagena
Mensajes: 177
Antigüedad: 17 años, 11 meses
Puntos: 14
IPTables :: Filtrado para un servidor web

Hola. Me estoy introduciendo en el mundo de las IPTABLES pero no logro entender un poco el funcionamiento.

A grandes rasgos, tengo un servidor web dentro de una máquina virtual donde lo que he hecho es:

Órdenes por defecto
  • Para la cadena INPUT deniego todo
  • Para la cadena FORWARD deniego todo
  • Para la cadena OUTPUT lo permitod todo

Excepciones
  • Todo lo que entre por el puerto 80 lo acepto

Activando esto, no consigo acceder a mi servidor por un navegador. En cambio, cuando cambio la política de INPUT por la de permitir el tráfico sí que funciona. He mirado usando el tráfico de TCPDUMP pero no he conseguido saber que es lo que debo de permitir para que esto funcione.

¿Alguna idea? Muchas gracias


P. D: Por cierto, estoy utilizando Ubuntu Server (modo consola)
__________________
No hay cuerda desafinada sino músico progresivo

Última edición por Smolky; 20/12/2010 a las 06:20
  #2 (permalink)  
Antiguo 20/12/2010, 12:35
Avatar de danielSu  
Fecha de Ingreso: diciembre-2008
Ubicación: Jujuy
Mensajes: 68
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: IPTables :: Filtrado para un servidor web

Sería bueno que coloques la regla que ingresaste para aceptar las conexiones TCP por el puerto 80 asi podemos verla y corregirla
  #3 (permalink)  
Antiguo 20/12/2010, 15:23
Avatar de ressett_182  
Fecha de Ingreso: junio-2010
Ubicación: Medellin
Mensajes: 186
Antigüedad: 13 años, 10 meses
Puntos: 0
De acuerdo Respuesta: IPTables :: Filtrado para un servidor web

Cita:
Iniciado por Smolky Ver Mensaje
Hola. Me estoy introduciendo en el mundo de las IPTABLES pero no logro entender un poco el funcionamiento.
Eso es Facil de solucionar .. Cambiate a PacketFilter .. ! XD

Enlace Interesante.. !

Saludos .. !
__________________
ressett_182
Administrador de Sistemas
http://shallownet.wordpress.com/
  #4 (permalink)  
Antiguo 21/12/2010, 06:39
Avatar de Smolky  
Fecha de Ingreso: mayo-2006
Ubicación: Cartagena
Mensajes: 177
Antigüedad: 17 años, 11 meses
Puntos: 14
Respuesta: IPTables :: Filtrado para un servidor web

Hola. Ahora mismo no estoy en el servidor, pero os puedo decir las órdenes casi de memoria...


Código:
#!/bin/bash
# Vaciamos las reglas. Incluyendo reglas de usuario, estadísticas
# y de traducción de direcciones
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

# Cortafuegos
# Políticas por defecto. Aceptamos sólo el tráfico
# de salida.
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -P INPUT DROP


# Permito solcitudes para el servidor web
iptables -A INPUT -p 80 -j ACCEPT
__________________
No hay cuerda desafinada sino músico progresivo

Última edición por Smolky; 21/12/2010 a las 15:22 Razón: He añadido el verdadero fichero que tengo configurado
  #5 (permalink)  
Antiguo 21/12/2010, 17:04
Avatar de danielSu  
Fecha de Ingreso: diciembre-2008
Ubicación: Jujuy
Mensajes: 68
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: IPTables :: Filtrado para un servidor web

intenta con esta regla

iptables -t filter -I INPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
  #6 (permalink)  
Antiguo 23/12/2010, 06:35
Avatar de Smolky  
Fecha de Ingreso: mayo-2006
Ubicación: Cartagena
Mensajes: 177
Antigüedad: 17 años, 11 meses
Puntos: 14
Respuesta: IPTables :: Filtrado para un servidor web

Funciona perfectamente. Muchísimas gracias.
__________________
No hay cuerda desafinada sino músico progresivo
  #7 (permalink)  
Antiguo 25/12/2010, 18:22
Avatar de Smolky  
Fecha de Ingreso: mayo-2006
Ubicación: Cartagena
Mensajes: 177
Antigüedad: 17 años, 11 meses
Puntos: 14
Respuesta: IPTables :: Filtrado para un servidor web

Hola. Perdonad que de el follón de nuevo pero hay una cosa que os gustaría preguntar relacionado con el mismo tema

Ahora mismo, el script de filtrado lo tengo como sigue:
Código:
#!/bin/bash
# Vaciamos las reglas. Incluyendo reglas de usuario, estadísticas
# y de traducción de direcciones
iptables -F
iptables -X
iptables -Z
iptables -t nat -F


# Cortafuegos
# Políticas por defecto. Aceptamos sólo el tráfico
# de salida.
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -P INPUT DROP


# Permiso solcitudes para el servidor
iptables -t filter -I INPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -t filter -I INPUT -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 20:21 -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT


# Seguridad
# No respondo a solicitud de ping fuera de mi red
iptables -A INPUT -p ICMP --icmp-type echo-request \! -s 192.168.2.0/24 -j DROP


# No IP Spoofing. Deniego paquetes internos con direcciones que 
# no pertenezcan a mi red, ni paquetes que quieran entrar
iptables -A INPUT -j DROP -i eth0 \! -s 192.168.1.0/24
Además, tengo otro script que permite desactivar el cortafuegos que hace lo siguiente:
Código:
#!/bin/bash
# Vaciamos las reglas. Incluyendo reglas de usuario, estadísticas
# y de traducción de direcciones
iptables -F
iptables -X
iptables -Z
iptables -t nat -F


# Cortafuegos
# Aceptamos sólo el tráfico
# de salida.
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P INPUT ACCEPT

El caso es que he notado que abrir una conexión nueva, ésta se demora bastante cuando tengo activado el cortafuegos (alrededor de 10 segundos) y no lo hace cuando lo tengo desactivado por el otro script.

¿Sabéis eso a qué se debe?



Gracias de nuevo
__________________
No hay cuerda desafinada sino músico progresivo
  #8 (permalink)  
Antiguo 24/01/2011, 03:15
Avatar de Smolky  
Fecha de Ingreso: mayo-2006
Ubicación: Cartagena
Mensajes: 177
Antigüedad: 17 años, 11 meses
Puntos: 14
Respuesta: IPTables :: Filtrado para un servidor web

Bueno, investigando un poco he descubierto que si listo las cadenas con la opción -"n" tarda mucho menos ya que no hace la resolución inversa de nombres (según MAN)

Pero no termino de entender muy bien el porqué ocurre esto o si tengo mal configurada alguna opción de resolución de nombres, puesto que en las cadenas que he puesto nunca he usado un dominio.

Además, a la hora de abrir una conexión nueva, como por ejemplo al FTP noto un gran retardo inicial, que después, en las sucesivas operaciones, no hace hasta que vuelve a expirar el tiempo.
__________________
No hay cuerda desafinada sino músico progresivo

Etiquetas: iptables, servidores, filtros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:59.