ADC

SSL-Interception

Eine NetScaler-Appliance, die für SSL-Abfangen konfiguriert ist, fungiert als Proxy. Es kann SSL/TLS-Verkehr abfangen und entschlüsseln, die unverschlüsselte Anfrage überprüfen und es einem Administrator ermöglichen, Compliance-Regeln und Sicherheitsprüfungen durchzusetzen. Beim SSL-Abfangen wird eine Richtlinie verwendet, die festlegt, welcher Datenverkehr abgefangen, blockiert oder zugelassen werden soll. Beispielsweise darf der Verkehr zu und von Finanzwebsites wie Banken nicht abgefangen werden, aber anderer Datenverkehr kann abgefangen werden, und Websites auf der schwarzen Liste können identifiziert und blockiert werden. Citrix empfiehlt, dass Sie eine generische Richtlinie zum Abfangen des Datenverkehrs und spezifischere Richtlinien konfigurieren, um einen Teil des Datenverkehrs zu Bypass.

Der Client und der Proxy richten einen HTTPS/TLS-Handshake ein. Der Proxy richtet einen weiteren HTTPS/TLS-Handshake mit dem Server ein und empfängt das Serverzertifikat. Der Proxy überprüft das Serverzertifikat im Namen des Clients und überprüft außerdem die Gültigkeit des Serverzertifikats mithilfe des Online Certificate Status Protocol (OCSP). Es regeneriert das Serverzertifikat, signiert es mit dem Schlüssel des auf der Appliance installierten CA-Zertifikats und präsentiert es dem Client. Daher wird ein Zertifikat zwischen dem Client und der NetScaler-Appliance und ein anderes Zertifikat zwischen der Appliance und dem Back-End-Server verwendet.

Wichtig

Das CA-Zertifikat, das zum Signieren des Serverzertifikats verwendet wird, muss auf allen Client-Geräten vorinstalliert sein, damit der Client dem neu generierten Serverzertifikat vertraut.

Bei abgefangenem HTTPS-Verkehr entschlüsselt der Proxyserver den ausgehenden Datenverkehr, greift auf die Klartext-HTTP-Anfrage zu und kann jede Layer-7-Anwendung zur Verarbeitung des Datenverkehrs verwenden, indem er beispielsweise die Klartext-URL untersucht und den Zugriff auf der Grundlage der Unternehmensrichtlinie und der URL-Reputation zulässt oder blockiert. Wenn die Richtlinienentscheidung darin besteht, den Zugriff auf den Originalserver zuzulassen, leitet der Proxyserver die erneut verschlüsselte Anfrage an den Zieldienst (auf dem Ursprungsserver) weiter. Der Proxy entschlüsselt die Antwort vom Ursprungsserver, greift auf die Klartext-HTTP-Antwort zu und wendet optional alle Richtlinien auf die Antwort an. Der Proxy verschlüsselt die Antwort dann erneut und leitet sie an den Client weiter. Wenn die Richtlinienentscheidung darin besteht, die Anfrage an den Ursprungsserver zu blockieren, kann der Proxy eine Fehlerantwort, z. B. HTTP 403, an den Client senden.

Um SSL-Interception durchzuführen, müssen Sie zusätzlich zu dem zuvor konfigurierten Proxyserver Folgendes auf der ADC-Appliance konfigurieren:

  • SSL-Profil
  • SSL-Richtlinie
  • CA-Zertifikatsspeicher
  • SSL-Fehler beim automatischen Lernen und Caching

Hinweis:

HTTP/2-Verkehr wird von der SSL-Interception-Funktion nicht abgefangen.

Speicher für SSL-Abhörzertifikate

Ein SSL-Zertifikat, das Teil einer SSL-Transaktion ist, ist ein digitales Datenformular (X509), das ein Unternehmen (Domain) oder eine Einzelperson identifiziert. Ein SSL-Zertifikat wird von einer Zertifizierungsstelle (CA) ausgestellt. Eine CA kann privat oder öffentlich sein. Von öffentlichen Zertifizierungsstellen wie Verisign ausgestellte Zertifikate werden von Anwendungen, die SSL-Transaktionen durchführen, als vertrauenswürdig eingestuft. Diese Anwendungen führen eine Liste von Zertifizierungsstellen, denen sie vertrauen.

