LinuxParty

iptables es la herramienta que permite configurar los filtros que se implementan en el kernel de Linux como módulos de netfilter. Para organizarse existen 3 tablas principales y una adicional donde introducir las reglas.

Las tres tablas principales son:

  • filter: Se trata de la tabla por defecto para el filtrado de paquetes. Sus hooks (chains desde el punto de vista de iptables) son:
    • INPUT
    • FORWARD
    • OUTPUT
  • nat: Define como se modifican y redirigen (un tipo de packet mangling) los paquetes cuando se crea una nueva conexión. Los hooks son:
    • OUTPUT
    • PREROUTING
    • POSTROUTING
  • mangle: Define como se modifica un paquete en cualquiera de los hooks (es la tabla de mayor prioridad):
    • INPUT
    • FORWARD
    • OUTPUT
    • PREROUTING
    • POSTROUTING

La tabla adicional se procesa con mayor prioridad que las anteriores:

  • raw: Se procesa con mayor prioridad y antes que el modulo conntrack intervenga, por lo que se suele usar para filtrar paquetes sin estado e introducir excepciones al tracking de conexiones mediante NOTRACK. Los puntos en el proceso (hooks) són:
    • PREROUTING
    • OUTPUT

El significado de cada hook es el siguiente:

  • INPUT: Cuando un paquete entra a un proceso local
  • FORWARD: Cuando un paquete atraviesa el sistema (redirige)
  • OUTPUT: Cuando un paquete sale de un proceso local
  • PREROUTING: Cuando el paquete entra por la interfaz de red: Significa que se aplica este hook antes de decidir si el paquete es para un proceso local o para reenviarse (forwarding)
  • POSTROUTING: Cuando el paquete sale por la interfaz de red

Próximamente veremos como recorre un paquete estas tablas i hooks.

No estás registrado para postear comentarios