Citrix ADC

AppFlow Funktion konfigurieren

Sie konfigurieren AppFlow auf die gleiche Weise wie die meisten anderen richtlinienbasierten Features. Zuerst aktivieren Sie die AppFlow Funktion. Anschließend geben Sie die Kollektoren an, an die die Flow-Datensätze gesendet werden. Danach definieren Sie Aktionen, bei denen es sich um Sätze von konfigurierten Kollektoren handelt. Anschließend konfigurieren Sie eine oder mehrere Richtlinien und ordnen jeder Richtlinie eine Aktion zu. Die Richtlinie weist die Citrix ADC Appliance an, Anforderungen auszuwählen, deren Flow-Datensätze an die zugeordnete Aktion gesendet werden. Schließlich binden Sie jede Richtlinie entweder global oder an den spezifischen virtuellen Server, um sie in Kraft zu setzen.

Sie können AppFlow Parameter weiter festlegen, um das Vorlagenaktualisierungsintervall anzugeben und den Export von HttpURL, HttpCookie und httpReferer-Informationen zu aktivieren. Auf jedem Collector müssen Sie die Citrix ADC IP-Adresse als Adresse des Exporters angeben.

Hinweis:

Informationen zum Konfigurieren des Citrix ADC als Exporteur auf dem Collector finden Sie in der Dokumentation für den jeweiligen Collector.

Das Konfigurationsdienstprogramm bietet Tools, mit denen Benutzer die Richtlinien und Aktionen definieren können. Es bestimmt genau, wie die Citrix ADC Appliance Datensätze für einen bestimmten Flow in eine Reihe von Collectors exportiert (Aktion). Die Befehlszeilenschnittstelle bietet einen entsprechenden Satz von CLI-basierten Befehlen für erfahrene Benutzer, die eine Befehlszeile bevorzugen.

AppFlow aktivieren

Um die AppFlow Funktion verwenden zu können, müssen Sie sie zuerst aktivieren.

Hinweis:

AppFlow kann nur auf nCore Citrix ADC Appliances aktiviert werden.

So aktivieren Sie das AppFlow Feature mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung einen der folgenden Befehle ein:

enable ns feature AppFlow

So aktivieren Sie die AppFlow Funktion mit dem Konfigurationsdienstprogramm

Navigieren Sie zu System > Einstellungen, klicken Sie auf Erweiterte Funktionen konfigurierenund wählen Sie die Option AppFlow aus.

Kollektor angeben

Ein Kollektor empfängt AppFlow Datensätze, die von der Citrix ADC Appliance generiert werden. Um die AppFlow Datensätze zu senden, müssen Sie mindestens einen Collector angeben. Standardmäßig überwacht der Collector IPFIX-Nachrichten am UDP-Port 4739. Sie können den Standardport ändern, wenn Sie den Collector konfigurieren. In ähnlicher Weise wird NSIP standardmäßig als Quell-IP für den AppFlow Verkehr verwendet. Sie können diese Standard-Quell-IP beim Konfigurieren eines Collectors in eine SNIP-Adresse ändern. Sie können auch nicht verwendete Kollektoren entfernen.

So legen Sie einen Kollektor mit der Befehlszeilenschnittstelle fest

Wichtig

Ab Citrix ADC Release 12.1 Build 55.13 können Sie den Typ des Collectors angeben, den Sie verwenden möchten. Im Befehl “Add appflow collector” wird ein neuer Parameter “Transport” eingeführt. Standardmäßig lauscht der Collector IPFIX-Nachrichten. Sie können den Typ des Kollektors entweder logstream oder ipfix oder Rest ändern, indem Sie den Parameter “Transport” verwenden. Weitere Informationen zur Konfiguration finden Sie im Beispiel.

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um einen Collector hinzuzufügen und die Konfiguration zu überprüfen:

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

-  show appflow collector <name>  

Beispiel

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

