Saltar al contenido

Fundamentos del cortafuegos del estado: Un mejor, más fácil y más seguro cortafuegos

Uno de los tipos de cortafuegos más básicos utilizados en las redes modernas es el cortafuegos de inspección de estado. Este tipo de cortafuegos ha sido durante mucho tiempo un método estándar utilizado por los cortafuegos para ofrecer un método de inspección más profundo que los anteriores métodos de cortafuegos de inspección de paquetes (piense en los ACL$0027s). Este artículo analiza qué es un cortafuegos con estado y cómo se utiliza para asegurar una red, a la vez que ofrece una mejor usabilidad de la red y una configuración más fácil del cortafuegos de la red.

Métodos de cortafuegos anteriores

Para tener una mejor idea de cómo funciona un cortafuegos con estado, es mejor echar un vistazo rápido a cómo funcionaban los métodos de cortafuegos anteriores. Para muchas personas este método de cortafuegos anterior es familiar porque se puede implementar con las listas básicas de control de acceso (ACL) comunes. Cuando se utiliza este método, se deben perforar agujeros individuales a través del cortafuegos en cada dirección para permitir el paso del tráfico. Ahora imagina que hay varios servicios que se utilizan desde el interior de un cortafuegos y encima de eso múltiples hosts dentro del cortafuegos; la configuración puede volverse rápidamente muy complicada y muy larga.

Fundamentos del cortafuegos del estado: Un mejor, más fácil y más seguro cortafuegos
Fundamentos del cortafuegos del estado: Un mejor, más fácil y más seguro cortafuegos

Cómo funciona el cortafuegos Stateful

Con un cortafuegos con estado, estas largas líneas de configuración pueden ser reemplazadas por un cortafuegos que es capaz de mantener el estado de cada conexión que pasa por el cortafuegos. Operacionalmente, el tráfico que necesita pasar a través de un cortafuegos se compara primero con una lista de reglas del cortafuegos (¿se permite el paquete en primer lugar?). Si el tipo de paquete se permite a través del cortafuegos, entonces comienza la parte de estado del proceso.

El ejemplo más sencillo de un cortafuegos con estado utiliza el tráfico que utiliza el Protocolo de Control de Transporte (TCP). Esto se debe a que el TCP es stateful para empezar. TCP mantiene un seguimiento de sus conexiones mediante el uso de la dirección de origen y destino, el número de puerto y las banderas IP. Una conexión comenzará con un apretón de manos de tres vías (SYN, SYN-ACK, ACK) y normalmente terminará con un intercambio de dos vías (FIN, ACK). Para un firewall con estado esto hace que llevar la cuenta del estado de una conexión sea bastante simple. La solicitud inicial de una conexión viene de un host interno (SYN). Esto iniciará una entrada en la tabla de estado del cortafuegos. Si el host de destino devuelve un paquete para establecer la conexión (SYN, ACK) entonces la tabla de estado lo refleja. Finalmente, el host inicial enviará el paquete final en la configuración de la conexión (ACK). Esto finalizará el estado a establecido . Una vez que la conexión se mantiene tal como se ha establecido, la comunicación puede ocurrir libremente entre los hosts. Con TCP, esta entrada de estado en la tabla se mantiene mientras la conexión permanezca establecida (sin intercambio FIN, ACK) o hasta que se produzca un timeout.

La parte más difícil del funcionamiento de un cortafuegos con estado es la forma en que se ocupa del Protocolo de Datagrama de Usuario (UDP) y del Protocolo de Mensajes de Control de Internet (ICMP). Esto se debe a que ninguno de estos protocolos se basa en la conexión como el TCP. Con UDP, el cortafuegos debe rastrear el estado usando sólo la dirección de origen y destino y los números de puerto de origen y destino. Por supuesto, esto no es tan seguro como el rastreo de estado que es posible con TCP, pero ofrece un mecanismo que es más fácil de usar y mantener que con las ACL. El UDP y el ICMP también traen algunas complicaciones adicionales de rastreo de estado. Esto se debe a que UDP utiliza ICMP para la asistencia de la conexión (manejo de errores) y ICMP es inherentemente un camino con muchas de sus operaciones. La ICMP en sí misma sólo puede ser rastreada verdaderamente dentro de una tabla de estado para un par de operaciones. Estas operaciones tienen paquetes de respuesta incorporados, por ejemplo, eco y eco respuesta. Para sus otras operaciones unidireccionales el cortafuegos debe mantener un estado de relacionado . Este estado se utiliza cuando se devuelve un paquete ICMP en respuesta a una entrada de la tabla de estados UDP existente.

Resumen

El funcionamiento de un cortafuegos con estado puede ser muy complejo, pero esta complejidad interna es lo que también puede hacer que la implementación de un cortafuegos con estado sea inherentemente más fácil. Dado que el cortafuegos mantiene una tabla de estados a través de su funcionamiento, las entradas de configuración individuales no son necesarias como lo serían con una configuración de ACL. En el caso de los cortafuegos principales, lo único que se necesita configurar es una interfaz interna y externa; esto es utilizado comúnmente por la mayoría de las personas sin siquiera notarlo. Esto se debe a que la mayoría de los enrutadores de Internet domésticos implementan un cortafuegos con estado utilizando el puerto LAN interno como interfaz del cortafuegos interno y el puerto WAN como interfaz del cortafuegos externo. Esto permite que el tráfico fluya libremente desde la interfaz interna a Internet sin permitir que el tráfico iniciado externamente fluya hacia la red interna. Con suerte, la información que se discute aquí da una mejor comprensión de cómo funciona un cortafuegos con estado y cómo puede ser usado para asegurar las redes internas.

Si buscas mejorar tus habilidades en esta área, mira el entrenamiento de TrainSignal en Cisco CCNA Security.