Configuracion de iptables en ubuntu 10.10
netfilter/iptables
SEGURIDAD EN SISTEMAS DE INFORMACI´ON
Libre Elecci´on
http://ccia.ei.uvigo.es/docencia/SSI
13 de mayo de 2008
– FJRP, FMBR 2008 ccia SSI –
1. Introducci´on a netfilter/iptables
netfilter (http://www.netfilter.org) es un componente del
n´ucleo Linux (desde la versi´on 2.4) encargado de la manipulaci´on de
paquetes de red, que permite:
• filtradode paquetes
• traducci´on de direcciones (NAT)
• modificaci´on de paquetes
iptables es una herramienta/aplicaci´on (forma parte del proyecto net-
filter) que hace uso de la infraestructura que ofrece netfilter
para construir y configurar firewalls
• permite definir pol´ıticas de filtrado, de NAT y realizar logs
• remplaza a herramientas anteriores: ifwadmin, ipchains
• puede usar lascapacidades de seguimiento de conexiones net-
filter para definir firewalls con estado
Las posibles tareas a realizar sobre los paquetes (filtrado, NAT,
modificaci´on) se controlan mediante distintos conjuntos de reglas,
en funci´on de la situaci´on/momento en la que se encuentre un
paquete durante su procesamiento dentro de netfilter.
• Las listas de reglas y dem´as datos residen en el espaciode
memoria del kernel
• La herramienta de nivel de usuario iptables permite al administrador
configurar las listas de reglas que usa el kernel para decidir
qu´e hacer con los paquetes de red que maneja.
• En la pr´actica un ”firewall” iptables consistir´a en un script
de shell conteniendo los comandos iptables para configurar
convenientemente las listas de reglas.
◦ tipicamente ese scriptresidir´a en el directorio ’/etc/init.d’ ´o en
’/etc/rc.d’ para que sea ejecutado cada vez que arranca el sistema
• Otras utilidades (guardar/recuperar reglas en memoria): iptables-save,
iptable-restore
– FJRP, FMBR 2008 ccia SSI – 1
(a) Elementos
TABLAS. Se corresponden con los distintos tipos de procesamiento
que se pueden aplicar sobre los paquetes.
Tablas disponibles:
filter. Controladecisiones de filtrado de paquetes (aceptar/denegar)
Cadenas: input, output, forward
nat. Controla traducci´on de direcciones (NAT:network address translation)
Cadenas: prerouting, postrouting (opc. output)
mangle. Controla los procesos de modificaci´on del contenido y las
opciones de los paquetes.
Cadenas: input, output, forward, prerouting, postrouting
Las reglas de cada tabla seorganizan en cadenas, que se consultar´an
en momentos concretos del flujo de los paquetes..
CADENAS. Contienen las listas de reglas a aplicar sobre los paquetes
Cadenas predeterminadas: (asociadas a momentos concretos del flujo de los
paquetes)
INPUT reglas a aplicar sobre los paquetes destinados a la propia m´aquina, (justo
antes de pasarlos a las aplicaciones)
Usada para controlar las entradas alpropio equipo/cortafuegos
OUTPUT reglas a aplicar sobre los paquetes originados en la propia m´aquina,
(justo despu´es de recibirlas desde las aplicaciones)
Usada para controlar las salidas del propio equipo/cortafuegos
FORWARD reglas a aplicar sobre los paquetes que atraviesan la m´aquina con
destino a otras (paquetes en tr´ansito reenviados)
Usadas en Cortafuegos de borde (protecci´on redinterna)
PRE-ROUTING reglas a aplicar sobre paquetes justo antes de enviarlos a la red
Usada para DNAT (destination NAT) [redirecci´on de puertos]
POST-ROUTING reglas aplicar sobre paquetes (propios o ajenos) recibidos de
la red (antes de decidir a d´onde encaminarlos [local o reenv´ıo])
Usada para SNAT (source NAT) [enmascaramiento]
Se pueden crear cadenas definidas por el usuario (comando”iptables -N cadena”), a las que se acceder´a desde reglas incluidas
en alguna de las cadenas predeterminadas (≈ subrutinas)
– FJRP, FMBR 2008 ccia SSI – 2
(b) Flujo de paquetes a trav´es de netfilter
(c) Funcionamiento
Para cada paquete, en funci´on del procesamiento que vaya a sufrir,
se consulta la cadena que corresponda a su situci´on dentro de
netfilter.
Dentro de cada cadena las...
Regístrate para leer el documento completo.