So legen Sie mehrere Kollektoren mit der Befehlszeilenschnittstelle fest

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um dieselben Daten hinzuzufügen und an mehrere Collectors zu senden:

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>

So geben Sie einen oder mehrere Kollektoren mit dem Konfigurationsdienstprogramm an

Navigieren Sie zu System > AppFlow > Collectors, und erstellen Sie den AppFlow-Collector.

Konfigurieren einer AppFlow Aktion

Eine AppFlow Aktion ist ein Set-Collector, an den die Flow-Datensätze gesendet werden, wenn die zugehörige AppFlow Richtlinie übereinstimmt.

So konfigurieren Sie eine AppFlow Aktion mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um eine AppFlow Aktion zu konfigurieren und die Konfiguration zu überprüfen:

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

show appflow action  

Beispiel

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

So konfigurieren Sie eine AppFlow Aktion mit dem Konfigurationsdienstprogramm

Navigieren Sie zu System > AppFlow > Actionsund erstellen Sie die AppFlow-Aktion.

Konfigurieren einer AppFlow Richtlinie

Nachdem Sie eine AppFlow Aktion konfiguriert haben, müssen Sie als nächstes eine AppFlow-Richtlinie konfigurieren. Eine AppFlow Richtlinie basiert auf einer Regel, die aus einem oder mehreren Ausdrücken besteht.

Hinweis:

Für die Erstellung und Verwaltung von AppFlow Richtlinien bietet das Konfigurationsdienstprogramm Unterstützung, die an der Befehlszeilenschnittstelle nicht verfügbar ist.

So konfigurieren Sie eine AppFlow Richtlinie mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um eine AppFlow Richtlinie hinzuzufügen und die Konfiguration zu überprüfen:

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

show appflow policy <name>

Beispiel

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

So konfigurieren Sie eine AppFlow Richtlinie mit dem Konfigurationsdienstprogramm

Navigieren Sie zu System > AppFlow > Richtlinien, und erstellen Sie die AppFlow-Richtlinie.

So fügen Sie einen Ausdruck mithilfe des Dialogfelds Ausdruck hinzufügen hinzu

  1. Wählen Sie im Dialogfeld Ausdruck hinzufügen im ersten Listenfeld den ersten Begriff für Ihren Ausdruck aus.

    • HTTP Das HTTP-Protokoll. Wählen Sie die Option, wenn Sie einen Aspekt der Anfrage untersuchen möchten, der sich auf das HTTP-Protokoll bezieht.
    • SSL

      Die geschützten Websites. Wählen Sie die Option, wenn Sie einen Aspekt der Anfrage untersuchen möchten, der sich auf den Empfänger der Anfrage bezieht.

    • CLIENT

      Der Computer, der die Anforderung gesendet hat. Wählen Sie die Option, wenn Sie einen Aspekt des Absenders der Anfrage untersuchen möchten. Wenn Sie Ihre Wahl treffen, werden im Listenfeld ganz rechts die entsprechenden Begriffe für den nächsten Teil des Ausdrucks aufgeführt.

  2. Wählen Sie im zweiten Listenfeld den zweiten Begriff für Ihren Ausdruck aus. Die Auswahlmöglichkeiten hängen davon ab, welche Auswahl Sie im vorherigen Schritt getroffen haben, und sind dem Kontext angemessen. Nachdem Sie Ihre zweite Wahl getroffen haben, zeigt das Hilfefenster unterhalb des Fensters Ausdruck erstellen (das leer war) Hilfe an, in dem der Zweck und die Verwendung des gerade ausgewählten Begriffs beschrieben wird.
  3. Fahren Sie fort, Begriffe aus den Listenfeldern auszuwählen, die rechts neben dem vorherigen Listenfeld angezeigt werden, oder geben Sie Zeichenfolgen oder Zahlen in die Textfelder ein, die Sie zur Eingabe eines Werts auffordern, bis der Ausdruck beendet ist.

Binden einer AppFlow Richtlinie

