ADC

Directiva avanzada Infraestructura

Advertencia

Las expresiones de directiva clásicas están obsoletas desde NetScaler 12.0 compilación 56.20 en adelante y, como alternativa, Citrix recomienda utilizar directivas avanzadas. Para obtener más información, consulte Directivas avanzadas

La infraestructura de directivas avanzada le permite analizar muchos datos (por ejemplo, el cuerpo de una solicitud HTTP) y configurar muchas operaciones en la regla de directiva (por ejemplo, transformar los datos del cuerpo de una solicitud en un encabezado HTTP). Debe vincular la directiva a un punto concreto del procesamiento asociado a las funciones de NetScaler. El punto de enlace es un factor que determina cuándo se evaluará la directiva.

Beneficios del uso de directivas avanzadas

Las directivas avanzadas utilizan un lenguaje de expresión potente que se basa en un modelo de clase y objeto y ofrecen varias opciones que mejoran la capacidad de configurar el comportamiento de varias funciones de NetScaler. Con una infraestructura de directivas avanzada, puede hacer lo siguiente:

  • Realice análisis detallados del tráfico de red de las capas 2 a 7.
  • Evalúe cualquier parte del encabezado o cuerpo de una solicitud o respuesta HTTP o HTTPS.
  • Enlace directivas a los múltiples puntos de enlace que admite la infraestructura de directivas avanzada en los niveles predeterminado, de supeditación y de servidor virtual.
  • Utilice herramientas especiales, como conjuntos de patrones, etiquetas de directivas, identificadores de límite de velocidad, llamadas HTTP y variables, que le permiten configurar directivas de forma eficaz para casos de uso complejos.

Además, la utilidad de configuración amplía el sólido soporte de GUI para expresiones e infraestructuras de directivas avanzadas y permite a los usuarios que tienen un conocimiento limitado de los protocolos de red configurar las directivas de forma rápida y sencilla. La utilidad de configuración también incluye una función de evaluación de directivas para directivas avanzadas. Puede usar esta función para evaluar una directiva avanzada y probar su comportamiento antes de confirmarla, lo que reduce el riesgo de errores de configuración.

Componentes básicos de una directiva avanzada

A continuación se presentan algunas funciones de una directiva avanzada:

  • Nombre. Cada directiva tiene un nombre exclusivo.

  • Regla. La regla es una expresión lógica que permite a la función NetScaler evaluar una parte del tráfico u otro objeto. Por ejemplo, una regla puede permitir que NetScaler determine si una solicitud HTTP se originó desde una dirección IP concreta o si un encabezado Cache-Control de una solicitud HTTP tiene el valor “No-Cache”.

  • Fijaciones. Para asegurarse de que NetScaler pueda invocar una directiva cuando sea necesaria, debe asociarla o vincularla a uno o más puntos de enlace.

    Puede enlazar una directiva globalmente o a un servidor virtual. Para obtener más información, consulte Acerca de los enlaces de directivas.

  • Una acción asociada. Una acción es una entidad independiente de una directiva. En última instancia, la evaluación de directivas da lugar a que NetScaler realice una acción.

    Por ejemplo, una directiva de la caché integrada puede identificar solicitudes HTTP de archivos.gif o.jpeg. Una acción asociada a esta directiva determina que las respuestas a este tipo de solicitudes se sirven desde la caché.

Para algunas funciones, las acciones se configuran como parte de un conjunto de instrucciones más complejo conocido como perfil.

Cómo utilizan las directivas las distintas funciones de NetScaler

NetScaler admite varias funciones que dependen de las directivas para su funcionamiento. En la tabla siguiente se resume el modo en que las funciones de NetScaler utilizan las directivas.

