Administrar FortiGate por consola CLI para generar un backup a USB
  • Admin

CPU al 100%, cómo identificar el proceso que está saturando tu Firewall

Entrar a la interfaz web de tu FortiGate y notar que el dashboard principal está tardando mas tiempo de lo normal en poder mostrar las gráficas y finalmente cuando carga, observamos una señal: Uso de CPU: 100%.
Tener el procesador saturado no solo degrada el rendimiento del tráfico, sino que puede poner al equipo en Conserve Mode, donde el firewall comienza a descartar paquetes o a dejar de inspeccionar tráfico para protegerse a sí mismo.
Solución: Diagnostico mediante CLI En situaciones de saturación extrema, la CLI permite realizar una búsqueda más profunda.
En donde podremos observar el ID de cada proceso (PID), su estado actual y cómo se distribuye la carga entre los diferentes núcleos del procesador.
Esta visibilidad te permite determinar si el problema es un pico de tráfico legítimo, o un ataque externo, permitiéndote tomar decisiones criticas antes de considerar un reinicio físico del equipo, que siempre debería ser el último recurso.

¿Qué necesitas para comenzar?

• Terminal de nuestra PC (CMD)

Paso 1: Conexión Inicial

Para realizar nuestra conexión mediante ssh, necesitaremos abrir en nuestra PC el CMD, y digitaremos el siguiente comando ssh usuario@password, para realizar la conexión. Menú Policy and Objects > Addresses en FortiGate

Paso 2: Acceso a la CLI

Una vez realicemos la conexión, al inicio se nos pedirá iniciar sesión, en donde tenemos que colocar nuestras credenciales correspondientes. Pantalla de inicio de sesión de FortiOS en la terminal de PuTTY

Paso 3: Verificación general

Ya que hayamos iniciado sesión, procederemos con una verificación, el cual nos mostrará el uso del CPU, para esto usaremos el siguiente comando get system performance status, esto nos dará la información desglosada núcleo por núcleo, en el cual podemos identificar los siguientes dos escenarios:
• Si todos los núcleos están al 100%, indica una saturación por tráfico masivo o un ataque.
• Si solo uno está saturado, indica un flujo de datos gigante ("Elephant Flow") o un proceso que no está distribuyendo bien la carga.
Sección Policy & Objects > Firewall Policy en FortiGate

Paso 4: Descartar saturación de memoria (Conserve Mode)

En este paso solo vamos a descartar la memoria, ya que el CPU pude estar haciendo un trabajo extra, como liberar memoria, indicando que el problema es la falta de memoria. Para poder realizar esto nos apoyaremos del siguiente comando get system status. Prueba de Ping exitosa confirmando el tráfico de red gracias a la política de Firewall
En este paso normalmente la línea que buscamos normalmente aparece al final, en caso de que no aparezca esa línea quiere decir que la memoria está trabajando sin problema, pudiendo descartar esta opción.

Paso 5: Identificar el proceso

Ya que obtuvimos una visión general y pudimos descartar la memoria, ahora tenemos que identificar el proceso que realmente esta causando ese uso excesivo de CPU.
El comando que usaremos será el siguiente diag sys top 5 20, este comando nos mostrará los procesos, para ello utilizaremos los valores:
• 5: Este es el intervalo en cual se actualizarán los datos
mostrados en pantalla.
• 20: Filtra la salida para mostrarte solo los 20 procesos más "pesados".

Diagnóstico de uso de CPU en consola CLI de FortiOS
Que podemos observar con los datos que nos arrojo el comando:
• 99U: indica que el 99% del CPU está siendo utilizado por procesos del "Usuario" (User space).
• Httpsd: Es el proceso que maneja la Interfaz Gráfica (GUI) y la administración vía web, y como podemos ver es que se tienen almenos 8 instancias consumiendo entre el 46% y 49%.
• PID: Es el número de identificación (3589, 3561, etc.)
• Estado: R (Running), proceso que esta trabajando y S (Sleeping), proceso que se encuentra en espera.
• CPU: Cuánto procesador consume cada hilo.
• Memoria: Cuánta RAM usa.
• Nucleo (0,1,2,3): indica en qué procesador físico está corriendo.

Reinicio del proceso

Ya que pudimos identificar el proceso que esta causando todo ese uso excesivo de CPU, procederemos a reiniciarlo de una manera correcta.

diag sys kill 11

el resultado de esto es que el sistema operativo detectará que un proceso crítico se cerró y lo reiniciará automáticamente en pocos segundos, eliminando cualquier bloqueo o "bug" temporal que tuviera sin necesidad de reiniciar todo el Firewall.

NOTA: El uso del comando kill 11 puede causar una interrupción mínima en las sesiones que estaban siendo procesadas por ese motor específico en ese instante. Utilizar solo en casos de emergencia.

Cuando el CPU de tu FortiGate llega al 100%, la CLI es tu única herramienta de diagnóstico confiable. El secreto no está en reiniciar el equipo a ciegas, sino en identificar el proceso exacto.

Si tienes alguna duda técnica o necesitas asesoría profesional para tu infraestructura, no dudes en visitarnos en tikendo.com.mx. ¡Estamos para ayudarte!

Conclusión: Monitoreo Constante y Buenas Prácticas

Monitorear de cerca el rendimiento de tu FortiGate no solo ayuda a prevenir caídas inesperadas, sino que garantiza que todas tus reglas de inspección y filtros operen de manera óptima sin generar cuellos de botella. Como hemos visto, dominar los diagnósticos por consola te da el poder de resolver problemas críticos sin recurrir a reinicios repentinos.

Mantener tu firmware actualizado, optimizar las políticas de firewall y dimensionar adecuadamente el uso de perfiles de seguridad son las claves fundamentales para mantener una red saludable, rápida y lista para escalar.

¿Problemas recurrentes de rendimiento en tu infraestructura?

Si los problemas de uso de CPU alto persisten a pesar de haber intentado aislar el proceso causante, o si notas lentitud general que afecta la productividad de tu organización, puede que sea el momento de un análisis profundo o una actualización de hardware.

¿Te ha servido este artículo? Compártelo con otros administradores e ingenieros de red para que aprendan a diagnosticar un CPU saturado como verdaderos expertos en FortiOS. En Tikendo, nuestro equipo está capacitado para ayudarte a evaluar, diseñar y optimizar toda la red de tu empresa.

Tutorial en Video: Diagnóstico de CPU al 100%

Mira cómo identificar y solucionar problemas de alto consumo

En este video tutorial complementamos la guía escrita con una demostración paso a paso en tiempo real. Verás exactamente cómo inspeccionar los recursos desde el panel de control y utilizar la consola CLI para identificar los procesos que están saturando el equipo.

Aplicaremos los comandos esenciales de diagnóstico (`get system performance status`, `diagnose sys top`) y revisaremos ajustes clave para liberar el consumo y estabilizar el sistema a la normalidad.

Tutorial práctico CLI Troubleshooting Rendimiento Solución verificada
Ver en nuestra Videoteca

¿Necesitas soporte técnico para resolver este problema en tu FortiGate?

Nuestros ingenieros NSE certificados te asisten en la resolución inmediata de incidentes, configuración de políticas y diagnóstico de hardware o firmware.