Citrix ADC

Configuration de la fonctionnalité AppFlow

Vous configurez AppFlow de la même manière que la plupart des autres fonctionnalités basées sur des stratégies. Tout d’abord, vous devez activer la fonctionnalité AppFlow. Vous spécifiez ensuite les collecteurs auxquels les enregistrements de flux sont envoyés. Ensuite, vous définissez des actions, qui sont des ensembles de collecteurs configurés. Vous configurez ensuite une ou plusieurs stratégies et associez une action à chaque stratégie. La stratégie indique à l’appliance Citrix ADC de sélectionner les demandes dont les enregistrements de flux sont envoyés à l’action associée. Enfin, vous liez chaque stratégie soit globalement, soit au serveur virtuel spécifique pour la mettre en œuvre.

Vous pouvez également définir les paramètres AppFlow pour spécifier l’intervalle d’actualisation du modèle et pour activer l’exportation des informations HttpURL, HttpCookie et HttpPreferer. Sur chaque collecteur, vous devez spécifier l’adresse IP Citrix ADC comme adresse de l’exportateur.

Remarque

Pour plus d’informations sur la configuration de Citrix ADC en tant qu’exportateur sur le collecteur, consultez la documentation du collecteur spécifique.

L’utilitaire de configuration fournit des outils qui aident les utilisateurs à définir les stratégies et les actions. Il détermine exactement comment l’appliance Citrix ADC exporte les enregistrements d’un flux particulier vers un ensemble de collecteurs (action). L’interface de ligne de commande fournit un ensemble correspondant de commandes basées sur l’interface de ligne de commande pour les utilisateurs expérimentés qui préfèrent utiliser une ligne de commande.

Activation d’AppFlow

Pour pouvoir utiliser la fonctionnalité AppFlow, vous devez d’abord l’activer.

Remarque

AppFlow ne peut être activé que sur les appliances Citrix ADC nCore.

Activez la fonctionnalité AppFlow à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez l’une des commandes suivantes :

enable ns feature AppFlow
<!--NeedCopy-->

Activez la fonctionnalité AppFlow à l’aide de l’utilitaire de configuration

Accédez à Système > Paramètres, cliquez sur Configurer les fonctionnalités avancéeset sélectionnez l’option AppFlow .

Spécifier un collecteur

Un collecteur reçoit les enregistrements AppFlow générés par l’appliance Citrix ADC. Pour envoyer les enregistrements AppFlow, vous devez spécifier au moins un collecteur. Par défaut, le collecteur écoute les messages IPFIX sur le port UDP 4739. Vous pouvez modifier le port par défaut lors de la configuration du collecteur. De même, par défaut, NSIP est utilisé comme adresse IP source pour le trafic AppFlow. Vous pouvez remplacer cette adresse IP source par défaut par une adresse SNIP lors de la configuration d’un collecteur. Vous pouvez également supprimer des collecteurs inutilisés.

Spécifiez un collecteur à l’aide de l’interface de ligne de commande

Important

À partir de Citrix ADC version 12.1 build 55.13, vous pouvez spécifier le type de collecteur que vous souhaitez utiliser. Un nouveau paramètre « Transport » est introduit dans la commande add appflow collector. Par défaut, le collecteur écoute les messages IPFIX. Vous pouvez modifier le type de collecteur logstream ou ipfix ou rest en utilisant le paramètre « Transport ». Pour plus d’informations sur la configuration, consultez l’exemple.

À l’invite de commandes, tapez les commandes suivantes pour ajouter un collecteur et vérifier la configuration :

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

-  show appflow collector <name>
<!--NeedCopy-->

Exemple

add appflow collector col1 -IPaddress 10.102.29.251 -port 8000 -netprofile n2 -Transport ipfix
<!--NeedCopy-->

Spécifier plusieurs collecteurs en utilisant l’interface de ligne de commande

À l’invite de commandes, tapez les commandes suivantes pour ajouter et envoyer les mêmes données à plusieurs collecteurs :

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>
<!--NeedCopy-->

Spécifiez un ou plusieurs collecteurs à l’aide de l’utilitaire de configuration

Accédez à Système > AppFlow > Collectorset créez le collecteur AppFlow.

Configurer une action AppFlow

