Configuración avanzada de perfil de inspección SSL/SSH en FortiGate para seguridad óptima

La configuración del perfil de inspección SSL/SSH en dispositivos FortiGate es una característica fundamental para fortalecer la seguridad de la red mediante la inspección profunda del tráfico cifrado. Este tipo de configuración permite al firewall analizar y controlar conexiones seguras, lo que ayuda a detectar amenazas ocultas dentro de las comunicaciones que utilizan protocolos como HTTPS, SMTP, IMAPS, entre otros. Al aplicar un perfil de inspección SSL/SSH, se resuelve el problema común de la ceguera de seguridad que presentan muchas soluciones frente al tráfico cifrado, evitando que el malware y otras amenazas pasen inadvertidos por la red.

Campos principales

  • Name: El nombre asignado al perfil de inspección. Sirve para identificar de forma clara y rápida este conjunto específico de configuraciones dentro del firewall.
  • Comments: Permite añadir una descripción o anotación sobre el propósito del perfil, facilitando el mantenimiento y la gestión del equipo.
  • Enable SSL inspection of: Aquí se selecciona el tipo de inspección SSL que se desea aplicar, por ejemplo, Multiple Clients Connecting to Multiple Servers que significa proteger varios clientes conectándose a múltiples servidores, asegurando una cobertura amplia.
  • Inspection method: Define el método utilizado para la inspección. Las opciones incluyen SSL Certificate Inspection, que inspecciona solo certificados, y Full SSL Inspection, que realiza un análisis completo del tráfico cifrado, aumentando la profundidad de seguridad pero con mayor requerimiento de recursos.
  • CA certificate: El certificado de autoridad que se usa para validar los certificados SSL inspeccionados. Es crítico porque sin un CA certificado confiable, la inspección puede generar alertas o bloqueos incorrectos.
  • Blocked certificates (Allow / Block): Define la acción sobre certificados específicos que están bloqueados, pudiendo permitir o bloquear el acceso según políticas de seguridad predefinidas.
  • Untrusted SSL certificates (Allow / Block / Ignore): Controla el comportamiento frente a certificados no confiables, lo que es esencial para evitar conexiones inseguras o ataques de intermediarios (MITM).
  • Server certificate SNI check: Validación del Server Name Indication para evitar manipulaciones y garantizar que el certificado corresponda al dominio que el cliente espera, aumentando la protección contra ataques de spoofing.
  • Enforce SSL cipher compliance: Habilita el cumplimiento estricto de los cifrados permitidos, previniendo el uso de algoritmos débiles o vulnerables.
  • Enforce SSL negotiation compliance: Obliga a que el protocolo y las versiones SSL/TLS negociadas cumplan con políticas seguras establecidas por la organización.
  • RPC over HTTPS: Permite o bloquea la inspección del protocolo Remote Procedure Call sobre HTTPS, que puede ser usado legítimamente o por malware camuflado.
  • Protocol Port Mapping: Esta sección permite definir qué protocolos y a través de qué puertos serán inspeccionados, por ejemplo, HTTPS (443), SMTP (465), POP3S (995), IMAPS (993), FTPS (990), y DNS over TLS (853). También existe la opción de inspeccionar todos los puertos, ideal en entornos donde el tráfico cifrado viaja por puertos no estándar.

Escenarios de uso y recomendaciones

Una configuración avanzada de inspección SSL/SSH es fundamental en entornos donde se manejan datos sensibles o se requiere prevención contra amenazas cifradas, como empresas financieras, gubernamentales o proveedores de servicios. Por ejemplo, en una red corporativa donde los empleados acceden a múltiples servicios web seguros, esta inspección permite aplicar políticas de control, bloquear certificados inválidos o detecta tráfico malicioso camuflado en HTTPS.

Configurar incorrectamente el perfil, como deshabilitar la inspección completa y quedarse solo con la verificación de certificados, puede dejar pasar malware que usa técnicas avanzadas. Asimismo, no validar SNI o permitir certificados no confiables puede permitir conexiones inseguras o ataques de intermediarios.

El fabricante recomienda usar full SSL inspection siempre que sea posible, mantener actualizado el CA certificado, y aplicar cumplimiento estricto para cifrados y negociación SSL. También sugiere definir claramente los protocolos y puertos a inspeccionar para optimizar recursos y evitar falsos positivos en servicios legítimos que usen cifrado.

Comandos de CLI útiles para diagnóstico

  • diagnose debug enable – Activa el modo debug para obtener logs detallados sobre el comportamiento del firewall durante la inspección SSL.
  • diagnose debug application sslmgr -1 – Permite ver información específica del módulo que maneja la inspección SSL, útil para identificar fallos en la negociación o errores de certificados.
  • show firewall ssl-ssh-profile – Muestra la configuración actual de los perfiles SSL/SSH en el dispositivo para validar que la configuración está aplicada correctamente.
  • diagnose firewall ssl-ssh inspect-lookup – Ayuda a verificar si el tráfico hacia una IP o dominio específico está siendo inspeccionado bajo el perfil configurado.
  • get system performance top – Permite monitorear el impacto en recursos del equipo al aplicar inspección SSL completa.
  • diagnose sniffer packet any 'port 443' 4 – Captura paquetes de tráfico HTTPS para verificar si el tráfico está siendo interceptado y analizado.

Buenas prácticas de configuración

  • Actualizar periódicamente el certificado CA utilizado para firmar certificados de inspección, para evitar problemas de compatibilidad.
  • Configurar el perfil con inspección completa (full SSL inspection) siempre que los recursos lo permitan, para máxima seguridad.
  • Validar que SNI check esté habilitado para proteger contra ataques de spoofing en nombres de servidor SSL.
  • Restringir el uso de cifrados y protocolos inseguros habilitando la opción de cumplimiento en cifrados y negociación SSL.
  • Definir sólo los puertos y protocolos necesarios para inspección para reducir falsos positivos y mejorar rendimiento.
  • Testear la configuración tras aplicarla usando los comandos CLI de diagnóstico para asegurar que no se interrumpen servicios legítimos.
  • Monitorear el desempeño del firewall, ya que la inspección SSL completa puede aumentar el uso de CPU y memoria significativamente.
  • Documentar cambios y mantener comentarios claros en cada perfil para facilitar futuras auditorías y mantenimiento.