Als Forward-Proxy führt die ADC-Appliance die Verschlüsselung und Entschlüsselung des Datenverkehrs zwischen einem Client und einem Server durch. Es fungiert als Server für den Client (Benutzer) und als Client für den Server. Bevor eine Appliance HTTPS-Verkehr verarbeiten kann, muss sie die Identität eines Servers überprüfen, um betrügerische Transaktionen zu verhindern. Daher muss die Appliance als Client für den Ursprungsserver das Ursprungsserverzertifikat überprüfen, bevor sie es akzeptiert. Um ein Serverzertifikat zu überprüfen, müssen alle Zertifikate (z. B. Root- und Zwischenzertifikate), die zum Signieren und Ausstellen des Serverzertifikats verwendet werden, auf der Appliance vorhanden sein. Ein Standardsatz von Zertifizierungsstellenzertifikaten ist auf einer Appliance vorinstalliert. Die Appliance kann diese Zertifikate verwenden, um fast alle gängigen Ursprungs-Serverzertifikate zu überprüfen. Dieser Standardsatz kann nicht geändert werden. Wenn für Ihre Bereitstellung jedoch mehr CA-Zertifikate erforderlich sind, können Sie ein Paket solcher Zertifikate erstellen und das Paket in die Appliance importieren. Ein Paket kann auch ein einzelnes Zertifikat enthalten.

Wenn Sie ein Zertifikatspaket in die Appliance importieren, lädt die Appliance das Paket vom Remote-Standort herunter und installiert es auf der Appliance, nachdem überprüft wurde, dass das Paket nur Zertifikate enthält. Sie müssen ein Zertifikatspaket anwenden, bevor Sie es zur Validierung eines Serverzertifikats verwenden können. Sie können ein Zertifikatspaket auch exportieren, um es zu bearbeiten oder als Backup an einem Offline-Ort zu speichern.

Importieren Sie ein CA-Zertifikatspaket und wenden Sie es mithilfe der CLI auf der Appliance an

Geben Sie an der Eingabeaufforderung Folgendes ein:

import ssl certBundle <name> <src>
apply ssl certBundle <name>
<!--NeedCopy-->
show ssl certBundle
<!--NeedCopy-->

ARGUMENTE:

Nome:

Name, der dem importierten Zertifikatspaket zugewiesen werden soll. Muss mit einem alphanumerischen ASCII-Zeichen oder Unterstrich (_) beginnen und darf nur alphanumerische ASCII-Zeichen, Unterstriche, Hash (#), Punkt (.), Leerzeichen, Doppelpunkt (:), at (@), Gleich (=) und Bindestrich (-) enthalten. Die folgende Anforderung gilt nur für die CLI:

Wenn der Name ein oder mehrere Leerzeichen enthält, setzen Sie den Namen in doppelte oder einfache Anführungszeichen (z. B. „meine Datei“ oder „meine Datei“).

Maximale Länge: 31

src:

URL, die das Protokoll, den Host und den Pfad einschließlich des Dateinamens zum Zertifikatspaket angibt, das importiert oder exportiert werden soll. Beispiel: http://www.example.com/cert_bundle_file.

HINWEIS: Der Import schlägt fehl, wenn sich das zu importierende Objekt auf einem HTTPS-Server befindet, für den Zugriff eine Client-Zertifikatsauthentifizierung erforderlich ist.

Maximale Länge: 2047

Beispiel:

import ssl certbundle swg-certbundle http://www.example.com/cert_bundle
apply ssl certBundle swg-certbundle
<!--NeedCopy-->
show ssl certbundle

            Name : swg-certbundle(Inuse)

            URL : http://www.example.com/cert_bundle

    Done
<!--NeedCopy-->

Importieren Sie mithilfe der GUI ein CA-Zertifikatspaket und wenden Sie es auf der Appliance an

  1. Navigieren Sie zu Sicherheit > SSL Forward Proxy > Erste Schritte > Zertifikatpakete.
  2. Führen Sie einen der folgenden Schritte aus:
    • Wählen Sie ein Zertifikatspaket aus der Liste aus.
    • Um ein Zertifikatpaket hinzuzufügen, klicken Sie auf “+” und geben Sie einen Namen und eine Quell-URL an. Klicken Sie auf OK.
  3. Klicken Sie auf OK.

Entfernen Sie mithilfe der CLI ein CA-Zertifikatspaket von der Appliance

Geben Sie an der Eingabeaufforderung Folgendes ein:

remove certBundle <cert bundle name>
<!--NeedCopy-->

Beispiel:

remove certBundle mytest-cacert
<!--NeedCopy-->

Exportieren Sie mithilfe der CLI ein CA-Zertifikatspaket aus der Appliance

Geben Sie an der Eingabeaufforderung Folgendes ein:

export certBundle <cert bundle name> <Path to export>
<!--NeedCopy-->

ARGUMENTE:

Nome:

Name, der dem importierten Zertifikatspaket zugewiesen werden soll. Muss mit einem alphanumerischen ASCII-Zeichen oder Unterstrich (_) beginnen und darf nur alphanumerische ASCII-Zeichen, Unterstriche, Hash (#), Punkt (.), Leerzeichen, Doppelpunkt (:), at (@), Gleich (=) und Bindestrich (-) enthalten. Die folgende Anforderung gilt nur für die CLI:

Wenn der Name ein oder mehrere Leerzeichen enthält, setzen Sie den Namen in doppelte oder einfache Anführungszeichen (z. B. „meine Datei“ oder „meine Datei“).

Maximale Länge: 31

src:

URL, die das Protokoll, den Host und den Pfad einschließlich des Dateinamens zum Zertifikatspaket angibt, das importiert oder exportiert werden soll. Beispiel: http://www.example.com/cert_bundle_file.

HINWEIS: Der Import schlägt fehl, wenn sich das zu importierende Objekt auf einem HTTPS-Server befindet, für den Zugriff eine Client-Zertifikatsauthentifizierung erforderlich ist.

Maximale Länge: 2047

Beispiel:

export certBundle mytest-cacert http://192.0.2.20/
<!--NeedCopy-->

Ein CA-Zertifikatspaket aus dem Mozilla CA-Zertifikatsspeicher importieren, anwenden und verifizieren

Geben Sie an der Eingabeaufforderung Folgendes ein:

> import certbundle mozilla_public_ca https://curl.haxx.se/ca/cacert.pem
Done
<!--NeedCopy-->

Um das Paket anzuwenden, geben Sie Folgendes ein:

> apply certbundle mozilla_public_ca
Done
<!--NeedCopy-->

Um zu überprüfen, welches Zertifikatspaket verwendet wird, geben Sie Folgendes ein:

> sh certbundle | grep mozilla
                Name : mozilla_public_ca (Inuse)
<!--NeedCopy-->

Einschränkungen

  • Zertifikatpakete werden in einem Cluster-Setup oder auf einer partitionierten Appliance nicht unterstützt.
  • Das TLSv1.3-Protokoll wird mit SSL Forward Proxy nicht unterstützt.

SSL-Richtlinieninfrastruktur für SSL-Abfangen

Eine Richtlinie wirkt wie ein Filter für eingehenden Verkehr. Richtlinien auf der ADC-Appliance helfen dabei, zu definieren, wie Proxyverbindungen und Anfragen verwaltet werden. Die Verarbeitung basiert auf den Aktionen, die für diese Richtlinie konfiguriert sind. Das heißt, Daten in Verbindungsanfragen werden mit einer in der Richtlinie angegebenen Regel verglichen, und die Aktion wird auf Verbindungen angewendet, die der Regel (Ausdruck) entsprechen. Nachdem Sie eine Aktion definiert haben, die der Richtlinie zugewiesen werden soll, und die Richtlinie erstellt haben, müssen Sie sie an einen Proxyserver binden, damit sie für den Datenverkehr gilt, der über 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. Die Entscheidung, eine Verbindung abzufangen, zu Bypass oder zurückzusetzen, wird auf der Grundlage der definierten SSL-Richtlinie getroffen. Sie können eine von drei Aktionen für eine Richtlinie konfigurieren: ABFANGEN, BYPASS oder RESET. Sie müssen eine Aktion angeben, wenn Sie eine Richtlinie erstellen. 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-Abfangen vorgesehen ist, müssen Sie den Typ (Bindungspunkt) 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 keine Entscheidung zum Abfangen treffen, es sei denn, Sie geben eine Richtlinie an.

Das Abfangen des Datenverkehrs kann auf einem beliebigen SSL-Handshake-Attribut basieren. Die am häufigsten verwendete ist die SSL-Domain. Die SSL-Domain wird normalerweise durch die Attribute des SSL-Handshakes 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 SSL-Abhörrichtlinie enthält ein spezielles Attribut, DETECTED_DOMAIN. Dieses Attribut erleichtert es den Kunden, Abhörrichtlinien 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 über die 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 das Attribut detected_domain verwenden, um nach einem Domänennamen zu suchen.

Fangen Sie keinen Datenverkehr zu einem Finanzinstitut wie der XYZBANK ab

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

Erlaube einem Nutzer nicht, vom Unternehmensnetzwerk aus 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-->

Den gesamten Benutzerverkehr abfangen

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 Domain zu extrahieren und abzuleiten.

Beispielsweise wird in der SNI-Erweiterung der Client-Hello-Nachricht kein Domainname gefunden. Der Domainname muss dem Original-Serverzertifikat entnommen werden. Die folgenden Beispiele beziehen sich auf Richtlinien mit Ausdrücken, die nach einem Domainnamen im Betreffnamen des Originalserverzertifikats suchen.

Den gesamten Benutzerverkehr zu jeder Yahoo-Domain abfangen

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

Den gesamten Benutzerverkehr für die Kategorie „Einkaufen/Einzelhandel“ abfangen

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

Den gesamten Benutzerverkehr auf eine nicht kategorisierte URL abfangen

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 die Domain mit einem Eintrag in einem URL-Satz abgleichen.

Fangen Sie den gesamten Benutzerverkehr ab, wenn der Domainname in SNI mit einem Eintrag im URL-Satz „top100“ übereinstimmt

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

Abfangen des gesamten Benutzerdatenverkehrs des Domänennamens, wenn das Ursprungsserverzertifikat mit einem Eintrag im URL-Satz 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 GUI

  1. Navigieren Sie zu Traffic Management > 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, Bypass oder Zurücksetzen.
    • Ausdruck
  3. Klicken Sie auf Erstellen.

Binden Sie eine SSL-Richtlinie mithilfe der CLI an einen Proxyserver

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 Sie mithilfe der GUI eine SSL-Richtlinie an einen Proxyserver

  1. Navigieren Sie zu Sicherheit > SSL Forward Proxy > Virtuelle Proxyserver.
  2. Wählen Sie einen virtuellen Server aus und klicken Sie auf Bearbeiten.
  3. Klicken Sie in Erweiterte Einstellungenauf SSL-Richtlinien.
  4. Klicken Sie in das Feld SSL-Richtlinie .
  5. Wählen Sie unter Richtlinieauswählen eine Richtlinie aus, die gebunden werden soll.
  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 über die Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

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

In SSL-Richtlinien verwendete SSL-Ausdrücke

Ausdruck Beschreibung
CLIENT.SSL.CLIENT_HELLO.SNI.* Gibt die SNI-Erweiterung in einem Zeichenkettenformat zurück. Wertet die Zeichenfolge aus, 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, das von einem Back-End-Server empfangen wurde, in einem Zeichenfolgenformat zurück. Wertet die Zeichenfolge aus, 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 Domain, entweder aus der SNI-Erweiterung oder aus dem Originalserverzertifikat, in einem Zeichenfolgenformat zurück. Wertet die Zeichenfolge aus, um zu sehen, ob sie den angegebenen Text enthält. Beispiel: client.ssl.detected_domain.contains ()“xyz.com”

SSL-Fehler beim automatischen Lernen

Die Appliance fügt der SSL-Bypass-Liste eine Domain hinzu, wenn der Lernmodus aktiviert ist. Der Lernmodus basiert auf der SSL-Warnmeldung, die entweder von einem Client oder einem Originalserver empfangen wurde. Das heißt, das Lernen hängt davon ab, dass der Client oder Server eine Warnmeldung sendet. Es erfolgt kein Lernen, wenn keine Warnmeldung gesendet wird. Das Gerät erkennt, ob eine der folgenden Bedingungen erfüllt ist:

  1. Eine Anfrage für ein Client-Zertifikat wird vom Server empfangen.

  2. Im Rahmen des Handshakes wird eine der folgenden Warnungen empfangen:

    • SCHLECHTES ZERTIFIKAT
    • NICHT UNTERSTÜTZTES ZERTIFIKAT
    • ZERTIFIKAT_GESPERRT
    • ZERTIFIKAT_ABGELAUFEN
    • ZERTIFIKAT_UNBEKANNT
    • UNKNOWN_CA (Wenn ein Client das Anpinnen verwendet, sendet er diese Warnmeldung, wenn er ein Serverzertifikat erhält.)
    • HANDSHAKE_FEHLER

Um das Lernen zu aktivieren, müssen Sie den Fehlercache aktivieren und den für das Lernen reservierten Speicher angeben.

Ermöglichen Sie das Lernen mithilfe der GUI

  1. Navigieren Sie zu Traffic Management > SSL.

  2. Klicken Sie in den Einstellungenauf Erweiterte SSL-Einstellungen ändern.

  3. Wählen Sie unter SSL Interceptiondie Option SSL Interception Error Cacheaus.

  4. Geben Sie unter SSL Interception Max Error Cache Memoryden Speicher (in Byte) an, der reserviert werden soll.

    Fehler-Cache

  5. Klicken Sie auf OK.

Ermöglichen Sie das Lernen mithilfe der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

set ssl parameter -ssliErrorCache ( ENABLED | DISABLED ) -ssliMaxErrorCacheMem <positive_integer>
<!--NeedCopy-->

Argumente:

SSLI-Fehlercache:

Aktivieren oder deaktivieren Sie dynamisches Lernen und speichern Sie die erlernten Informationen im Cache, um spätere Entscheidungen zum Abfangen oder Bypass von Anfragen zu treffen. Wenn diese Option aktiviert ist, führt die Appliance eine Cache-Suche durch, um zu entscheiden, ob die Anfrage Bypass werden soll.

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

ssliMaxErrorCachemem:

Geben Sie den maximalen Speicher in Byte an, mit dem die gelernten Daten zwischengespeichert werden können. Dieser Speicher wird als LRU-Cache verwendet, sodass die alten Einträge durch neue Einträge ersetzt werden, nachdem das eingestellte Speicherlimit ausgeschöpft ist. Ein Wert von 0 bestimmt automatisch das Limit.

Standardwert: 0

Mindestwert: 0

maximaler Wert: 4294967294

SSL-Profil

Ein SSL-Profil ist eine Sammlung von SSL-Einstellungen wie Verschlüsselungen und Protokollen. Ein Profil ist hilfreich, wenn Sie gemeinsame Einstellungen für verschiedene Server haben. Anstatt für jeden Server dieselben Einstellungen anzugeben, können Sie ein Profil erstellen, die Einstellungen im Profil angeben und das Profil dann an verschiedene Server binden. Wenn kein benutzerdefiniertes Frontend-SSL-Profil erstellt wird, ist das Standard-Frontend-Profil an clientseitige Entitäten gebunden. Mit diesem Profil können Sie Einstellungen für die Verwaltung der clientseitigen Verbindungen konfigurieren.

Für das SSL-Abfangen müssen Sie ein SSL-Profil erstellen und das SSL-Abfangen im Profil aktivieren. Eine Standard-Verschlüsselungsgruppe ist an dieses Profil gebunden, Sie können jedoch weitere Verschlüsselungen konfigurieren, die zu Ihrem Einsatz passen. Binden Sie ein SSL-Interception-CA-Zertifikat an dieses Profil und binden Sie das Profil dann an einen Proxyserver. Für das Abfangen von SSL sind die wesentlichen Parameter in einem Profil diejenigen, die für die folgenden Aktionen verwendet werden:

  • Überprüfen Sie den OCSP-Status des Original-Serverzertifikats.
  • Löse eine Neuverhandlung des Clients aus, wenn der Ursprungsserver eine Neuverhandlung anfordert.
  • Überprüfen Sie das Originalserverzertifikat, bevor Sie die Front-End-SSL-Sitzung wiederverwenden.

Verwenden Sie das Standard-Back-End-Profil, wenn Sie mit den Originalservern kommunizieren. Stellen Sie alle serverseitigen Parameter, wie z. B. Cipher Suites, im Standard-Back-End-Profil ein. Ein benutzerdefiniertes Backend-Profil wird nicht unterstützt.

Beispiele für die am häufigsten verwendeten SSL-Einstellungen finden Sie unter „Beispielprofil“ am Ende dieses Abschnitts.

Die Verschlüsselungs-/Protokollunterstützung unterscheidet sich je nach internem und externem Netzwerk. In den folgenden Tabellen ist die Verbindung zwischen den Benutzern und einer ADC-Appliance das interne Netzwerk. Das externe Netzwerk befindet sich zwischen der Appliance und dem Internet.

SSL-Profilbild

Tabelle 1: Verschlüsselungs-/Protokoll -Unterstützungsmatrix für das interne Netzwerk

Siehe Tabelle 1-Support für virtuelle Server/Frontend-Service/internen Dienst in Ciphers, die auf den NetScaler Appliances verfügbar sind.

Tabelle 2: Verschlüsselung/Protokoll-Unterstützungsmatrix für das externe Netzwerk

Siehe Tabelle 2-Unterstützung für Back-End-Dienste in Ciphers, die auf den NetScaler Appliances verfügbar sind.

Hinzufügen eines SSL-Profils und Aktivieren der SSL-Interception mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

add ssl profile <name> -sslinterception ENABLED -ssliReneg ( ENABLED | DISABLED ) -ssliOCSPCheck ( ENABLED | DISABLED ) -ssliMaxSessPerServer <positive_integer>

Argumente:

SSL-Abfangen:

Aktiviert oder deaktiviert das Abfangen von SSL-Sitzungen.

Mögliche Werte: ENABLED, DISABLED

Standardwert: DISABLED

SSLI Rene sagt:

Aktiviert oder deaktiviert das Auslösen einer Neuverhandlung durch den Client, wenn eine Neuverhandlungsanfrage vom Originalserver eingeht.

Mögliche Werte: ENABLED, DISABLED

Standardwert: ENABLED

SSLIOCSP-Prüfung:

Aktiviere oder deaktiviere die OCSP-Prüfung für ein Originalserverzertifikat.

Mögliche Werte: ENABLED, DISABLED

Standardwert: ENABLED

SSLIMax SSESpro Server:

Maximale Anzahl von SSL-Sitzungen, die pro dynamischem Ursprungsserver zwischengespeichert werden sollen. Für jede SNI-Erweiterung, die vom Client in einer Client-Hello-Nachricht empfangen wird, wird eine eindeutige SSL-Sitzung erstellt. Die passende Sitzung wird für die Wiederverwendung von Serversitzungen verwendet.

Standardwert: 10

Mindestwert: 1

Maximalwert: 1000

Beispiel:

add ssl profile swg_ssl_profile  -sslinterception ENABLED

Done

sh ssl profile swg_ssl_profile

1)    Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Server Cert Verification for Client Reuse: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

Done
<!--NeedCopy-->

Binden Sie ein SSL-Interception-CA-Zertifikat mithilfe der CLI an ein SSL-Profil

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind ssl profile <name> -ssliCACertkey <ssli-ca-cert>

Beispiel:

bind ssl profile swg_ssl_profile -ssliCACertkey swg_ca_cert

Done

sh ssl profile swg_ssl_profile

1)            Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Server Cert Verification for Client Reuse: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

