NetScaler VPX

Proteger la puerta de enlace de API de AWS mediante el firewall de aplicaciones web de NetScaler

Puede implementar un dispositivo NetScaler delante de su puerta de enlace de API de AWS y proteger la puerta de enlace de API de amenazas externas. El firewall de aplicaciones web (WAF) de NetScaler puede defender su API contra las 10 principales amenazas de OWASP y los ataques de día cero. El firewall de aplicaciones web de NetScaler utiliza una única base de código en todos los factores de forma de ADC. Por lo tanto, puede aplicar y hacer cumplir las políticas de seguridad de forma coherente en cualquier entorno. El firewall de aplicaciones web de NetScaler es fácil de implementar y está disponible como una única licencia. El firewall de aplicaciones web de NetScaler le ofrece las siguientes características:

  • Configuración simplificada
  • Gestión de bots
  • Visibilidad holística
  • Recopilar datos de múltiples fuentes y mostrarlos en una pantalla unificada

Además de la protección de la puerta de enlace de API, también puede utilizar las otras funciones de NetScaler. Para obtener más información, consulte la (/es-es/citrix-adc/13-1/). Además de evitar conmutaciones por error del centro de datos y minimizar el tiempo de inactividad, puede colocar ADC en alta disponibilidad dentro o entre zonas de disponibilidad. También puede usar o configurar la agrupación en clúster con la función de escalado automático.

Anteriormente, la puerta de enlace de API de AWS no admitía las protecciones necesarias para proteger las aplicaciones que la respaldaban. Sin las protecciones del firewall de aplicaciones web (WAF), las API eran propensas a amenazas de seguridad.

Implementar el dispositivo NetScaler delante de la puerta de enlace de API de AWS

En el siguiente ejemplo, se implementa un dispositivo NetScaler delante de la puerta de enlace de API de AWS.

Implementar ADC delante de la puerta de enlace de API de AWS

Supongamos que hay una solicitud de API genuina para el servicio AWS Lambda. Esta solicitud puede ser para cualquiera de los servicios de API, como se menciona en la documentación de Amazon API Gateway. Como se muestra en el diagrama anterior, el flujo de tráfico es el siguiente:

  1. El cliente envía una solicitud a la función AWS Lambda (XYZ). Esta solicitud del cliente se envía al servidor virtual de NetScaler (192.168.1.1).
  2. El servidor virtual inspecciona el paquete y comprueba si hay contenido malicioso.
  3. El dispositivo NetScaler activa una política de reescritura para cambiar el nombre de host y la URL en una solicitud del cliente. Por ejemplo, desea cambiar https://restapi.citrix.com/default/LamdaFunctionXYZ a https://citrix.execute-api.<region>.amazonaws.com/default/LambdaFunctionXYZ.
  4. El dispositivo NetScaler reenvía esta solicitud a la puerta de enlace de la API de AWS.
  5. La puerta de enlace de la API de AWS envía la solicitud al servicio Lambda y llama a la función Lambda “XYZ”.
  6. Al mismo tiempo, si un atacante envía una solicitud de API con contenido malicioso, la solicitud maliciosa llega al dispositivo NetScaler.
  7. El dispositivo NetScaler inspecciona los paquetes y los descarta según la acción configurada.

Configurar el dispositivo NetScaler con WAF habilitado

Para habilitar WAF en un dispositivo NetScaler, siga estos pasos:

  1. Agregue un servidor virtual de conmutación de contenido o de equilibrio de carga. Supongamos que la dirección IP del servidor virtual es 192.168.1.1, que se resuelve en un nombre de dominio (restapi.citrix.com).
  2. Habilite la directiva WAF en el servidor virtual de NetScaler. Para obtener más información, consulte Configuración del firewall de aplicaciones web.
  3. Habilite la directiva de reescritura para cambiar el nombre de dominio. Por ejemplo, desea que la solicitud entrante al equilibrador de carga en el nombre de dominio “restapi.citrix.com” se reescriba a la puerta de enlace de la API de AWS de back-end en el nombre de dominio “citrix.execute-api.<region>.amazonaws”.
  4. Habilite el modo L3 en el dispositivo NetScaler para que actúe como proxy. Utilice el siguiente comando:

    enable ns mode L3
    <!--NeedCopy-->
    