Une action AppFlow est un collecteur d’ensembles auquel les enregistrements de flux sont envoyés si la stratégie AppFlow associée correspond.

Configurer une action AppFlow à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez les commandes suivantes pour configurer une action AppFlow et vérifier la configuration :

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

show appflow action
<!--NeedCopy-->

Exemple

add appflow action apfl-act-collector-1-and-3 -collectors collector-1 collecter-3
<!--NeedCopy-->

Configurer une action AppFlow à l’aide de l’utilitaire de configuration

Accédez à Système > AppFlow > Actionset créez l’action AppFlow.

Configurer une stratégie AppFlow

Après avoir configuré une action AppFlow, vous devez ensuite configurer une stratégie AppFlow. Une stratégie AppFlow est basée sur une règle, qui consiste en une ou plusieurs expressions.

Remarque

Pour la création et la gestion des stratégies AppFlow, l’utilitaire de configuration fournit une assistance qui n’est pas disponible sur l’interface de ligne de commande.

Configurer une stratégie AppFlow à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez la commande suivante pour ajouter une stratégie AppFlow et vérifier la configuration :

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

show appflow policy <name>
<!--NeedCopy-->

Exemple

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

Configurer une stratégie AppFlow à l’aide de l’utilitaire de configuration

Accédez à Système > AppFlow > Stratégieset créez la stratégie AppFlow.

Ajouter une expression à l’aide de la boîte de dialogue Ajouter une expression

  1. Dans la boîte de dialogue Ajouter une expression, dans la première zone de liste, choisissez le premier terme de votre expression.

    - HTTP Le protocole HTTP. Choisissez cette option si vous souhaitez examiner certains aspects de la demande qui se rapportent au protocole HTTP. - SSL

    Les sites Web protégés. Choisissez cette option si vous souhaitez examiner certains aspects de la demande qui concernent le destinataire de la demande. -
    CLIENT
    
    The computer that sent the request. Choose the option if you want to examine some aspect of the sender of the request. Lorsque vous faites votre choix, la zone de liste la plus à droite répertorie les termes appropriés pour la partie suivante de votre expression.
    
  2. Dans la deuxième zone de liste, choisissez le deuxième terme de votre expression. Les choix dépendent du choix que vous avez effectué à l’étape précédente et sont adaptés au contexte. Une fois que vous avez fait votre deuxième choix, la fenêtre d’aide située sous la fenêtre Construire une expression (qui était vide) affiche de l’aide décrivant le but et l’utilisation du terme que vous venez de choisir.
  3. Continuez à choisir des termes dans les zones de liste qui apparaissent à droite de la zone de liste précédente, ou à taper des chaînes ou des nombres dans les zones de texte qui s’affichent pour vous inviter à entrer une valeur, jusqu’à ce que votre expression soit terminée.

Lier une stratégie AppFlow

Pour appliquer une stratégie, vous devez la lier soit globalement, afin qu’elle s’applique à tout le trafic qui circule via Citrix ADC, soit à un serveur virtuel spécifique, afin que la stratégie s’applique uniquement au trafic lié à ce serveur virtuel.

Lorsque vous liez une stratégie, vous lui attribuez une priorité. La priorité détermine l’ordre dans lequel les stratégies que vous définissez sont évaluées. Vous pouvez définir la priorité sur n’importe quel nombre entier positif.

Dans le système d’exploitation Citrix ADC, les priorités des stratégies fonctionnent dans l’ordre inverse : le nombre est élevé, plus la priorité est faible. Par exemple, si vous avez trois stratégies avec des priorités de 10, 100 et 1 000, la stratégie affectée d’une priorité de 10 est exécutée en premier. Plus tard, la stratégie affectée avec une priorité de 100, et enfin la stratégie a attribué un ordre de 1000.

Vous pouvez vous laisser suffisamment de place pour ajouter d’autres stratégies dans n’importe quel ordre, tout en les configurant pour qu’elles soient évaluées dans l’ordre de votre choix. Vous pouvez y parvenir en définissant des priorités avec des intervalles de 50 ou 100 entre chaque stratégie lorsque vous la liez globalement. Vous pouvez ensuite ajouter d’autres stratégies à tout moment sans avoir à modifier la priorité d’une stratégie existante.

Liez globalement une stratégie AppFlow à l’aide de l’interface de ligne de commande