Nombres de funcionalidad Cómo se usan las directivas en la función
Reescritura Para identificar los datos que quiere modificar antes de servir. Las directivas proporcionan reglas para modificar los datos. Por ejemplo, puede modificar los datos HTTP para redirigir una solicitud a una nueva página principal, a un nuevo servidor o a un servidor seleccionado en función de la dirección de la solicitud entrante, o puede modificar los datos para enmascarar la información del servidor en una respuesta por motivos de seguridad. La función URL Transformer identifica las URL en las transacciones HTTP y los archivos de texto para evaluar si una URL debe transformarse.
Responder Configurar el comportamiento de la función Responder. Una directiva de respuesta se basa en una regla, que consiste en una o más expresiones. La regla está asociada a una acción, que se realiza si una solicitud coincide con la regla.
Conmutación de contenido Determinar qué servidor o grupo de servidores es responsable de entregar las respuestas, en función de las características de una solicitud entrante. Las funciones de solicitud incluyen el tipo de dispositivo, el idioma, las cookies, el método HTTP, el tipo de contenido y el servidor de caché asociado.
Redirección de caché Para determinar si las respuestas se entregan desde una caché o desde un servidor de origen.
Control de compresión Determinar qué tipo de tráfico debe comprimirse.
DNS Para modificar varias partes de las solicitudes y respuestas de DNS
Acceso VPN sin cliente Determinar cómo NetScaler Gateway realiza la autenticación, autorización, auditoría y otras funciones, y definir reglas de reescritura para el acceso web general mediante NetScaler Gateway.
Caché Para determinar si se debe entregar una respuesta desde la memoria caché o desde el servidor de origen.
Directiva de transformación de URL Para seleccionar las solicitudes y respuestas que NetScaler debe transformar mediante el perfil de transformación de URL.
Directiva de firewall de aplicaciones Asignar diferentes reglas de filtrado a diferentes tipos de contenido web.
Autorización Proporcionar acceso al contenido solicitado sin exponer detalles innecesarios sobre la configuración real del sitio web.
Tráfico de TM Establecer las características (como el tiempo de espera de la conexión, el inicio de sesión único y el inicio del cierre de sesión) del tráfico de la aplicación en tiempo de ejecución.
Sesión de TM Para personalizar las sesiones de usuario después de que el usuario inicie sesión en el servidor virtual de autorización, autorización y contabilidad.
Directivas SSL Definir un control o una acción de datos que se realizará en las solicitudes. Por lo tanto, las directivas de SSL se pueden clasificar como directivas de control y directivas de datos. Una directiva de control utiliza una acción de control, como forzar la autenticación del cliente. Una directiva de datos utiliza una acción de datos, como insertar algunos datos en la solicitud.
AutoScale Para aumentar o reducir la cantidad de servidores virtuales sin problemas y de forma automática según las condiciones definidas.
AppFlow Permitir que NetScaler exporte datos de flujo a herramientas de recopilación, que suelen utilizarse para el análisis de redes o de seguridad.
Optimización de contenido Reducir los tiempos de transacción entre los clientes y los servidores y reducir el consumo de ancho de banda. También para mejorar el rendimiento del servidor al descargar algunas tareas y hacer que otras sean más eficientes.
Desbordamiento Usar una regla de NetScaler para especificar las condiciones para que se produzca la propagación. Las reglas le brindan la flexibilidad de configurar la propagación para diversas condiciones operativas.
ICA Para generar dinámicamente una solicitud de ICAP, reciba la respuesta de ICAP y registre los datos de inspección del contenido.
Sesión de VPN En un NetScaler Gateway, configurar Endpoint Analysis (EPA) para comprobar si un dispositivo de usuario cumple ciertos requisitos de seguridad y, en consecuencia, permitir al usuario el acceso a los recursos internos.
Tráfico de VPN En un NetScaler Gateway, configurar Endpoint Analysis (EPA) para comprobar si un dispositivo de usuario cumple ciertos requisitos de seguridad y, en consecuencia, permitir al usuario el acceso a los recursos internos.
syslog Para definir qué mensajes se van a registrar en el servidor syslog especificado.
nslog Para definir qué mensajes se van a registrar en el servidor nslog especificado.
Detección de optimización de vídeo Crear una etiqueta de directiva de detección de optimización de vídeo definida por el usuario, a la que pueda vincular las directivas de detección. Una etiqueta de directiva es una herramienta para evaluar un conjunto de directivas en un orden específico. Al usar una etiqueta de directiva, puede configurar la función de optimización de vídeo para elegir la siguiente directiva, invocar una etiqueta de directiva diferente o terminar una evaluación de directiva por completo comprobando si la directiva anterior se evaluó como TRUE o FALSE.
Tunelización Definir el tipo de compresión que se utilizará para el tráfico tunelizado.
Inspección de contenido Especificar las solicitudes para que el NetScaler ADC intercepte y ejecute la acción especificada.
URL de VPN Crear un enlace de marcador a un recurso externo o interno que aparezca en la interfaz de acceso, según el tipo, como un enlace a un sitio web o un enlace para compartir archivos.
Bot Para crear una etiqueta de directiva de bots definida por el usuario, a la que pueda vincular directivas. Una etiqueta de directiva es una herramienta para evaluar un conjunto de directivas en un orden específico. Al usar una etiqueta de directiva, puede configurar la función de respuesta para elegir la siguiente directiva, invocar una etiqueta de directiva diferente o terminar una evaluación de directiva por completo comprobando si la directiva anterior se evaluó como TRUE o FALSE.
Directiva de aplicaciones de intranet de VPN Definir las aplicaciones de intranet para que sean accesibles a través de un NetScaler Gateway.
SmartAccess Crear un perfil de acceso ICA que especifique el estado de las funciones (predeterminado o inhabilitado).
Equilibrio de carga Definir cómo distribuir las conexiones de los clientes entre los servidores con equilibrio de carga que administra.

