FortiADC Resumen de funcionalidades ÍNDICE 1. 2. Introducción ...........................................................................................................2 Características ........................................................................................................3 2.1. Balanceo de Servidores (Server Balancing) ...................................................3 2.2. Balance de Enlaces (Link Load Balancing) ......................................................4 2.3. Balance Global de Carga (Global Load Balancing) .........................................4 2.4. SSL Offloading ................................................................................................ 5 2.5. Compression Offloading ................................................................................6 2.6. Caching ...........................................................................................................6 2.7. Security ..........................................................................................................7 2.8. VDOMS ...........................................................................................................7 2.9. Alta Disponibilidad (HA) .................................................................................7 3. Familia de Productos.............................................................................................. 8 The Power to Control 1 1. Introducción En el presente documento, se resumen las características y las funcionalidades del FortiADC. La familia de productos FortiADC son dispositivos controladores de la disponibilidad de aplicaciones o Application Delivery Controller (ADC). Estos dispositivos optimizan la disponibilidad, la experiencia de usuario, el rendimiento y la escalabilidad de la aplicación empresarial. Un ADC es un dispositivo que enruta el tráfico de una aplicación hacia sus servidores (Siendo estos varios, agrupados en una granja). Este enrutamiento se decide, si los datos son enviados a un servidor o a otro, basándose el FortiADC en la carga de trabajo de cada servidor, la salud de este, la latencia, etc. Los ADC también mejoran el rendimiento de las aplicaciones, cogiendo las tareas de los servidores, dejando así los recursos de estos disponibles para la aplicación en sí. Estas tareas que se pueden “exportar” al FortiADC son el cifrado / des-cifrado de los datos, compresión de los mismo, etc. FortiADC utiliza la información de la sesión de las capas 4 y 7, para poder habilitar políticas ADC, y una capa de gestión para las siguientes funcionalidades: Balanceo de carga de aplicaciones Balanceo de carga de enlaces Balanceo Global de Carga Aceleración y exportación de SSL Aceleración TCP Seguridad En el siguiente punto del presente documento veremos más detalladamente esta funcionalidad. Los dispositivos FortiADC están disponibles en máquinas físicas y virtuales. En la infraestructura de red, se tiene que asegurar que el tráfico de red dirigido a los servidores de las aplicaciones, sea redirigido hacia el FortiADC. Normalmente, a las aplicaciones se accede desde fuera de la red, es decir, desde internet. Lo normal en este caso, es disponer de un Firewall de seguridad perimetral, como un fortigate. En este caso deberemos instalar el FortiADC entre el Fortigate y los servidores. En la figura inferior se observa un despliegue tipo, donde un FortiADC controlaría la disponibilidad de las aplicaciones. 2 The Power to Control 2. Características 2.1. Balanceo de Servidores (Server Balancing) La función principal de un balanceador de aplicaciones, es enrutar el tráfico de la aplicación a los diferentes servidores, basando en algoritmos que chequean la carga y la salud del servidor. De esta forma se incrementa la disponibilidad y el rendimiento de la aplicación, lo que directamente incide en la experiencia final del usuario. La distancia física entre los clientes y los servidores de nuestra granja de servidores, tiene un impacto importante en los tiempos de respuesta de la aplicación. Más allá de la distancia física, hay otros factores importantes que inciden en el rendimiento de la aplicación. Estos factores son: El número de conexiones simultáneas que está recibiendo un servidor. La carga de trabajo, y su distribución entre los servidores. El propósito de un ADC es proporcionar diferentes métodos para optimizar la capacidad de los servidores. Una vez desplegado el ADC, el tráfico es enrutado a uno de sus servidores virtuales, en lugar de ser directamente enviado al servidor final. Opcionalmente podemos aumentar el rendimiento de la aplicación, traspasando procesos del Sistema de los servidores al ADC. Estos procesos pueden ser cifrado, compresión y procesos de routing, como NAT. The Power to Control 3 2.2. Balance de Enlaces (Link Load Balancing) El balanceo de enlaces, está diseñado para gestionar tráfico de diferentes proveedores de servicios (ISP’s), o diferentes enlaces WAN. Este hecho habilita poder utilizar múltiples salidas a internet, reduciendo el riesgo de cortes en la conexión, tener disponibilidad de ancho de banda adicional en momentos puntuales que lo necesitemos. En la mayoría de los casos, se configurará el balanceo de enlaces en tráfico saliente. En el FortiADC se establecerán políticas, mediante las cuales configuraremos la metodología a utilizar en el balanceo de líneas. Cuando el FortiADC reciba tráfico que concuerde con el afectado por la política, este tráfico será redirigido a la línea WAN correspondiente. En la imagen anterior se observa un escenario en el que el FortiADC actúa como balanceador de líneas, en el cual los diferentes clientes son balanceados por diferentes proveedores de servicios. 2.3. Balance Global de Carga (Global Load Balancing) El balanceo global de carga (GLB), es una solución basada en DNS, que nos permite desplegar recursos redundantes por todo el planeta, que podemos utilizar para mantener nuestra organización online incluso cuando en un determinado área hay una caída de servicios o un problema inesperado. Con esta solución, FortiADC implementa un servidor DNS, que es desplegado como el DNS autoritario de las zonas que configuremos. Se podrá configurar el DNS para dirigir a los clientes a los servidores con menor latencia, y también se podrá administrar reglas de DNS para redirigir las conexiones en caso de caídas de servicio. Por ejemplo, se puede cambiar rápidamente la IP a la que apunta nuestra aplicación, para un tiempo de parada planificado, o por una caída inesperada. 4 The Power to Control En este ejemplo, observamos que los servidores A, B y C están fuera de la LAN de nuestra organización, mientras que los servidores D, E y F están en la LAN. Todos ellos muestran la misma aplicación, www.fortiADC.com. Con GLB, podemos redirigir a los clientes de la LAN a los servidores internos, mientras que a los clientes remotos les redirigiremos a los servidores externos. Con las políticas DNS se puede establecer que en caso de caída de una de las granjas de servidores, acceder a la otra como medida de disaster recovery. 2.4. SSL Offloading SSL offloading significa que el FortiADC se encarga del procesamiento del cifrado y des-cifrado de la información en lugar de los servidores finales, dejando a estos más libres para poder dedicar más recursos a los procesos de la aplicación. En los modelos físicos de FortiADC, la criptografía es acelerada mediante hardware, gracias a los ASICS de Fortinet. El FortiADC puede cifrar y des-cifrar información a mayor velocidad que el servidor final. En este escenario, el FortiADC actúa como un terminador del túnel SSL en las sesiones de https. En lugar de un túnel cifrado desde el cliente al servidor, el túnel es terminado en el ADC. La información es des-cifrada en este, y entregada al servidor. Cuando el servidor responde, el ADC encripta la respuesta y la envía al cliente de nuevo por el túnel. The Power to Control 5 Para habilitar SSL offloading, el primer paso es importar los certificados, clave privada y CA que utilice la aplicación. Este paso es necesario para completar la relación de confianza entre el cliente y el ADC. El ADC funcionara como un proxy SSL, con las siguientes funciones: Autenticar a los clientes Des encriptar peticiones Encriptar las respuestas. 2.5. Compression Offloading FortiADC, aparte de SSL offloading, también soporta compression offloading, es decir, se puede hacer cargo de las tareas de compresión y des-compresión de la información enviada a las aplicaciones. Esta acción la realiza en lugar de dejársela al servidor final, permitiendo a este dedicar más recursos de procesamiento para la aplicación. Cuando la compresión está habilitada en el fortiADC, este comprime tráfico HTTP y HTTPS de forma inteligente. Esto reduce el tamaño de los paquete que van hacia y desde el servidor al cliente, y acelerando así el tráfico de la aplicación. FortiADC soporta los algoritmos estándares GZIP y DEFLATE, entre otros. 2.6. Caching FortiADC soporte el caching. Este mecanismo nos permite reducir la carga de los servidores, la saturación del ancho de banda, el incremento de las latencias, y aumentar el rendimiento de la red. Cuando tenemos habilitado el caching en un perfil de servidor virtual, FortiADC almacena datos de la aplicación, como imágenes y videos, de forma que cuando estos son solicitados al servidor, los devuelve el ADC directamente, disminuyendo la carga de trabajo del servidor y acelerando el funcionamiento de la aplicación. 6 The Power to Control 2.7. Security En la mayoría de escenarios es recomendable desplegar un fortigate junto al FortiADC como medida de seguridad perimetral, pero, en casos en los que este despliegue no es posible, el ADC realiza las tareas de seguridad. Las medidas de seguridad que pueden ser implementadas en un ADC son las siguientes: Firewall: Filtra el tráfico de determinadas IP. Límite de conexiones: Impide las conexiones en momentos de tráfico inusualmente alto. Servicio de reputación de IP: Elimina las conexiones de IP’s que están en la lista de reputación de fortiguard. Protección DDoS. Elimina las conexiones mal formadas para evitar ataque SYN Flood. 2.8. VDOMS Un VDOM, es una instancia (o varias) lógica dentro de un FortiADC físico. Se suelen utilizar para tener varios entornos de balanceo en una sola localización física. Cada una de estas instancias es totalmente funcional, como si fuera un FortiADC. 2.9. Alta Disponibilidad (HA) Las maquinas, tanto físicas como virtuales de FortiADC pueden estar desplegadas, como unidades solas, o como clústeres de alta disponibilidad (HA). Un clúster es un conjunto de dos o más maquinas. Una de las maquinas tomaría el rol de maestro, gestionando el tráfico de las aplicaciones y las comunicaciones entre los nodos del clúster, y el resto tendrían un rol de esclavo, haciendo funciones de standby, por si el maestro falla. La elección del maestro, una vez formado el cluster se realiza mediante el siguiente criterio: Mayor número de puertos activos Mayor tiempo desde el último reinicio. Valor prioridad (Configurado por el administrador, cuanto menor es el valor, más prioritario) Número de serie mayor. En el cluster se realizan internamente dos tipos de comunicaciones: Herathbeat: Chequeo entre los nodos, para ver que el maestro está funcionando correctamente. Ausencia de hearthbeat indica que el maestro no está funcional, y se elegiría un nuevo nodo para tomar este rol. Sincronizacion: El maestro, una vez se le realizan cambios en la configuración, vuelca estos cambios en los esclavos, para que estén actualizados en el momento en el que entre en funcionamiento. En la siguiente imagen se muestra un entorno de alta disponibilidad típico. The Power to Control 7 3. Familia de Productos La gama de FortiADC abarca desde equipos para pequeña/mediana empresa, hasta equipos preparados para grandes empresas operadores. Los modelos físicos (appliances) se diferencial principalmente en la capacidad de tráfico a procesar, numero de interfaces, fuentes de alimentación duales, etc. En el siguiente grafico podemos ver un resumen de la gama de dispositivos. 8 The Power to Control En la siguiente tabla vemos un resumen de las características técnicas de los diferentes modelos de FortiADC. Al igual que en el resto de la gama de Fortinet, el FortiADC también lo encontramos como máquina virtual. Disponemos de 4 modelos de máquina virtual, cuyas características observamos en la siguiente tabla: The Power to Control 9