À l’invite de commande, tapez la commande suivante pour lier globalement une stratégie AppFlow et vérifier la configuration :

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

show appflow global
<!--NeedCopy-->

Exemple

bind appflow global af_policy_lb1_10.102.71.190 1 NEXT -type REQ_OVERRIDE -invoke vserver google
<!--NeedCopy-->

Liez une stratégie AppFlow à un serveur virtuel spécifique à l’aide de l’interface de ligne de commande

À l’invite de commande, tapez la commande suivante pour lier une stratégie AppFlow à un serveur virtuel spécifique et vérifier la configuration :

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

Exemple

bind lb vserver google -policyname af_policy_google_10.102.19.179 -priority 251
<!--NeedCopy-->

Liez globalement une stratégie AppFlow à l’aide de l’utilitaire de configuration

Accédez à Système > AppFlow, cliquez sur Gestionnaire de stratégies AppFlow, sélectionnez le point de liaison (global par défaut) et le type de connexion appropriés, puis liez la stratégie AppFlow.

Liez une stratégie AppFlow à un serveur virtuel spécifique à l’aide de l’utilitaire de configuration

Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels, sélectionnez le serveur virtuel, cliquez sur Stratégies, puis liez la stratégie AppFlow.

Activer AppFlow pour les serveurs virtuels

Si vous souhaitez surveiller uniquement le trafic via certains serveurs virtuels, activez AppFlow spécifiquement pour ces serveurs virtuels. Vous pouvez activer AppFlow pour l’équilibrage de charge, la commutation de contenu, la redirection de cache, le VPN SSL, le GSLB et les serveurs virtuels d’authentification.

Activer AppFlow pour un serveur virtuel à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

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

Exemple

set cs vserver Vserver-CS-1 HTTP 10.102.29.161 80 -appflowLog ENABLED
<!--NeedCopy-->

Activez AppFlow pour un serveur virtuel à l’aide de l’utilitaire de configuration

Accédez à Gestion du trafic > Commutation de contenu > Serveurs virtuels, sélectionnez le serveur virtuel et activez l’option Journalisation AppFlow.

Activer AppFlow pour un service

Vous pouvez activer AppFlow pour les services qui doivent être liés aux serveurs virtuels d’équilibrage de charge.

Activer AppFlow pour un service à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set service <name> -appflowLog ENABLED
<!--NeedCopy-->

Exemple

set service ser -appflowLog ENABLED
<!--NeedCopy-->

Activer AppFlow pour un service à l’aide de l’utilitaire de configuration

Accédez à Gestion du trafic > Équilibrage de charge > Services, sélectionnez le service et activez l’option Journalisation AppFlow.

Définir les paramètres AppFlow

Vous pouvez définir des paramètres AppFlow pour personnaliser l’exportation des données vers les collecteurs.

Définissez les paramètres AppFlow à l’aide de l’interface de ligne de commande

Important

  • À partir de Citrix ADC version 12.1 build 55.13, vous pouvez utiliser le NSIP pour envoyer Logstream des enregistrements au lieu du SNIP. Un nouveau paramètre « LogStreaMovernSIP » est introduit dans la set appflow param commande. Par défaut, le paramètre « LogStreamoVernSip » est DÉSACTIVÉ, vous devez « ACTIVER ». Pour plus d’informations sur la configuration, consultez l’exemple.

  • À partir de la version 13.0 build 58.x de Citrix ADC, vous pouvez activer l’option d’application Web SaaS dans la fonctionnalité AppFlow. Il peut être activé pour recevoir l’utilisation des données des applications Web ou SaaS à partir du service Citrix Gateway. Pour plus d’informations sur la configuration, consultez l’exemple.

À l’invite de commandes, tapez les commandes suivantes pour définir les paramètres AppFlow et vérifier les paramètres :

-  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
<!--NeedCopy-->

Exemple

set appflow Param -templateRefresh 240 -udpPmtu 128 -httpUrl enabled -webSaaSAppUsageReporting ENABLED -logstreamOverNSIP ENABLED
<!--NeedCopy-->

Définissez les paramètres AppFlow à l’aide de l’utilitaire de configuration

Accédez à Système > AppFlow, cliquez sur Modifier les paramètres AppFlowet spécifiez les paramètres AppFlow pertinents.

