Citrix ADC

Configuración de la función AppFlow

Puede configurar AppFlow de la misma manera que la mayoría de las demás funciones basadas en directivas. Primero, habilite la función AppFlow. A continuación, especifique los recopiladores a los que se envían los registros de flujo. Después de eso, defina acciones, que son conjuntos de recopiladores configurados. A continuación, configure una o varias directivas y asocie una acción a cada directiva. La directiva indica al dispositivo Citrix ADC que seleccione las solicitudes cuyos registros de flujo se envían a la acción asociada. Por último, vincula cada directiva globalmente o al servidor virtual específico para ponerla en práctica.

También puede establecer parámetros de AppFlow para especificar el intervalo de actualización de la plantilla y habilitar la exportación de información HttpURL, HttpCookie y HttPreferer. En cada recopilador, debe especificar la dirección IP de Citrix ADC como dirección del exportador.

Nota

Para obtener información acerca de cómo configurar Citrix ADC como exportador en el recopilador, consulte la documentación del recopilador específico.

La utilidad de configuración proporciona herramientas que ayudan a los usuarios a definir las directivas y acciones que determinan exactamente cómo el dispositivo Citrix ADC exporta los registros de un flujo determinado a un conjunto de recopiladores (acción). La interfaz de línea de comandos proporciona un conjunto correspondiente de comandos basados en CLI para usuarios experimentados que prefieren una línea de comandos.

Activación de AppFlow

Para poder utilizar la función AppFlow, primero debe habilitarla.

Nota

AppFlow solo se puede habilitar en dispositivos NCore Citrix ADC.

Para habilitar la función AppFlow mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba uno de los siguientes comandos:

enable ns feature AppFlow

Para habilitar la función AppFlow mediante la utilidad de configuración

Vaya a Sistema > Configuración, haga clic en Configurar funciones avanzadas y seleccione la opción AppFlow.

Especificación de un recopilador

Un recopilador recibe registros AppFlow generados por el dispositivo Citrix ADC. Para enviar los registros de AppFlow, debe especificar al menos un recopilador. De forma predeterminada, el recopilador escucha los mensajes IPFIX en el puerto UDP 4739. Puede cambiar el puerto predeterminado al configurar el selector. De manera similar, de forma predeterminada, NSIP se utiliza como la IP de origen para el tráfico de AppFlow. Puede cambiar esta IP de origen predeterminada a una dirección SNIP al configurar un recopilador. También puede eliminar los colectores no utilizados.

Para especificar un selector mediante la interfaz de línea de comandos

Importante

A partir de Citrix ADC versión 12.1—55.13, puede especificar el tipo de recopilador que quiere utilizar. Se introduce un nuevo parámetro “Transporte” en el comando “add appflow collector”. De forma predeterminada, el recopilador escucha los mensajes IPFIX. Puede cambiar el tipo de recopilador a logstream o ipfix o rest mediante el parámetro “Transporte”. Para obtener más información sobre la configuración, consulte el ejemplo.

En el símbolo del sistema, escriba los siguientes comandos para agregar un selector y verificar la configuración:

-  add appflow collector <name> -IPAddress <ipaddress> -port <port_number> -netprofile <netprofile_name> -Transport <Transport>

-  show appflow collector <name>  

Ejemplo

add appflow collector col1 -IPaddress 10.102.29.251 -port 8000 -netprofile n2 -Transport ipfix

Para especificar varios selectores mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes para agregar y enviar los mismos datos a varios recopiladores:

add appflow collector <collector1> -IPAddress <IP>

add appflow collector <collector2> -IPAddress <IP>

add appflow action <action> -collectors <collector1> <collector2>

add appflow policy <policy> true <action>

bind lbvserver <lbvserver> -policy <policy> -priority <priority>

Para especificar uno o más recopiladores mediante la utilidad de configuración

Vaya a Sistema > AppFlow > Colectores y cree el selector AppFlow.

Configuración de una acción de AppFlow

Una acción AppFlow es un recopilador de conjuntos, al que se envían los registros de flujo si coincide con la directiva AppFlow asociada.

Para configurar una acción AppFlow mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos para configurar una acción AppFlow y verificar la configuración:

add appflow action <name> --collectors <string> ... [-clientSideMeasurements (Enabled|Disabled) ] [-comment <string>]

show appflow action  

Ejemplo

add appflow action apfl-act-collector-1-and-3 -collectors collector-1 collecter-3

Para configurar una acción AppFlow mediante la utilidad de configuración

Vaya a Sistema > AppFlow > Acciones y cree la acción AppFlow.

Configuración de una directiva de AppFlow