En el paso 3 del ejemplo anterior, supongamos que el administrador del sitio web quiere que el dispositivo NetScaler reemplace el nombre de dominio “restapi.citrix.com” por “citrix.execute-api.<region>.amazonaws.com” y la URL por “default/lambda/XYZ”.

El siguiente procedimiento describe cómo cambiar el nombre de host y la URL en una solicitud de cliente mediante la función de reescritura:

  1. Inicie sesión en el dispositivo NetScaler mediante SSH.
  2. Agregue acciones de reescritura.

    add rewrite action rewrite_host_hdr_act replace "HTTP.REQ.HEADER(\"Host\")" "\"citrix.execute-api.<region>.amazonaws.com\""
    
    add rewrite action rewrite_url_act replace HTTP.REQ.URL.PATH_AND_QUERY "\"/default/lambda/XYZ\""
    <!--NeedCopy-->
    
  3. Agregue directivas de reescritura para las acciones de reescritura.

    add rewrite policy rewrite_host_hdr_pol "HTTP.REQ.HEADER(\"Host\").CONTAINS(\"restapi.citrix.com\") "rewrite_host_hdr_act
    
    add rewrite policy rewrite_url_pol "HTTP.REQ.HEADER(\"Host\").CONTAINS(\"restapi.citrix.com\") "rewrite_url_act
    <!--NeedCopy-->
    
  4. Vincule las políticas de reescritura a un servidor virtual.

    bind lb vserver LB_API_Gateway -policyName rewrite_host_hdr_pol -priority 10 -gotoPriorityExpression 20 -type REQUEST
    
    bind lb vserver LB_API_Gateway -policyName rewrite_url_pol -priority 20 -gotoPriorityExpression END -type REQUEST
    <!--NeedCopy-->
    

Para obtener más información, consulte Configurar la reescritura para cambiar el nombre de host y la URL en la solicitud del cliente en el dispositivo NetScaler.

Funciones y capacidades de NetScaler

El dispositivo NetScaler, además de proteger la implementación, también puede mejorar la solicitud según los requisitos del usuario. El dispositivo NetScaler proporciona las siguientes características clave.

  • Equilibrar la carga de la puerta de enlace de API: Si tiene más de una puerta de enlace de API, puede equilibrar la carga de varias puertas de enlace de API mediante el dispositivo NetScaler y definir el comportamiento de la solicitud de API.

    • Hay diferentes métodos de equilibrio de carga disponibles. Por ejemplo, el método de conexión mínima evita la sobrecarga del límite de la puerta de enlace de API, el método de carga personalizada mantiene una carga específica en una puerta de enlace de API particular, y así sucesivamente. Para obtener más información, consulte Algoritmos de equilibrio de carga.

    • La descarga SSL se configura sin interrumpir el tráfico.
    • El modo Usar IP de origen (USIP) está habilitado para preservar la dirección IP del cliente.
    • Configuración SSL definida por el usuario: Puede tener su propio servidor virtual SSL con sus propios certificados y algoritmos firmados.
    • Servidor virtual de respaldo: Si la puerta de enlace de API no es accesible, puede enviar la solicitud a un servidor virtual de respaldo para acciones adicionales.
    • Hay muchas otras funciones de equilibrio de carga disponibles. Para obtener más información, consulte Equilibrar la carga del tráfico en un dispositivo NetScaler.
  • Autenticación, autorización y auditoría: Puede definir sus propios métodos de autenticación como LDAP, SAML, RADIUS, y autorizar y auditar las solicitudes de API.

  • Respondedor: Puede redirigir las solicitudes de API a otra puerta de enlace de API durante el tiempo de inactividad.

  • Limitación de velocidad: Puede configurar la función de limitación de velocidad para evitar la sobrecarga de una puerta de enlace de API.

  • Mejor disponibilidad: Puede configurar un dispositivo NetScaler en una configuración de alta disponibilidad o una configuración de clúster para proporcionar una mejor disponibilidad a su tráfico de API de AWS.

  • REST API: Admite la API REST, que se puede utilizar para automatizar el trabajo en entornos de producción en la nube.

  • Supervisar datos: Supervisa y registra los datos para referencia.

El dispositivo NetScaler ofrece muchas más funciones que se pueden integrar con la puerta de enlace de API de AWS. Para obtener más información, consulte la documentación de NetScaler.

Proteger la puerta de enlace de API de AWS mediante el firewall de aplicaciones web de NetScaler