SSL-Richtlinieninfrastruktur für SSL-Interception

Eine Richtlinie verhält sich wie ein Filter für eingehenden Datenverkehr. Richtlinien auf der Citrix Secure Web Gateway (SWG) -Appliance definieren, wie Proxy-Verbindungen und -Anforderungen verwaltet werden. Die Verarbeitung basiert auf den Aktionen, die für diese Richtlinie konfiguriert sind. Das heißt, Daten in Verbindungsanforderungen werden mit einer Regel verglichen, die in der Richtlinie angegeben ist, und die Aktion wird auf Verbindungen angewendet, die der Regel (Ausdruck) entsprechen. Nachdem Sie eine Aktion für die Richtlinie definiert und die Richtlinie erstellt haben, binden Sie sie an einen Proxyserver, sodass sie für den Datenverkehr gilt, der durch diesen Proxyserver fließt.

Eine SSL-Richtlinie für das SSL-Interception wertet eingehenden Datenverkehr aus und wendet eine vordefinierte Aktion auf Anforderungen an, die einer Regel (Ausdruck) entsprechen. Eine Entscheidung zum Abfangen, Umgehen oder Zurücksetzen einer Verbindung wird basierend auf der definierten SSL-Richtlinie getroffen. Sie können eine von drei Aktionen für eine Richtlinie konfigurieren: INTERCEPT, BYPASS oder RESET. Geben Sie beim Erstellen einer Richtlinie eine Aktion an. Um eine Richtlinie in Kraft zu setzen, müssen Sie sie an einen Proxyserver auf der Appliance binden. Um anzugeben, dass eine Richtlinie für das SSL-Interception vorgesehen ist, müssen Sie den Typ (Bindpunkt) als INTERCEPT_REQ angeben, wenn Sie die Richtlinie an einen Proxyserver binden. Wenn Sie die Bindung einer Richtlinie aufheben, müssen Sie den Typ als INTERCEPT_REQ angeben.

Hinweis:

Der Proxyserver kann nur dann abfangen, wenn Sie eine Richtlinie angeben.

Interception des Datenverkehrs kann auf jedem SSL-Handshake-Attribut basieren. Am häufigsten wird die SSL-Domäne verwendet. Die SSL-Domäne wird normalerweise durch die Attribute des SSL-Handshake angezeigt. Hierbei kann es sich um den Wert Server Name Indicator handeln, der aus der SSL-Client-Hallo (falls vorhanden) extrahiert wurde, oder um den aus dem Ursprungsserverzertifikat extrahierten Wert (Server Alternate Name, SAN) handeln. Die SSLi-Richtlinie in Citrix SWG stellt ein spezielles Attribut namens DETECTED_DOMAIN dar, das es den Kunden erleichtert, Interceptionrichtlinien basierend auf der SSL-Domäne aus dem Ursprungsserverzertifikat zu erstellen. Der Kunde kann den Domänennamen mit einer Zeichenfolge, einer URL-Liste (URL-Gruppe oderpatset) oder einer von der Domäne abgeleiteten URL-Kategorie abgleichen.

Erstellen einer SSL-Richtlinie mit der Citrix SWG-CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

add ssl policy <name> -rule <expression> -action <string>
<!--NeedCopy-->

Beispiele:

Die folgenden Beispiele beziehen sich auf Richtlinien mit Ausdrücken, die dasdetected_domain Attribut verwenden, um nach einem Domänennamen zu suchen.

Traffic zu einem Finanzinstitut wie XYZBANK nicht abfangen

add ssl policy pol1 -rule client.ssl.detected_domain.contains("XYZBANK") -action BYPASS
<!--NeedCopy-->

Erlauben Sie einem Benutzer nicht, über das Unternehmensnetzwerk eine Verbindung zu YouTube herzustellen.

add ssl policy pol2 -rule client.ssl.client.ssl.detected_domain.url_categorize(0,0).category.eq ("YouTube") -action RESET
<!--NeedCopy-->

Abfangen des gesamten Benutzerverkehrs.

add ssl policy pol3 –rule true –action INTERCEPT
<!--NeedCopy-->

Wenn der Kunde die detected_domain nicht verwenden möchte, kann er jedes der SSL-Handshake-Attribute verwenden, um die Domäne zu extrahieren und abzuleiten.

Beispielsweise wird kein Domänenname in der SNI-Erweiterung der Client-Hello Message gefunden. Der Domänenname muss dem Ursprungsserverzertifikat entnommen werden. Die folgenden Beispiele beziehen sich auf Richtlinien mit Ausdrücken, die im Antragstellernamen des Ursprungsserverzertifikats nach einem Domänennamen suchen.

Abfangen des gesamten Benutzerverkehrs zu jeder Yahoo Domain.