Acerca de las acciones y los perfiles

Las directivas no toman medidas por sí mismas sobre los datos. Las directivas proporcionan una lógica de solo lectura para evaluar el tráfico. Para permitir que una función realice una operación basada en una evaluación de directivas, debe configurar acciones o perfiles y asociarlos a directivas.

Nota:

Las acciones y los perfiles son específicos de funciones particulares. Para obtener información sobre la asignación de acciones y perfiles a entidades, consulte la documentación de las funciones individuales.

Acerca de las acciones

Las acciones son pasos que realiza NetScaler, según la evaluación de la expresión de la directiva. Por ejemplo, si una expresión de una directiva coincide con una dirección IP de origen concreta de una solicitud, la acción asociada a esta directiva determina si se permite la conexión.

Los tipos de acciones que NetScaler puede realizar son específicos de cada función. Por ejemplo, en Reescritura, las acciones pueden reemplazar el texto de una solicitud, cambiar la URL de destino de una solicitud, etc. En el almacenamiento en caché integrado, las acciones determinan si las respuestas HTTP se entregan desde la caché o desde un servidor de origen.

En algunas funciones de NetScaler, las acciones están predefinidas y en otras son configurables. En algunos casos (por ejemplo, Rewrite), se configuran las acciones con los mismos tipos de expresiones que se utilizan para configurar la regla de directiva asociada.

Nota:

No todas las combinaciones de función, protocolo, dirección y entidad son válidas.

Acerca de los perfiles

Algunas funciones de NetScaler permiten asociar perfiles, o tanto acciones como perfiles, a una directiva. Un perfil es un conjunto de ajustes que permiten a la función realizar una función compleja. Por ejemplo, en el firewall de la aplicación, un perfil de datos XML puede realizar varias operaciones de filtrado, como examinar los datos en busca de sintaxis XML ilegal o pruebas de inyección de SQL.

Acerca de las vinculaciones de directivas

Una directiva está asociada o enlazada a una entidad que permite invocar la directiva. Por ejemplo, puede vincular una directiva a la evaluación de tiempo de solicitud que se aplica a todos los servidores virtuales. Un conjunto de directivas vinculadas a un punto de enlace determinado constituye un banco de directivas.