Um eine Richtlinie in Kraft zu setzen, müssen Sie sie entweder global binden, sodass sie für den gesamten Datenverkehr gilt, der über das Citrix ADC fließt, oder für einen bestimmten virtuellen Server, sodass die Richtlinie nur für den Datenverkehr gilt, der mit diesem virtuellen Server verknüpft ist.

Wenn Sie eine Richtlinie binden, weisen Sie ihr eine Priorität zu. Die Priorität bestimmt die Reihenfolge, in der die von Ihnen definierten Richtlinien ausgewertet werden. Sie können die Priorität auf eine beliebige positive Ganzzahl festlegen.

Im Citrix ADC Betriebssystem funktionieren Richtlinienprioritäten in umgekehrter Reihenfolge — je höher die Zahl, desto niedriger die Priorität. Wenn Sie beispielsweise drei Richtlinien mit Prioritäten von 10, 100 und 1000 haben, wird die Richtlinie, der eine Priorität von 10 zugewiesen hat, zuerst ausgeführt. Später wurde die Richtlinie mit einer Priorität von 100 zugewiesen, und schließlich hat die Richtlinie eine Reihenfolge von 1000 zugewiesen.

Sie können sich viel Raum lassen, um andere Richtlinien in beliebiger Reihenfolge hinzuzufügen, und sie dennoch so einstellen, dass sie in der gewünschten Reihenfolge bewertet werden. Sie können dies erreichen, indem Sie Prioritäten mit Intervallen von 50 oder 100 zwischen jeder Richtlinie festlegen, wenn Sie sie global binden. Sie können dann jederzeit weitere Richtlinien hinzufügen, ohne die Priorität einer bestehenden Richtlinie ändern zu müssen.

So binden Sie eine AppFlow Richtlinie global mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um eine AppFlow Richtlinie global zu binden und die Konfiguration zu überprüfen:

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

show appflow global  

Beispiel

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

So binden Sie eine AppFlow Richtlinie mit der Befehlszeilenschnittstelle an einen bestimmten virtuellen Server

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um eine AppFlow Richtlinie an einen bestimmten virtuellen Server zu binden und die Konfiguration zu überprüfen:

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

Beispiel

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

So binden Sie eine AppFlow Richtlinie global mit dem Konfigurationsdienstprogramm

Navigieren Sie zu System > AppFlow, klicken Sie auf AppFlow policy Manager, wählen Sie den entsprechenden Bind-Point (Standard Global) und den Verbindungstyp aus, und binden Sie dann die AppFlow-Richtlinie.

So binden Sie eine AppFlow Richtlinie mit dem Konfigurationsdienstprogramm an einen bestimmten virtuellen Server

Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, wählen Sie den virtuellen Server aus, klicken Sie auf Richtlinien, und binden Sie die AppFlow Richtlinie.

Aktivieren von AppFlow für virtuelle Server

Wenn Sie nur den Datenverkehr über bestimmte virtuelle Server überwachen möchten, aktivieren Sie AppFlow speziell für diese virtuellen Server. Sie können AppFlow für Lastenausgleich, Content Switching, Cache-Umleitung, SSL-VPN-, GSLB- und Authentifizierungsserver aktivieren.

So aktivieren Sie AppFlow für einen virtuellen Server mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

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

Beispiel

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

So aktivieren Sie AppFlow für einen virtuellen Server mit dem Konfigurationsdienstprogramm

Navigieren Sie zu Traffic Management > Content Switching > Virtuelle Server, wählen Sie den virtuellen Server aus und aktivieren Sie die Option AppFlow Logging.

Aktivieren von AppFlow für einen Dienst

Sie können AppFlow für Dienste aktivieren, die an die virtuellen Server des Lastenausgleichs gebunden werden sollen.

So aktivieren Sie AppFlow für einen Dienst mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set service <name> -appflowLog ENABLED

Beispiel

set service ser -appflowLog ENABLED

So aktivieren Sie AppFlow für einen Dienst mit dem Konfigurationsdienstprogramm

