Guía Completa para Configurar Políticas SSL VPN en Fortinet FortiGate

Contexto y objetivo de la configuración

En entornos corporativos con teletrabajo, el uso de VPN SSL es fundamental para asegurar una conexión remota segura y eficiente. La política configurada permite el acceso remoto a través de túneles SSL VPN, garantizando que usuarios o grupos específicos puedan acceder a recursos internos de manera controlada y segura. Esta configuración busca aprovisionar el acceso desde el túnel VPN hacia la red interna (interface internal), definiendo claramente los usuarios autorizados y registrando los eventos relevantes para auditoría y análisis.

Arquitectura y flujo de tráfico

La política actúa en el firewall FortiGate como punto de control entre la interfaz lógica del túnel SSL VPN (ssl.root) y la red interna (internal). El tráfico generado por usuarios autenticados en la VPN SSL es recibido en la interfaz del túnel, inspeccionado y permitido salir hacia la red interna si cumple la política. El flujo de tráfico es:

  • Cliente VPN SSL → SSL-VPN tunnel interface (ssl.root)
  • FortiGate aplica la política de firewall
  • Si cumple, tráfico hacia internal

En este proceso, el firewall puede inspeccionar el tráfico en modo flow-based, lo que optimiza el rendimiento sin sacrificar capacidades de filtrado. La ausencia de NAT en esta política indica que las IPs del cliente se mantienen, asegurando trazabilidad y mínima manipulación de paquetes.

Campos principales y parámetros críticos

Destacan varios campos clave que impactan en la efectividad y seguridad de la política:

  • Incoming Interface: Se selecciona la interfaz lógica del túnel SSL VPN (ssl.root), lo que garantiza que la política sólo afecte tráfico entrante proveniente de usuarios conectados por VPN SSL.
  • Outgoing Interface: La interfaz internal representa la red interna corporativa donde residen recursos seguros.
  • Source: Los usuarios o grupos autorizados (en este caso el grupo AV-RUNNING junto con all) son los que pueden acceder. Esta selección define la identidad y privilegios.
  • Destination: Se define como all, permitiendo acceso a cualquier recurso interno, aunque podría restringirse para seguridad más granular.
  • Schedule: always indica que la política está activa sin restricciones temporales.
  • Service: Especificado como ALL, lo que implica que todos los servicios permitidos por la política son accesibles, salvo restricciones externas.
  • Action: ACCEPT habilita el paso del tráfico que cumple con las condiciones.
  • Inspection Mode: Flow-based permite inspección eficiente en la capa de aplicaciones.
  • NAT: Desactivado para preservar las IPs originales.
  • Logging Options: Activación de logs para tráfico permitido, solo eventos de seguridad, favorece auditoría sin logs excesivos.

Compatibilidad de versiones y modelos

La configuración es compatible con FortiOS 7.4.x,7.7.x y superiores, ya que la interfaz lógica ssl.root y el modo de inspección flow-based están disponibles desde versiones intermedias de FortiOS. Es compatible con todos los modelos FortiGate que soporten SSL VPN, incluyendo modelos de gama media (FortiGate 60F, 100F) y alta gama (FortiGate 3000D en adelante). Sin embargo, se recomienda verificar la licencia SSL VPN concurrente y evaluar el rendimiento en modelos con hardware limitado al usar inspección profunda o perfiles de seguridad simultáneos.

Escenarios de uso recomendados

Esta política es ideal para:

  • Conectar usuarios remotos o teletrabajadores a la red corporativa mediante VPN SSL.
  • Ambientes donde se requiere controlar acceso por usuario o grupos específicos a recursos internos.
  • Situaciones con necesidades de auditoría ligera, al registrar solo eventos de seguridad en tráfico permitido.
  • Organizaciones que prefieren optimizar rendimiento usando inspección flow-based, minimizando latencia.

Riesgos, errores frecuentes y cómo evitarlos

Entre los riesgos y errores comunes destacan:

  • Permitir all en destination y service sin restricciones: Puede abrir riesgos si los usuarios tienen acceso a recursos sensibles. Se recomienda segmentar y limitar tanto destinos como servicios.
  • No definir políticas adicionales para tráfico inverso: Puede generar problemas de comunicación si no existe una regla correspondiente para el retorno.
  • Desactivar NAT sin entender implicaciones de routing: Puede causar que el tráfico no se enrute correctamente si no se dispone de rutas estáticas o dinámicas adecuadas en la red interna.
  • No habilitar logs adecuados: Aunque se activan logs para eventos de seguridad, no activar logs para todo el tráfico puede limitar la capacidad de auditoría frente a ataques avanzados.
  • Olvidar actualizar grupos de usuarios: Para evitar accesos no autorizados, la actualización constante del grupo de usuarios es crítica.

Comandos de CLI útiles para diagnóstico

Configuración de la política en CLI:

config firewall policy
    edit 121
        set name "SSL-TeleWorkVPNCorp"
        set srcintf "ssl.root"
        set dstintf "internal"
        set srcaddr "all" "AV-RUNNING"
        set dstaddr "all"
        set schedule "always"
        set service "ALL"
        set action accept
        set inspection-mode flow
        set nat disable
        set logtraffic security-events
        set status enable
    next
end

Comandos de diagnóstico relevantes:

diagnose vpn ssl monitor
get firewall policy 121
diagnose debug enable
diagnose debug flow filter addr <IP_cliente_VPN>
diagnose debug flow show console enable
diagnose debug flow trace start 50
diagnose debug flow trace stop

La salida de diagnose vpn ssl monitor permite verificar usuarios conectados y estado del túnel SSL VPN. El comando get firewall policy 121 muestra la configuración y estado actual de la política 121. Los comandos de debug flow junto con filtros por IP cliente permiten analizar en detalle el procesamiento de paquetes que atraviesan el firewall según esta política, ayudando a identificar problemas de enrutamiento, permisos o inspección. Siempre se debe detener la traza para evitar consumo de recursos excesivo.

Buenas prácticas y checklist final

  • Limitar al máximo los destinos y servicios en la política para evitar accesos innecesarios.
  • Habilitar logging tanto de eventos de seguridad como de todo el tráfico cuando se requiera auditoría completa.
  • Actualizar regularmente los usuarios y grupos autorizados para reflejar cambios en la organización.
  • Verificar que las rutas y políticas complementarias para el tráfico inverso estén configuradas correctamente.
  • Preferir inspección flow-based para optimizar rendimiento, a menos que se requiera inspección proxy-based para perfiles específicos.
  • Evitar desactivar NAT salvo que se entienda la arquitectura y las rutas del entorno interno.
  • Implementar pruebas de conexión y supervisión continua con comandos CLI para asegurar la operatividad y detectar anomalías a tiempo.