1)            SSL Interception CA CertKey Name: swg_ca_cert

Done
<!--NeedCopy-->

Binden Sie ein SSL-Interception-CA-Zertifikat mithilfe der GUI an ein SSL-Profil

  1. Navigieren Sie zu System > Profile > SSL-Profil.

  2. Klicken Sie auf Hinzufügen.

  3. Geben Sie einen Namen für das Profil an.

  4. Aktivieren Sie das Abfangen von SSL-Sitzungen.

  5. Klicken Sie auf OK.

  6. Klicken Sie in den Erweiterten Einstellungenauf Zertifikatsschlüssel.

  7. Geben Sie einen SSL-Interception-CA-Zertifikatsschlüssel an, der an das Profil gebunden werden soll.

  8. Klicken Sie auf Auswählen und dann auf Binden.

  9. Konfigurieren Sie optional Verschlüsselungen, die zu Ihrem Einsatz passen.

    • Klicken Sie auf das Bearbeitungssymbol und dann auf Hinzufügen.
    • Wählen Sie eine oder mehrere Verschlüsselungsgruppen aus und klicken Sie auf den Rechtspfeil.
    • Klicken Sie auf OK.
  10. Klicken Sie auf Fertig.

Binden Sie ein SSL-Profil mithilfe der GUI an einen Proxyserver

  1. Navigieren Sie zu Security >SSL Forward Proxy > Proxy Virtual Serversund fügen Sie einen Server hinzu oder wählen Sie einen Server aus, den Sie ändern möchten.
  2. Klicken Sie im SSL-Profilauf das Bearbeitungssymbol.
  3. Wählen Sie in der SSL-Profilliste das SSL-Profil aus, das Sie zuvor erstellt haben.
  4. Klicken Sie auf OK.
  5. Klicken Sie auf Fertig.