A continuación se presenta una descripción general de los diferentes tipos de puntos de enlace de una directiva:

  • Tiempo de solicitud global. Una directiva puede estar disponible para todos los componentes de una función en el momento de la solicitud.
  • Tiempo de respuesta global. Una directiva puede estar disponible para todos los componentes de una función en el momento de respuesta.
  • Tiempo de solicitud, específico del servidor virtual. Una directiva se puede enlazar al procesamiento en tiempo de solicitud de un servidor virtual concreto. Por ejemplo, puede enlazar una directiva de tiempo de solicitud a un servidor virtual de redirección de caché para garantizar que determinadas solicitudes se reenvíen a un servidor virtual de equilibrio de carga para la caché y que otras solicitudes se envíen a un servidor virtual de equilibrio de carga para el origen.
  • Tiempo de respuesta específico del servidor virtual. Una directiva también se puede enlazar al procesamiento del tiempo de respuesta de un servidor virtual concreto.
  • Etiqueta de directiva definida por el usuario. Para una infraestructura de directivas avanzada, puede configurar agrupaciones personalizadas de directivas (bancos de directivas) definiendo una etiqueta de directiva y recopilando un conjunto de directivas relacionadas bajo la etiqueta de directiva.
  • Otros puntos de enlace. La disponibilidad de puntos de enlace adicionales depende del tipo de directiva avanzada y de las características específicas de la función de NetScaler correspondiente.

Para obtener información adicional sobre los enlaces de directivas avanzadas, consulte Vincular directivas que utilizan el tema Directivas avanzadas .

Acerca del orden de evaluación de las directivas

Las funciones de NetScaler se procesan en un orden determinado, lo que incluye la evaluación de las directivas de la función y la realización de las acciones seleccionadas. Para obtener más información, consulte Flujo de paquetes.

En cualquier punto del procesamiento de mensajes, la evaluación de la directiva se realiza en función de la combinación de lo siguiente:

  • Protocolo (como HTTP, SIP, TCP o Diameter)
  • Dirección (solicitud o respuesta)
  • Función (como Reescritura, Respuesta o Bot)

Las combinaciones no se pueden mezclar. Las directivas se evalúan en grupos de directivas denominados bancos (también denominados etiquetas de directivas o puntos de enlace) en el siguiente orden:

  1. Supeditación global
  2. Servidor virtual LB específico utilizado
  3. Si se utiliza algún servidor virtual CS específico
  4. Valor predeterminado global

Dentro de un banco, las directivas se evalúan desde la prioridad numérica más baja hasta la más alta. Si una regla de directiva se evalúa como falsa, la evaluación pasa automáticamente a la siguiente prioridad numérica más alta del mismo banco. Si no hay reglas de directiva en el mismo banco, la evaluación recae en la primera directiva del banco siguiente del pedido. Si no hay más directivas, finaliza la evaluación de directivas. Si una regla de directiva se evalúa como verdadera, se recuerda la acción o el perfil correspondiente para su posible ejecución posterior.

Si la directiva se evalúa como verdadera, se comprueba el valor “gotoPriorityExpression”. Si “gotoPriorityExpression” es “END”, se detiene la evaluación de la directiva. Si es “NEXT”, se evalúa la siguiente directiva (como la descrita anteriormente). Si se trata de una expresión, se evalúa esa expresión y, a continuación, se selecciona la directiva con esa prioridad.

Nota

El valor predeterminado de “gotoPriorityExpression” es “END”. Sin embargo, para algunas funciones que pueden ejecutar todas las acciones, se recomienda especificar explícitamente el valor “gotoPriorityExpression”.

Una vez que se haya detenido la evaluación de la directiva, la función ejecuta la lista ordenada de acciones o perfiles. Las funciones ejecutan todas las acciones (por ejemplo, Reescritura) o ejecutan una acción (por ejemplo, Respuesta o Bot). Si hay más de una acción o perfil asociado a una función que solo puede ejecutar una, la norma es ejecutar la última. Si no hay acciones ni perfiles seleccionados, la función realiza su acción predeterminada.

Orden de evaluación basado en el flujo de tráfico

Algunas directivas afectan el resultado de otras directivas. A continuación se presentan algunos ejemplos:

  • Si se proporciona una respuesta desde la memoria caché integrada, algunas otras funciones de NetScaler no procesan la respuesta ni la solicitud que la inició.

  • Si el firewall de la aplicación rechaza una solicitud entrante, ninguna otra función puede procesarla.

  • La mayoría de las acciones que realiza el Respondedor detienen el procesamiento posterior.

  • Las acciones Arrastrar y Restablecer realizadas por Reescritura detienen el procesamiento posterior.