Con un poco más de tiempo entre post de lo que me hubiese gustado, os traigo una nueva entrega en la serie de artículos dedicados a la gestión del tráfico en equipos de seguridad perimetral. En este episodio, nos centraremos en el flujo de paquetes dentro de los firewalls de Fortinet, específicamente en los FORTIGATE NGFW.
Un vistazo a la historia de Fortinet
Fundada en el año 2000 en Sunnyvale, California, Fortinet es el resultado de la visión de los hermanos Ken Xie (CEO) y Michael Xie (CTO), junto con su colega Yunling Liu. Todos con raíces chinas. Es interesante mencionar que Ken Xie previamente co-fundó y lideró el fabricante de firewalls Netscreen, que más tarde fue adquirido por Juniper Networks en 2004.
Desde sus inicios, Fortinet logró destacarse con su firewall FORTIGATE, un dispositivo que combinaba funciones de filtrado de redes, VPN, filtrado de contenido y detección de intrusiones. Su eficiencia, junto con un precio competitivo, le otorgó rápidamente una porción significativa del mercado, permitiendo un crecimiento sostenido a lo largo de los años.
En el mundo de las comunicaciones y la seguridad, Fortinet ha sorprendido por su vasta variedad de sistemas desarrollados. Es común escuchar bromas en el sector sobre la espera del «próximo forti-escoba» o «forti-phone». Sin embargo, a pesar de su impresionante capacidad de desarrollo, algunos de sus productos pueden no rendir óptimamente bajo cargas extremas, pero son altamente efectivos en entornos de tamaño medio o con menos dispositivos que proteger. Su coste competitivo y amplia gama de opciones los convierten en una presencia común en diversas instalaciones.
Una característica distintiva de Fortinet es la incorporación de chipsets dedicados en sus dispositivos hardware. Estos chipsets especializados aceleran considerablemente el procesamiento de paquetes, aliviando la carga del procesador principal. Si bien no todos los firewalls de Fortinet cuentan con los mismos chipsets, es un hecho que encontraremos esta tecnología en casi todas las versiones de sus equipos.
Dentro de los dispositivos de Fortinet, los FortiASICs actúan como corazón y cerebro, encargándose de diferentes funciones especializadas para potenciar su rendimiento y seguridad. Estos se subdividen de la siguiente manera:
- SoC FortiASIC: Son circuitos integrados específicos de aplicación que gestionan tareas clave:Inspección del tráfico SSL/TLS: Se encargan de revisar tráfico cifrado, como el de sitios web seguros.Detección de intrusiones: Rastrean y detectan potenciales amenazas en el tráfico.Procesamiento de reglas: Evalúan y aplican reglas de seguridad en tiempo real, garantizando respuestas rápidas y reduciendo la latencia.
- FortiASICs NP (Procesadores de Red): Especializados en la gestión del flujo de tráfico:Optimizan y aceleran el tráfico de red, asegurando un flujo fluido.Los modelos más actuales incluyen variantes como NP7, NP6, entre otros, mientras que en modelos anteriores encontramos NP1, NP2 y NP4.
- FortiASICs CP (Procesadores de Contenido): Centrados en el procesamiento intensivo de contenidos:Se encargan de inspecciones profundas y operaciones de seguridad que consumen muchos recursos.Según el modelo de FortiGate, se pueden encontrar versiones como CP9, CP9Lite, CP9XLite. Modelos anteriores incluyen versiones como CP4, CP5 y CP8.
Para profundizar en los detalles sobre el hardware y comprender sus funcionalidades según la versión del software que opera el firewall, os recomiendo visitar el siguiente enlace. Si bien la versión actual del software es la 7.4, aquí encontraréis documentación pertinente para la versión 7.2: Documentación FortiASIC Hardware Acceleration 7.2 NP7.
Packet Flow y Aceleración Hardware
Fortinet ofrece una vasta selección de equipos, y dado que cada modelo y gama tiene su particularidad en cómo maneja el tráfico, es difícil detallar el comportamiento de uno específico. Sin embargo, para empezar con este articulo, nos centraremos en explicar el proceso de manera generalizada, tomando como referencia la arquitectura estándar de un firewall Fortinet 1000D.
El Fortigate 1000D, por ejemplo, cuenta con dos NP6 dedicados al procesamiento de tráfico de red. Estos están distribuidos de tal manera que cada procesador maneja la mitad de los puertos, y por ende, la mitad de los flujos de tráfico, en caso de utilizar todos los enlaces físicos. Es esencial recordar este detalle al implementar un Fortinet, ya que aunque algunos modelos ofrecen la posibilidad de asignar NP6s específicos para gestionar flujos de ciertos puertos de red a través de comandos, esta funcionalidad a menudo pasa desapercibida. Ignorar esta capacidad puede ser contraproducente, ya que es crucial distribuir de manera equitativa la carga entre los procesadores para que el dispositivo opere de manera óptima.
Tras ser procesado por los NP6, el tráfico se dirige a un BUS interno. Aquí, en función de la configuración de seguridad establecida, los flujos son evaluados. Antes de transmitir o modificar cualquier paquete, estos deben ser examinados por la CPU principal del dispositivo. Posteriormente, aquel tráfico que requiere un procesamiento adicional se delega a los chipset CP, mientras que el resto regresa a los NP6 en modo Egress para su posterior despacho. Si el sistema cuenta con Fastpath activado o ya ha procesado un flujo que se determinó seguro, los NP6 pueden despachar el tráfico directamente. Estos procesadores mantienen a la CPU actualizada respecto al estado de la comunicación. Es crucial señalar que estos firewalls operan bajo una naturaleza Stateful. Es decir, es imprescindible que controlen rigurosamente las sesiones para ejecutar inspecciones pertinentes, garantizando que la comunicación TCP/IP entre el emisor y receptor transcurra sin contratiempos.
Disección del Fortinet 2500E: Un Equipo de Mayor Potencia
Al explorar un dispositivo más avanzado como el Fortinet 2500E, inmediatamente notamos que este modelo cuenta con 4 NP, cada uno encargado de gestionar distintos grupos de puertos. Esto evidencia una notable desagregación en su plano de control, que le otorga una mayor flexibilidad y especialización en el manejo del tráfico.
Por ejemplo, el NP6_1 se encarga de 32 puertos de 1Gb en cobre, lo que significa que está diseñado para manejar hasta 32Gb de tráfico. Por otro lado, tenemos los NP6_0, NP6_2 y NP6_3, y cada uno de ellos gestiona 4 puertos de 10Gb, es decir, tiene la capacidad de gestionar hasta 40Gb de throughput.
Es relevante mencionar que los puertos de gestión no están asignados a ningún NP. En su lugar, son administrados directamente por la CPU principal del dispositivo. Esto demuestra una estrategia inteligente de diseño, ya que separa el plano de gestión del tráfico productivo. En escenarios extremos, como una saturación del equipo debido a un ataque DDoS no mitigado, esta separación asegura que aún se mantenga el acceso de gestión. Esto permite a los administradores intervenir, mitigar y reconfigurar el dispositivo a pesar de las circunstancias adversas.
get hardware npu np6 port-list Chip XAUI Ports Max Cross-chip Speed offloading ------ ---- ------- ----- ---------- np6_1 0 port1 1G No 0 port5 1G No 0 port9 1G No 0 port13 1G No 0 port17 1G No 0 port21 1G No 0 port25 1G No 0 port29 1G No 1 port2 1G No 1 port6 1G No 1 port10 1G No 1 port14 1G No 1 port18 1G No 1 port22 1G No 1 port26 1G No 1 port30 1G No 2 port3 1G No 2 port7 1G No 2 port11 1G No 2 port15 1G No 2 port19 1G No 2 port23 1G No 2 port27 1G No 2 port31 1G No 3 port4 1G No 3 port8 1G No 3 port12 1G No 3 port16 1G No 3 port20 1G No 3 port24 1G No 3 port28 1G No 3 port32 1G No ------ ---- ------- ----- ---------- np6_0 0 port37 10G No 1 port38 10G No 2 port39 10G No 3 port40 10G No ------ ---- ------- ----- ---------- np6_2 0 port43 10G No 1 port44 10G No 2 port41 10G No 3 port42 10G No ------ ---- ------- ----- ---------- np6_3 0 port33 10G No 1 port34 10G No 2 port35 10G No 3 port36 10G No ------ ---- ------- ----- ----------
Explorando la Complejidad: El Fortigate 6000F
Sin duda, el mundo de la ciberseguridad puede volverse aún más complejo. Para ilustrar esto, echaremos un vistazo al Fortigate 6000F. Diseñado para operadores o carriers que gestionan enormes volúmenes de tráfico, este dispositivo también se adapta perfectamente como firewall interno en data centers, especialmente en entornos que requieren inspección de tráfico de alta velocidad o que operan con múltiples firewalls virtuales a través de VDOMs. El 6000F es, indiscutiblemente, un equipo de alto rendimiento.
En un vistazo al esquema de hardware del 6000F, destaca su plano de control para gestión. Este maneja los puertos de HA para la creación de un clúster con otro dispositivo, gestionando tres puertos de 10Gb y dos puertos de 1Gb para administración fuera de banda. Esto suma 32Gb de capacidad. Estos puertos no necesitan NP’s ni CP’s, ya que el tráfico es procesado directamente por la CPU principal, dedicada exclusivamente a gestión y control.
Lo que realmente diferencia al 6000F es su incorporación de múltiples CPUs principales, conocidas como FPC (Fortinet Processor Card). Estas están asignadas a tareas específicas y a la gestión y procesamiento del tráfico. Los dispositivos de la serie 6000 están equipados con seis FPCs, cada una manejando procesadores NP_6 y CP_9. Esta configuración permite hasta seis canales distintos de gestión de tráfico.
El backplane del 6000F es igualmente impresionante, con una capacidad de 3.2 Tbps. El equipo está dotado de 24 puertos de 10/25Gb y 4 puertos de 40/100 Gb, ofreciendo hasta 2Tb en modo full-duplex si todos los puertos operan a máxima capacidad. Pero con un backplane de 3.2Tbps, el dispositivo maneja con holgura el tráfico interno, evitando la sobre-suscripción de puertos y garantizando un rendimiento óptimo.
Esquema de Uso Típico para el Hardware Fortigate
El esquema comúnmente empleado con el hardware de Fortigate implica dos dispositivos en clúster, cada uno equipado con dos VDOMs (firewalls virtuales). Estos VDOMs gestionan el tráfico de diversos departamentos internos. En un enfoque de balanceo, un VDOM actúa como primario en uno de los dispositivos, mientras el otro sirve como respaldo, y viceversa en el segundo dispositivo. Esta configuración asegura una distribución equilibrada de la carga entre los firewalls.
Un enfoque alternativo es el modo activo-activo. En este escenario, ambos dispositivos gestionan sesiones de manera activa (Statefull). Al compartir las sesiones entre ellos, si uno procesa cierto tráfico, el sistema distribuye automáticamente la carga. Esto permite el manejo de una cantidad de tráfico doble en comparación con el modo VDOM. Sin embargo, esta configuración implica el doble en licencias y en contratación de servicios.
En conclusión, Fortigate cuenta con una variedad de chips diseñados para acelerar el tráfico, distribuidos de manera estratégica dentro del hardware ofrecido por el fabricante. La combinación de aceleración avanzada y la integración de servicios de seguridad en la nube posicionan a Fortinet como un referente en la industria. Su relación coste-beneficio es notablemente equilibrada. Además, todos los dispositivos de Fortinet están diseñados para maximizar el rendimiento, liberando a la CPU principal de cargas innecesarias y garantizando condiciones óptimas. Esto asegura que los clientes cuenten con dispositivos perfectamente adecuados para satisfacer las necesidades específicas de sus redes empresariales.
En el próximo capítulo, exploraremos en profundidad las redes CDN y el GSLB, analizando los servicios más destacados disponibles en el mercado actual. Profundizaremos en cómo estos servicios nos proporcionan una seguridad robusta y garantizan la disponibilidad de contenidos publicados en línea de manera eficiente y escalable. ¡Hasta la próxima lectura!