Prise en charge du masquage de l’identifiant d’abonné

À partir de Citrix ADC version 13.0 build 35.xx, la configuration AppFlow est améliorée pour prendre en charge l’algorithme « SubscriberIDobfuscation » pour obscurcir MSISDN dans les enregistrements AppFlow de couche 4 ou 7. Toutefois, avant de configurer l’algorithme en tant que MD5 ou SHA256, vous devez d’abord l’activer en tant que paramètre AppFlow. Le paramètre est désactivé par défaut.

Configuration de l’algorithme d’obscurcissement de l’ID d’abonné à l’aide de l’interface

À l’invite de commandes, tapez :

set appflow param [-subscriberIdObfuscation ( ENABLED | DISABLED )  [-subscriberIdObfuscationAlgo ( MD5 | SHA256 )]]
<!--NeedCopy-->

Exemple

set appflow param –subscriberIdObfuscation ENABLED – subscriberIdObfuscationAlgo SHA256
<!--NeedCopy-->

Configurer l’algorithme d’obscurcissement de l’ID d’abonné à l’aide de l’interface graphique

  1. Accédez à Système > AppFlow.
  2. Dans le volet détaillé AppFlow, cliquez sur Modifier le paramètre AppFlow sous Paramètres.
  3. Dans la page Configurer les paramètres AppFlow, définissez les paramètres suivants :

    • Obfuscation de l’identifiant d’abonné. Activez l’option d’obscurcissement MSISDN dans les enregistrements AppFlow L4/L7.
    • Algo d’obscurcissement de l’identifiant d’abonné. Sélectionnez le type d’algorithme MD5 ou SHA256.
  4. Cliquez sur OK et sur Fermer.

    Obfuscation de l'identifiant d'abonné

Exemple : configurer AppFlow pour DataStream

L’exemple suivant illustre la procédure de configuration d’AppFlow pour DataStream à l’aide de l’interface de ligne de commande.

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
<!--NeedCopy-->

Lorsque l’appliance Citrix ADC reçoit une demande de base de données, l’appliance évalue la demande par rapport à une stratégie configurée. Si une correspondance est trouvée, les détails sont envoyés au collecteur AppFlow configuré dans la stratégie.

Compteurs d’abonnement sur le collecteur de métriques

Le collecteur de mesures prend en charge l’exportation de données d’analyse de séries chronologiques toutes les 30 secondes dans différents formats tels que AVRO, le format Prometheus et le format Influx DB. Le collecteur de metrics prend en charge la mise à jour dynamique des compteurs qui vous permet d’ajouter les compteurs requis à un fichier de schéma. Vous pouvez configurer le nom du fichier de schéma à l’aide de l’interface CLI. Le collecteur de métriques lit les noms de compteurs à partir du fichier de schéma et les exporte. Le fichier de schéma par défaut schema.json est présent dans /var/metrics_conf/.

Configurer le collecteur de metrics pour souscrire des compteurs à l’aide de l’interface

Démarrez l’exportation des métriques en configurant un service Collector.

À l’invite de commandes, tapez :

’’’

set analytics profile ns_analytics_time_series_profile -metrics ENABLED -collectors <collector name> -schemaFile <schema file name> schema.json -outputMode <avro | influx | prometheus>

’’’

Remarque : schema.json il s’agit de la configuration SchemaFile par défaut.

Un nouveau fichier de schéma avec un ensemble de compteurs requis peut être configuré à l’aide de la commande CLI pour que le collecteur de metrics exporte. Le fichier de schéma doit être présent dans l’emplacement /var/metrics_conf/.

Le fichier de schéma contenant toutes les listes de compteurs (reference_schema.json) pris en charge par stats infra est présent dans l’emplacement /var/metrics_conf/. Ce fichier peut être utilisé comme référence pour créer une liste personnalisée de compteurs.

Vérifiez la sortie de configuration CLI à l’invite de commande :

’’’

show analytics profile ns_analytics_time_series_profile Name: ns_analytics_time_series_profile Collector: <collector name> Profile-type: timeseries Output Mode: avro Metrics: ENABLED Schema File: schema.json Events: ENABLED Auditlog: DISABLED Serve mode: Push Reference Count: 0

’’’