Beispielprofil:

Name: swg_ssl_profile (Front-End)

                SSLv3: DISABLED               TLSv1.0: ENABLED  TLSv1.1: ENABLED  TLSv1.2: ENABLED

                Client Auth: DISABLED

                Use only bound CA certificates: DISABLED

                Strict CA checks:                               NO

                Session Reuse: ENABLED                              Timeout: 120 seconds

                DH: DISABLED

                DH Private-Key Exponent Size Limit: DISABLED   Ephemeral RSA: ENABLED                            Refresh Count: 0

                Deny SSL Renegotiation                                ALL

                Non FIPS Ciphers: DISABLED

                Cipher Redirect: DISABLED

                SSL Redirect: DISABLED

                Send Close-Notify: YES

                Strict Sig-Digest Check: DISABLED

                Push Encryption Trigger: Always

                PUSH encryption trigger timeout:             1 ms

                SNI: DISABLED

                OCSP Stapling: DISABLED

                Strict Host Header check for SNI enabled SSL sessions:                   NO

                Push flag:            0x0 (Auto)

                SSL quantum size:                            8 kB

                Encryption trigger timeout           100 mS

                Encryption trigger packet count:               45

                Subject/Issuer Name Insertion Format: Unicode

                SSL Interception: ENABLED

                SSL Interception OCSP Check: ENABLED

                SSL Interception End to End Renegotiation: ENABLED

                SSL Interception Maximum Reuse Sessions per Server:  10

                Session Ticket: DISABLED              Session Ticket Lifetime: 300 (secs)

                HSTS: DISABLED

                HSTS IncludeSubDomains: NO

                HSTS Max-Age: 0

                ECC Curve: P_256, P_384, P_224, P_521

1)            Cipher Name: DEFAULT Priority :1

                Description: Predefined Cipher Alias

1)            SSL Interception CA CertKey Name: swg_ca_cert
<!--NeedCopy-->
SSL-Interception