Después de configurar una acción AppFlow, debe configurar una directiva AppFlow. Una directiva de AppFlow se basa en una regla, que consta de una o más expresiones.

Nota

Para crear y administrar directivas de AppFlow, la utilidad de configuración proporciona asistencia que no está disponible en la interfaz de línea de comandos.

Para configurar una directiva de AppFlow mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba el siguiente comando para agregar una directiva de AppFlow y verificar la configuración:

add appflow policy <name> <rule> <action>

show appflow policy <name>

Ejemplo

add appflow policy apfl-pol-tcp-dsprt client.TCP.DSTPORT.EQ(22) apfl-act-collector-1-and-3

Para configurar una directiva de AppFlow mediante la utilidad de configuración

Vaya a Sistema > AppFlow > Directivas y cree la directiva AppFlow.

Para agregar una expresión mediante el cuadro de diálogo Agregar expresión

  1. En el cuadro de diálogo Agregar expresión, en el primer cuadro de lista, elija el primer término para la expresión.

    • HTTP El protocolo HTTP. Elija la opción si quiere examinar algún aspecto de la solicitud que pertenece al protocolo HTTP.
    • SSL

      Los sitios web protegidos. Elija la opción si quiere examinar algún aspecto de la solicitud que pertenece al destinatario de la solicitud.

    • CLIENTE

      El equipo que envió la solicitud. Elija la opción si quiere examinar algún aspecto del remitente de la solicitud. Cuando elija, el cuadro de lista situado más a la derecha muestra los términos apropiados para la siguiente parte de la expresión.

  2. En el segundo cuadro de lista, elija el segundo término para su expresión. Las opciones dependen de la elección que haya realizado en el paso anterior y son apropiadas para el contexto. Después de realizar su segunda elección, la ventana Ayuda situada debajo de la ventana Construir expresión (que estaba en blanco) muestra ayuda que describe el propósito y el uso del término que acaba de elegir.
  3. Siga eligiendo términos en los cuadros de lista que aparecen a la derecha del cuadro de lista anterior o escribiendo cadenas o números en los cuadros de texto que aparecen para pedirle que escriba un valor hasta que finalice la expresión.

Vinculación de una directiva de AppFlow

Para poner en práctica una directiva, debe vincularla globalmente, de modo que se aplique a todo el tráfico que fluye a través del Citrix ADC, o a un servidor virtual específico, de modo que la directiva se aplique únicamente al tráfico relacionado con ese servidor virtual.

Cuando vincula una directiva, le asigna una prioridad. La prioridad determina el orden en que se evalúan las directivas definidas. Puede establecer la prioridad en cualquier entero positivo.

En el sistema operativo Citrix ADC, las prioridades de directivas funcionan en orden inverso: Mayor sea el número, menor será la prioridad. Por ejemplo, si tiene tres directivas con prioridades de 10, 100 y 1000, la directiva asignada una prioridad de 10 se realiza primero. Más tarde, la directiva asignada con una prioridad de 100 y, finalmente, la directiva asignó un orden de 1000.

Puede dejar un montón de espacio para agregar otras directivas en cualquier orden, y aún así configurarlas para que evalúen en el orden que desee, estableciendo prioridades con intervalos de 50 o 100 entre cada directiva cuando la vincule globalmente. A continuación, puede agregar más directivas en cualquier momento sin tener que cambiar la prioridad de una directiva existente.

Para enlazar globalmente una directiva de AppFlow mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba el siguiente comando para enlazar globalmente una directiva de AppFlow y verificar la configuración:

bind appflow global <policyName> <priority> [<gotoPriorityExpression [-type <type>] [-invoke (<labelType> <labelName>)]  

show appflow global  

Ejemplo

bind appflow global af_policy_lb1_10.102.71.190 1 NEXT -type REQ_OVERRIDE -invoke vserver google

Para enlazar una directiva de AppFlow a un servidor virtual específico mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba el comando siguiente para vincular una directiva AppFlow a un servidor virtual específico y verificar la configuración:

bind lb vserver <name> -policyname <policy_name> -priority <priority>

Ejemplo

bind lb vserver google -policyname af_policy_google_10.102.19.179 -priority 251

Para enlazar globalmente una directiva de AppFlow mediante la utilidad de configuración

Vaya a Sistema > AppFlow, haga clic en Administrador de directivas de AppFlow, seleccione el punto de enlace (global predeterminado) y el tipo de conexión pertinentes y, a continuación, vincule la directiva AppFlow.

Para enlazar una directiva de AppFlow a un servidor virtual específico mediante la utilidad de configuración

Vaya a Administración del tráfico > Equilibrio de carga > Servidores virtuales, seleccione el servidor virtual y haga clic en Directivas y vincule la directiva AppFlow.

Habilitación de AppFlow para servidores virtuales

Si quiere supervisar solo el tráfico a través de determinados servidores virtuales, habilite AppFlow específicamente para esos servidores virtuales. Puede habilitar AppFlow para el equilibrio de carga, la conmutación de contenido, la redirección de caché, SSL VPN, GSLB y servidores virtuales de autenticación.

Para habilitar AppFlow para un servidor virtual mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set cs vserver <name> <protocol> <IPAddress> <port> -appflowLog ENABLED

Ejemplo

set cs vserver Vserver-CS-1 HTTP 10.102.29.161 80 -appflowLog ENABLED

Para habilitar AppFlow para un servidor virtual mediante la utilidad de configuración

Vaya a Administración del tráfico > Content Switching > Virtual Servers, seleccione el servidor virtual y active la opción AppFlow Logging.

Habilitación de AppFlow para un servicio

Puede habilitar AppFlow para los servicios que se van a vincular a los servidores virtuales de equilibrio de carga.

Para habilitar AppFlow para un servicio mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set service <name> -appflowLog ENABLED

Ejemplo

set service ser -appflowLog ENABLED

Para habilitar AppFlow para un servicio mediante la utilidad de configuración

Vaya a Traffic Management > Load Balancing > Services, seleccione el servicio y active AppFlow Logging opción.

Configuración de los parámetros de AppFlow

Puede establecer parámetros de AppFlow para personalizar la exportación de datos a los recopiladores.

Para establecer los parámetros de AppFlow mediante la interfaz de línea de comandos

Importante

  • A partir de Citrix ADC versión 12.1—55.13, puede usar el NSIP para enviar registros Logstream en lugar del SNIP. Se introduce un nuevo parámetro “LogStreamOvernSIP” en el comando “set appflow param”. De forma predeterminada, el parámetro “LogStreamOvernSIP” es DISABLED, debe “ENABLE”. Para obtener más información sobre la configuración, consulte el ejemplo.

  • A partir de la versión 13.0-58.x de Citrix ADC, puede habilitar la opción de aplicación web SaaS en la función AppFlow. Se puede habilitar para recibir el uso de datos de aplicaciones web o SaaS desde el servicio Citrix Gateway. Para obtener más información sobre la configuración, consulte el ejemplo.

En el símbolo del sistema, escriba los siguientes comandos para establecer los parámetros de AppFlow y verificar la configuración:

-  set appflow param [-templateRefresh <secs>] [-appnameRefresh <secs>] [-flowRecordInterval <secs>] [-udpPmtu <positive_integer>] [-httpUrl ( ENABLED | DISABLED )] [-httpCookie ( ENABLED | DISABLED )] [-httpReferer ( ENABLED | DISABLED )] [-httpMethod ( ENABLED | DISABLED )] [-httpHost ( ENABLED | DISABLED )] [-httpUserAgent ( ENABLED | DISABLED )] [-httpXForwardedFor ( ENABLED | DISABLED )][-clientTrafficOnly ( YES | NO)] [-webSaaSAppUsageReporting ( ENABLED | DISABLED )] [-logstreamOverNSIP ( ENABLED | DISABLED )]

-  show appflow Param

Ejemplo

set appflow Param -templateRefresh 240 -udpPmtu 128 -httpUrl enabled -webSaaSAppUsageReporting ENABLED -logstreamOverNSIP ENABLED

Para establecer los parámetros de AppFlow mediante la utilidad de configuración

Vaya a Sistema > AppFlow, haga clic en Cambiar configuración de AppFlow y especifique los parámetros pertinentes de AppFlow.

Ejemplo: Configuración de AppFlow para DataStream

El siguiente ejemplo ilustra el procedimiento para configurar AppFlow para DataStream mediante la interfaz de línea de comandos.

enable feature appflow

add db user sa password freebsd

add lbvserver lb0 MSSQL 10.102.147.97 1433 -appflowLog ENABLED

add service sv0 10.103.24.132 MSSQL 1433 -appflowLog ENABLED

bind lbvserver lb0 sv0

add appflow collector col0 -IPAddress 10.102.147.90

add appflow action act0 -collectors col0

add appflow policy pol0 "mssql.req.query.text.contains("select")" act0

bind lbvserver lb0 -policyName pol0 -priority 10

Cuando el dispositivo Citrix ADC recibe una solicitud de base de datos, el dispositivo evalúa la solicitud en función de una directiva configurada. Si se encuentra una coincidencia, los detalles se envían al recopilador AppFlow configurado en la directiva.