¿Qué es Iptables?

Iptables es un software de firewall utilizado en distribuciones de software de Linux que funciona filtrando paquetes a través de un sistema de tablas que contiene una cadena de reglas para el filtrado de paquetes. Las cadenas y los conjuntos de reglas contenidos en el firewall determinan si un paquete está permitido y, de ser así, cómo se maneja. Las tablas en sí se guardan en la memoria y el software iptables proporciona la configuración de las cadenas dentro de las tablas.

Cada paquete de datos enviado a través de una red tiene información de identificación que lee el sistema receptor. El software Iptables toma esta información y determina qué hacer con ella moviéndola a través de una serie de reglas encadenadas. Las reglas funcionan para clasificar el paquete en función de su información de identificación, como una dirección de protocolo de Internet (IP). Una vez identificado, el paquete se mueve de una cadena a la siguiente, según el conjunto de reglas configurado. Las cadenas determinan cómo el sistema distribuye el paquete.

Las reglas son criterios sobre cómo se mueve un paquete dentro de las cadenas de decisión de iptables. El paquete pasará de una regla a la siguiente, siempre que cumpla con los requisitos de cada cadena. Cada paquete será aceptado, reenviado, descartado, puesto en cola, reiniciado o devuelto.

La aceptación mueve el paquete a la siguiente cadena y, al soltarlo, se elimina el paquete por completo. Si el paquete está en cola, se mueve y se direcciona en un manejador de cola separado dentro del espacio de usuario. Cuando se devuelve un paquete, vuelve a la última cadena aceptada.

Iptables es una aplicación de espacio de usuario, lo que significa que opera dentro de un espacio segregado dentro de las características del kernel de Linux. Los criterios utilizados para identificar y distribuir paquetes por el firewall son completamente configurables y personalizables mediante un conjunto de opciones de comando. Esto incluye configurar la asignación para sesiones establecidas, bloquear tipos de tráfico y acceso y permitir solo tráfico específico en ciertos puertos. El software también se puede configurar para registrar todo el tráfico entrante o para registrar solo tipos específicos de tráfico.

El software Iptables es mantenido por el proyecto Nefilter y comenzó en 1998. Más allá de ser utilizado como software de manipulación de paquetes y cortafuegos, Iptables también se puede utilizar para enmascaramiento de IP, implementación de proxy transparente y análisis de registros. Esto permite que el firewall detecte y evite actividades potencialmente maliciosas, protegiendo aún más el sistema. El software también está configurado para la configuración con extensiones de terceros, ya que contiene varias capas de interfaces de programación de aplicaciones. Normalmente, Iptables se instala de forma predeterminada en la mayoría de las distribuciones de los sistemas operativos Linux.