add ssl policy pol4 -rule client.ssl.origin_server_cert.subject.contains("yahoo") –action INTERCEPT
<!--NeedCopy-->

Abfangen des gesamten Nutzerverkehrs für die Kategorie “Shopping/Retail”.

add ssl policy pol_url_category -rule client.ssl.origin_server_cert.subject.URL_CATEGORIZE(0,0).CATEGORY.eq("Shopping/Retail") -action INTERCEPT
<!--NeedCopy-->

Abfangen des gesamten Benutzerdatenverkehrs an eine nicht kategorisierte URL.

add ssl policy pol_url_category -rule client.ssl.origin_server_cert.subject.url_categorize(0,0).category.eq("Uncategorized") -action INTERCEPT
<!--NeedCopy-->

Die folgenden Beispiele beziehen sich auf Richtlinien, die der Domäne mit einem Eintrag in einem URL-Satz entsprechen.

Fangen Sie den gesamten Benutzerverkehr ab, wenn der Domänenname in SNI mit einem Eintrag im URL-Set “top100” übereinstimmt.

add ssl policy pol_url_set  -rule client.ssl.client_hello.SNI.URLSET_MATCHES_ANY("top100") -action INTERCEPT
<!--NeedCopy-->

Fangen Sie den gesamten Benutzerverkehr des Domänennamens ab, wenn das Ursprungsserverzertifikat mit einem Eintrag im URL-Set “top100” übereinstimmt.

add ssl policy pol_url_set  -rule client.ssl.origin_server_cert.subject.URLSET_MATCHES_ANY("top100") -action INTERCEPT
<!--NeedCopy-->

Erstellen einer SSL-Richtlinie für einen Proxyserver mit der SWG-GUI

  1. Navigieren Sie zu Secure Web Gateway > SSL > Richtlinien.
  2. Klicken Sie auf der Registerkarte SSL-Richtlinien auf Hinzufügen, und geben Sie die folgenden Parameter an:
    • Richtlinienname
    • Richtlinienaktion — Wählen Sie zwischen Abfangen, Umgehen oder Zurücksetzen aus.
    • Ausdruck
  3. Klicken Sie auf Erstellen.

Binden einer SSL-Richtlinie an einen Proxyserver mit der SWG-CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind ssl vserver <vServerName> -policyName <string> -priority <positive_integer> -type  INTERCEPT_REQ
<!--NeedCopy-->

Beispiel:

bind ssl vserver <name> -policyName pol1 -priority 10 -type INTERCEPT_REQ
<!--NeedCopy-->

Binden einer SSL-Richtlinie an einen Proxyserver mit der Citrix SWG-GUI

  1. Navigieren Sie zu Secure Web Gateway > Virtuelle Proxy-Server.
  2. Wählen Sie einen virtuellen Server aus, und klicken Sie auf Bearbeiten.
  3. Klicken Sie unter Erweiterte Einstellungen auf SSL-Richtlinien.
  4. Klicken Sie in das Feld SSL-Richtlinie .
  5. Wählen Sie unter Richtlinieauswählen eine zu bindende Richtlinie aus.
  6. Wählen Sie unter Typdie Option INTERCEPT_REQaus.
  7. Klicken Sie auf Bin den und dann auf OK .

Aufheben der Bindung einer SSL-Richtlinie an einen Proxyserver mit der Befehlszeile

Geben Sie an der Eingabeaufforderung Folgendes ein:

unbind ssl vserver <vServerName> -policyName <string> -type INTERCEPT_REQ
<!--NeedCopy-->

SSL-Ausdrücke, die in SSL-Richtlinien für SWG verwendet werden

Ausdruck Beschreibung
CLIENT.SSL.CLIENT_HELLO.SNI.* Gibt die SNI-Erweiterung in einem Zeichenfolgenformat zurück. Bewerten Sie die Zeichenfolge, um zu sehen, ob sie den angegebenen Text enthält. Beispiel: client.ssl.client_hello.sni.contains ("xyz.com")
CLIENT.SSL.ORIGIN_SERVER_CERT.* Gibt ein Zertifikat zurück, das von einem Back-End-Server empfangen wird, in einem Zeichenfolgenformat. Bewerten Sie die Zeichenfolge, um zu sehen, ob sie den angegebenen Text enthält. Beispiel: client.ssl.origin_server_cert.subject.contains("xyz.com")
CLIENT.SSL.DETECTED_DOMAIN.* Gibt eine Domäne entweder aus der SNI-Erweiterung oder aus dem Ursprungsserverzertifikat in einem Zeichenfolgenformat zurück. Bewerten Sie die Zeichenfolge, um zu sehen, ob sie den angegebenen Text enthält. Beispiel: client.ssl.detected_domain.contains("xyz.com")