Sei sulla pagina 1di 20

Conferencias Abiertas de GNU/Linux MTLUG La Matanza GNU/Linux Users Group

Firewalls con IPTABLES (y sus amigos)

Daniel E. Coletti CaFeLUG / LUGAr

Agenda
Terminologa Introduccin Qu son los Firewalls Conceptos Tablas, Cadenas y Reglas Comando de iptables Algunos ejemplos Mdulos o Extensiones de iptables Otras Herramientas (los amigos)
Filtrando paquetes con Iptables

Terminologa
Paquete: estructura de datos con informacin que viaja a travs de una red

Filtrando paquetes con Iptables

Introduccin
El filtrado de paquetes es una herramienta para monitorear y controlar todas las conexiones que pasan a traves de una interfase de red. El filtrado de paquetes se utiliza para determinar (en base al encabezado del mismo, en la mayora de los casos) qu hacer con un paquete de red.

Filtrando paquetes con Iptables

Esquema simple de Firewall

Filtrando paquetes con Iptables

Qu son los Firewalls?


Es un concepto ambiguo Los que venden productos de firewalls le agregan ms y ms funcionalidad todos los das Para mi, un firewall es un filtrador de paquetes, con deteccin de intrusos (IDS) y gran posibilidad de ruteo paquetes.

Filtrando paquetes con Iptables

Conceptos
Reglas: Las reglas son rdenes escritas que intentan ser lo ms detallistas posibles. Estas son las que determinan qu hacer con un paquete en base a su encabezado (de dnde viene, a dnde va, etc., .etc) Cadenas: Las cadenas contiene reglas Tablas: Las tablas contienen cadenas
Filtrando paquetes con Iptables

Tablas y Cadenas
Tablas: Existen 3 (tres) filter (se encarga del filtrado) nat (se encarga de cambiar el encabezado del paquete) Mangle (ac se pueden cambiar otros campos de los paquetes) Cadenas: Cada tabla contiene cadenas propias y es posible crear cadenas personalizadas
Filtrando paquetes con Iptables

Orden de verificacin
Las reglas se van verificando una a una de arriba hacia abajo A diferencia de ipchains, en iptables no todos los paquetes atraviesan input Las tablas no son verificadas en orden El orden es determinado en base al origen y destino de cada paquete en particular
Filtrando paquetes con Iptables

Esquema A

Filtrando paquetes con Iptables

Orden de esquema A
1. mangle / (cadena) OUTPUT 2. nat / (cadena) OUTPUT 3. filter / (cadena) OUTPUT 4. Nat / (cadena) POSTROUTING

Filtrando paquetes con Iptables

Esquema B

Filtrando paquetes con Iptables

Orden de esquema B
1. mangle / (cadena) PREROUTING 2. nat / (cadena) PREROUTING 3. filter / (cadena) FORWARD 4. Nat / (cadena) POSTROUTING

Filtrando paquetes con Iptables

Comandos de iptables
iptables (comando) iptables-save iptables-restore Scripts de RC

Filtrando paquetes con Iptables

Algunos ejemplos
iptables -P INPUT DROP iptables -P FORWARD DROP iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE iptables -N OK iptables -I OK -i eth0 -j ACCEPT iptables -A OK -m state -state RELATED,ESTABLISHED -j ACCEPT iptables -I INPUT -j OK iptables -I FORWARD -j OK Filtrando paquetes coniptables -I INPUT -i lo -j Iptables

Mdulos o extensiones
Quota patch (este mdulo permite calcular cuanto bytes se enviaron y en base a eso tomar una accin) String patch (este mdulo permite revisar cada paquete en bsqueda de una cadena de caracteres) Time patch (permite realizar acciones en base a la hora de llegada del/os paquete/s)
Filtrando paquetes con Iptables

Los amigos ...


SNORT Un NIDS (Network Intrusion Detection System Sistema de Deteccin de Intrusos para Redes) Permite detectar ataques en base a patrones en los paquetes de red Si bien no toma acciones por si solo, se pueden utilizar otros programas para ejecutar acciones en base a las alertas
Filtrando paquetes con Iptables

Los amigos ... [cont]


Tripwire Un HIDS (Host Intrusion Detection System) Arma una base de datos con todas las caracteristicas de ciertos archivos, para luego compararlas y determinar si fueron modificados.

Filtrando paquetes con Iptables

Los amigos ... [cont]


Parches en el kernel (LIDS Linux Intrusion Detection System, SID Shell Intrusion Detection) A travs de parches en el kernel se puede hacer un sistema muy seguro ya que ni con el usuario root se podran modificar partes del sistema.

Filtrando paquetes con Iptables

Referencias
Pgina principal de iptableshttp://www.netfilter.org o http://www.iptables.org Snort: http://www.snort.org LDP http://www.linuxdoc.org o (mirror argentino) http://www.linuxdoc.org.ar

Filtrando paquetes con Iptables