Navigieren Sie zu Traffic Management > Load Balancing > Services, wählen Sie den Dienst aus und aktivieren Sie die Option AppFlow Logging.

Festlegen der AppFlow Parameter

Sie können AppFlow Parameter festlegen, um den Export von Daten in die Collectors anzupassen.

So legen Sie die AppFlow Parameter mit der Befehlszeilenschnittstelle fest

Wichtig

  • Ab Citrix ADC Release 12.1 Build 55.13 können Sie das NSIP verwenden, um anstelle des SNIP Logstream-Datensätze zu senden. Im Befehl “set appflow param” wird ein neuer Parameter “logstreamOverNSIP” eingeführt. Standardmäßig ist der Parameter “logstreamOverNSIP” DISABLED, Sie müssen ihn auf ENABLE setzen. Weitere Informationen zur Konfiguration finden Sie im Beispiel.

  • Ausgehend von Citrix ADC Release 13.0 Build 58.x können Sie die Web-SaaS-Anwendungsoption in der AppFlow Funktion aktivieren. Es kann aktiviert werden, um die Datennutzung von Web- oder SaaS-Anwendungen vom Citrix Gateway Dienst zu empfangen. Weitere Informationen zur Konfiguration finden Sie im Beispiel.

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die AppFlow Parameter festzulegen und die Einstellungen zu überprüfen:

-  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

Beispiel

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

So legen Sie die AppFlow Parameter mit dem Konfigurationsdienstprogramm fest

Navigieren Sie zu System > AppFlow, klicken Sie auf AppFlow-Einstellungen ändernund geben Sie relevante AppFlow-Parameter an.

Unterstützung für die Verschleierung der Abonnenten-ID

Ab Citrix ADC Release 13.0 Build 35.xx wird die AppFlow Konfiguration erweitert, um den “SubscriberidOBFuscation” -Algorithmus zur Verschleierung von MSISDN in Schicht 4 oder Layer 7, AppFlow-Datensätzen, zu unterstützen. Bevor Sie den Algorithmus jedoch als MD5 oder SHA256 konfigurieren, müssen Sie ihn zuerst als AppFlow Parameter aktivieren. Der Parameter ist standardmäßig deaktiviert.

So konfigurieren Sie den Algorithmus zur Verschleierung der Abonnenten-ID mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

set appflow param [-subscriberIdObfuscation ( ENABLED | DISABLED )  [-subscriberIdObfuscationAlgo ( MD5 | SHA256 )]]

Beispiel

set appflow param –subscriberIdObfuscation ENABLED – subscriberIdObfuscationAlgo SHA256

So konfigurieren Sie den Algorithmus zur Verschleierung der Abonnenten-ID über die GUI

  1. Navigieren Sie zu System > AppFlow.
  2. Klicken Sie im Detailbereich von AppFlow unter Settings auf AppFlow Einstellung ändern.
  3. Legen Sie auf der Seite AppFlow Einstellungen konfigurieren die folgenden Parameter fest:

    • Verschleierung der Abonnenten-ID. Aktivieren Sie die Option für die Verschleierung von MSISDN in L4/L7 AppFlow Einträgen.
    • Abonnenten-ID Obfuscation Algo. Wählen Sie den Algorithmustyp als MD5 oder SHA256 aus.
  4. Klicken Sie auf OK und Schließen.

    Verschleierung der Abonnenten-ID

Beispiel: AppFlow für DataStream konfigurieren

Im folgenden Beispiel wird das Verfahren zum Konfigurieren von AppFlow für DataStream mit der Befehlszeilenschnittstelle veranschaulicht.

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

Wenn die Citrix ADC Appliance eine Datenbankanforderung empfängt, wertet die Appliance die Anforderung anhand einer konfigurierten Richtlinie aus. Wenn eine Übereinstimmung gefunden wird, werden die Details an den AppFlow -Kollektor gesendet, der in der Richtlinie konfiguriert ist.