ADC
Danke für das Feedback

Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)

Integrierte SSL-Aktionen und benutzerdefinierte Aktionen

Sofern Sie nicht nur die in Ihren Richtlinien integrierten Aktionen benötigen, müssen Sie die Aktionen erstellen, bevor Sie die Richtlinien erstellen. Anschließend können Sie die Aktionen angeben, wenn Sie die Richtlinien erstellen. Es gibt zwei Arten von integrierten Aktionen: Kontrollaktionen und Datenaktionen. Sie verwenden Kontrollaktionen in Kontrollrichtlinien und Datenaktionen in Datenrichtlinien.

Die integrierten Steueraktionen sind:

  • doClientAuth — Führt die Authentifizierung des Client-Zertifikats durch. (Nicht unterstützt für TLS1.3)
  • noClientAuth — Führen Sie keine Authentifizierung mit dem Client-Zertifikat durch. (Nicht unterstützt für TLS1.3)

Die integrierten Datenaktionen sind:

  • ZURÜCKSETZEN — Beenden Sie die Verbindung, indem Sie ein RST-Paket an den Client senden.
  • Löschen — Löscht alle Pakete vom Client. Die Verbindung bleibt geöffnet, bis der Client sie schließt.
  • NOOP — leitet das Paket weiter, ohne eine Operation daran durchzuführen.

Hinweis: Alle von der Client-Authentifizierung abhängigen Aktionen wie ClientCertVerification und SSLLogProfile werden vom TLS 1.3-Protokoll nicht unterstützt.

Sie können benutzerdefinierte Datenaktionen erstellen. Wenn Sie die Client-Authentifizierung aktivieren, können Sie eine SSL-Aktion erstellen, um Client-Zertifikatsdaten in den Anforderungsheader einzufügen, bevor die Anfrage an den Webserver weitergeleitet wird.

Wenn eine politische Bewertung zu einem undefinierten Zustand führt, wird eine UNDEF-Aktion durchgeführt. Sie können entweder für eine Datenrichtlinie oder eine Kontrollrichtlinie RESET, DROP oder NOOP als UNDEF-Aktion angeben. Für eine Kontrollrichtlinie haben Sie auch die Möglichkeit, DOCLIENTAUTH oder NOCLIENTAUTH anzugeben.

Beispiele für integrierte Aktionen in einer Richtlinie

Wenn der Client im folgenden Beispiel eine andere Chiffre als eine Verschlüsselung der Kategorie EXPORT sendet, fordert die NetScaler-Appliance eine Client-Authentifizierung an. Der Kunde muss ein gültiges Zertifikat für eine erfolgreiche Transaktion vorlegen.

add ssl policy pol1 -rule CLIENT.SSL.CIPHER_EXPORTABLE.NOT -reqAction DOCLIENTAUTH

In den folgenden Beispielen wird davon ausgegangen, dass die Client-Authentifizierung aktiviert ist.

Wenn die Version im vom Benutzer bereitgestellten Zertifikat mit der Version in der Richtlinie übereinstimmt, wird nichts unternommen und das Paket wird weitergeleitet:

add ssl policy pol1 -rule CLIENT.SSL.CLIENT_CERT.VERSION.EQ(2) -reqAction NOOP

Wenn die Version im vom Benutzer bereitgestellten Zertifikat mit der Version in der Richtlinie übereinstimmt, wird die Verbindung unterbrochen:

add ssl policy pol1 -rule CLIENT.SSL.CLIENT_CERT.VERSION.EQ(2) -reqAction DROP

Wenn die Version im vom Benutzer bereitgestellten Zertifikat mit der Version in der Richtlinie übereinstimmt, wird die Verbindung zurückgesetzt:

add ssl policy pol1 -rule CLIENT.SSL.CLIENT_CERT.VERSION.EQ(2) -reqAction RESET

Überprüfung von Client-Zertifikaten mit richtlinienbasierter Client-Authentifizierung

Sie können die Überprüfung des Client-Zertifikats auf „Obligatorisch“ oder „Option“ setzen, wenn Sie die richtlinienbasierte Client-Authentifizierung konfiguriert haben. Die Standardeinstellung ist obligatorisch.

Stellen Sie die Überprüfung des Client-Zertifikats mithilfe der CLI auf optional ein

Geben Sie in der Befehlszeile Folgendes ein:

add ssl action <name> ((-clientAuth ( DOCLIENTAUTH | NOCLIENTAUTH ) [-clientCertVerification ( Mandatory | Optional )]

Beispiel:

add ssl action sslact -clientauth DOCLIENTAUTH -clientcertverification OPTIONAL

Stellen Sie die Überprüfung des Client-Zertifikats mithilfe der GUI auf optional ein

  1. Navigieren Sie zu Traffic Management > SSL > Richtlinien.

  2. Klicken Sie auf der Registerkarte SSL-Aktionen auf Hinzufügen.

  3. Geben Sie einen Namen an und wählen Sie in der Liste der Client-Zertifikatsüberprüfung die Option Optionalaus.

Benutzerdefinierte SSL-Aktionen

Zusätzlich zu den integrierten Aktionen können Sie je nach Bereitstellung auch andere SSL-Aktionen konfigurieren. Diese Aktionen werden als benutzerdefinierte Aktionen bezeichnet.

Konfigurieren Sie eine benutzerdefinierte SSL-Aktion mithilfe der CLI

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

add SSL action <name> -clientAuth(DOCLIENTAUTH | NOCLIENTAUTH) -clientCert (ENABLED | DISABLED) certHeader <string> -clientHeader <string> -clientCertSerialNumber (ENABLED | DISABLED) -certSerialHeader <string> -clientCertSubject (ENABLED | DISABLED) -certSubjectHeader <string> -clientCertHash (ENABLED | DISABLED) -certHashHeader <string> -clientCertIssuer (ENABLED | DISABLED) -certIssuerHeader <string> -sessionID (ENABLED | DISABLED) -sessionIDheader <string> -cipher (ENABLED | DISABLED) -cipherHeader <string> -clientCertNotBefore (ENABLED | DISABLED) -certNotBeforeHeader <string> -clientCertNotAfter (ENABLED | DISABLED) -certNotAfterHeader <string> -OWASupport (ENABLED | DISABLED)
show ssl action [<name>]

Beispiel:

add ssl action Action-SSL-ClientCert -clientCert ENABLED -certHeader "X-Client-Cert"
show ssl action Action-SSL-ClientCert 1) Name: Action-SSL-ClientCert Data Insertion Action: Cert Header: ENABLED Cert Tag: X-Client-Cert Done

Konfigurieren Sie eine benutzerdefinierte SSL-Aktion mithilfe der GUI

Navigieren Sie zu Traffic Management > SSL > Richtlinien, und klicken Sie auf der Registerkarte Aktionen auf Hinzufügen.

Konfigurieren Sie eine SSL-Aktion, um den Client-Verkehr an einen anderen virtuellen Server weiterzuleiten

Administratoren können eine SSL-Aktion konfigurieren, um den auf einem virtuellen SSL-Server empfangenen Client-Datenverkehr an einen anderen virtuellen Server weiterzuleiten, um SSL-Offloading zu vermeiden. Oder zum Beenden der Verbindung auf der ADC-Appliance. Dieser virtuelle Server kann vom Typ SSL, TCP oder SSL_BRIDGE sein. Administratoren können sich beispielsweise dafür entscheiden, die Anfrage zur weiteren Bearbeitung an einen anderen virtuellen Server weiterzuleiten, anstatt die Verbindung zu beenden, wenn einer der folgenden Fälle vorliegt:

  • Die Appliance hat kein Zertifikat.
  • Die Appliance unterstützt keine bestimmte Chiffre.

Um dies zu erreichen, wird ein neuer Bindpunkt ‘CLIENTHELLO_REQ’ hinzugefügt, um den Client-Verkehr auszuwerten, wenn ein Client-Hallo empfangen wird. Wenn die Richtlinie, die an den virtuellen Server gebunden ist, der den Client-Verkehr empfängt, nach dem Parsen des Client-Hello als wahr bewertet wird, wird der Datenverkehr an einen anderen virtuellen Server weitergeleitet. Wenn dieser virtuelle Server vom Typ SSL ist, führt er den Handshake durch. Wenn dieser virtuelle Server vom Typ TCP oder SSL_BRIDGE ist, führt der Backend-Server den Handshake durch.

In Version 12.1-49.x werden nur die Vorwärts- und Reset-Aktionen für den CLIENTHELLO_REQ-Bindpunkt unterstützt. Die folgenden Ausdruckspräfixe sind verfügbar:

  • CLIENT.SSL.CLIENT_HELLO.CIPHERS.HAS_HEXCODE
  • CLIENT.SSL.CLIENT_HELLO.CLIENT_VERSION
  • CLIENT.SSL.CLIENT_HELLO.IS_RENEGOTIATE
  • CLIENT.SSL.CLIENT_HELLO.IS_REUSE
  • CLIENT.SSL.CLIENT_HELLO.IS_SCSV
  • CLIENT.SSL.CLIENT_HELLO.IS_SESSION_TICKET
  • CLIENT.SSL.CLIENT_HELLO.LENGTH
  • CLIENT.SSL.CLIENT_HELLO.SNI
  • CLIENT.SSL.CLIENT_HELLO.ALPN.HAS_NEXTPROTOCOL (from release 13.0 build 61.x)

Eine Beschreibung dieser Präfixe finden Sie unter Erweiterte Richtlinienausdrücke: Parsing SSL.

Dem Befehl add SSL action wird ein Parameter forward hinzugefügt, und dem Befehl bind ssl vserver wird ein neuer Bindpunkt CLIENTHELLO_REQ hinzugefügt.

Konfiguration mit der CLI

Geben Sie in der Befehlszeile Folgendes ein:

add ssl action <name> -forward <virtual server name> add ssl policy <name> -rule <expression> -action <string> bind ssl vserver <vServerName> -policyName <string> -priority <positive_integer> -type <type>

BEISPIEL:

add ssl action act1 -forward v2 add ssl policy pol1 -rule client.ssl.client_hello.ciphers.has_hexcode(0x002f) -action act1 bind ssl vserver v1 -policyName pol1 -priority 1 -type CLIENTHELLO_REQ

Konfiguration mit der GUI

Navigieren Sie zu Traffic Management > SSL > Richtlinien.

SSL-Aktion erstellen:

  1. Klicken Sie unter SSL-Aktionenauf Hinzufügen.
  2. Geben Sie unter SSL-Aktion erstelleneinen Namen für die Aktion an.
  3. Wählen Sie unter Forward Action Virtual Servereinen vorhandenen virtuellen Server aus oder fügen Sie einen neuen virtuellen Server hinzu, an den der Datenverkehr weitergeleitet werden soll.
  4. Stellen Sie optional weitere Parameter ein.
  5. Klicken Sie auf Erstellen.

SSL-Richtlinie erstellen:

  1. Klicken Sie unter SSL-Richtlinienauf Hinzufügen.
  2. Geben Sie unter SSL-Richtlinie erstelleneinen Namen für die Richtlinie an.
  3. Wählen Sie unter Aktiondie Aktion aus, die Sie zuvor erstellt haben.
  4. Geben Sie im Ausdruckseditordie auszuwertende Regel ein.
  5. Klicken Sie auf Erstellen.

Erstellen oder fügen Sie einen virtuellen Server und eine Bindungsrichtliniehinzu:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
  2. Fügen Sie einen virtuellen Server hinzu oder wählen Sie ihn aus.
  3. Klicken Sie in Erweiterte Einstellungenauf SSL-Richtlinien.
  4. Klicken Sie in den Abschnitt SSL-Richtlinie.
  5. Wählen Sie unter Richtlinieauswählen die Richtlinie aus, die Sie zuvor erstellt haben.
  6. Geben Sie unter Richtlinienbindungeine Priorität für die Richtlinie an.
  7. Wählen Sie unter Typdie Option CLIENTHELLO_REQaus.
  8. Klicken Sie auf Bind.
  9. Klicken Sie auf Fertig.

Die End-to-End-Konfiguration für die beliebtesten Anwendungsfälle finden Sie in den folgenden Themen:

SSL-Aktion zur selektiven Auswahl von Zertifizierungsstellen basierend auf SNI für die Clientauthentifizierung

Sie können in der Client-Zertifikatsanfrage nur die Liste der CAs senden, die auf SNI (Domain) basieren, und nicht die Liste aller CAs, die an einen virtuellen SSL-Server gebunden sind. Wenn beispielsweise ein Client-Hallo empfangen wird, werden nur die CA-Zertifikate gesendet, die auf dem SSL-Richtlinienausdruck basieren (z. B. SNI). Um einen bestimmten Satz von Zertifikaten zu senden, müssen Sie eine CA-Zertifikatsgruppe erstellen. Binden Sie dann diese Gruppe an eine SSL-Aktion und die Aktion an eine SSL-Richtlinie. Wenn die Richtlinie, die an den virtuellen Server gebunden ist, der den Client-Verkehr empfängt, nach dem Parsen des Client-Hello als wahr bewertet wird, wird im Client-Anforderungszertifikat nur eine bestimmte CA-Zertifikatsgruppe gesendet.

Zuvor mussten Sie CA-Zertifikate an einen virtuellen SSL-Server binden. Mit dieser Erweiterung können Sie einfach CA-Zertifikatsgruppen hinzufügen und sie einer SSL-Aktion zuordnen.

Hinweis: Aktivieren Sie die Client-Authentifizierung und SNI auf dem virtuellen SSL-Server. Binden Sie die richtigen SNI-Zertifikate an den virtuellen Server.

Gehen Sie wie folgt vor:

  1. Fügen Sie eine CA-Zertifikatsgruppe hinzu.

  2. Fügen Sie Zertifikatsschlüsselpaare hinzu.

  3. Binden Sie die Zertifikatsschlüsselpaare an diese Gruppe.

  4. Fügen Sie eine SSL-Aktion hinzu.

  5. Fügen Sie eine SSL-Richtlinie hinzu. Geben Sie die Aktion in der Richtlinie an.

  6. Binden Sie die Richtlinie an einen virtuellen SSL-Server. Geben Sie den Bindungspunkt als CLIENTHELLO_REQ an.

Konfiguration mit der CLI

Geben Sie in der Befehlszeile die folgenden Befehle nacheinander ein:

add ssl caCertGroup <caCertGroupName> add ssl certkey <certkey_name> -cert <cert> -key <key> bind ssl caCertGroup <caCertGroupName> <certkey_name> add ssl action <name> -caCertGrpName <string> add ssl policy <name> -rule <expression> -action <string> bind ssl vserver <vServerName> -policyName <string> -priority <positive_integer> -type CLIENTHELLO_REQ

Beispiel:

add ssl cacertGroup ca_cert_group add ssl certkey ca_certkey1 -cert cacert1 -key cakey1 add ssl certkey ca_certkey2 -cert cacert2 -key cakey2 add ssl certkey snicert -cert snicert -key snikey bind ssl cacertGroup ca_cert_group ca_certkey1 bind ssl caCertGroup ca_cert_group ca_certkey2
sh ssl caCertGroup ca_cert_group CA GROUP NAME: ca_cert_group ACTIONS REFERRING: 1 1) CertKey Name: ca_certkey1 CA Certificate CRLCheck: Optional CA_Name Sent 2) CertKey Name: ca_certkey2 CA Certificate CRLCheck: Optional CA_Name Sent
add ssl action pick_ca_group -cacertGrpName ca_cert_group
sh ssl action pick_ca_group 1) Name: pick_ca_group Type: Data Insertion PickCaCertGroup: ca_cert_group Hits: 0 Undef Hits: 0 Action Reference Count: 1
add ssl policy snipolicy -rule client.ssl.client_hello.sni.contains("abc") -action pick_ca_group bind ssl vserver v_SSL -policyName snipolicy -type CLIENTHELLO_REQ -priority 10
sh ssl policy snipolicy Name: snipolicy Rule: client.ssl.client_hello.sni.contains("abc") Action: pick_ca_group UndefAction: Use Global Hits: 0 Undef Hits: 0 Policy is bound to following entities 1) Bound to: CLIENTHELLO_REQ VSERVER v_SSL Priority: 10
set ssl vserver v_SSL -clientauth ENABLED -SNIEnable ENABLED bind ssl vserver v_SSL -certkeyName snicert -sniCert
sh ssl vserver v_SSL Advanced SSL configuration for VServer v_SSL: DH: DISABLED DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds Cipher Redirect: DISABLED SSLv2 Redirect: DISABLED ClearText Port: 0 Client Auth: ENABLED Client Cert Required: Mandatory SSL Redirect: DISABLED Non FIPS Ciphers: DISABLED SNI: ENABLED OCSP Stapling: DISABLED HSTS: DISABLED HSTS IncludeSubDomains: NO HSTS Max-Age: 0 SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED Push Encryption Trigger: Always Send Close-Notify: YES Strict Sig-Digest Check: DISABLED Zero RTT Early Data: DISABLED DHE Key Exchange With PSK: NO Tickets Per Authentication Context: 1 ECC Curve: P_256, P_384, P_224, P_521 1) CertKey Name: snicert Server Certificate for SNI Data policy 1) Policy Name: snipolicy Priority: 10 1) Cipher Name: DEFAULT Description: Default cipher list with encryption strength >= 128bit

Konfiguration mit der GUI

Erstellen Sie eine CA-Zertifikatsgruppe und binden Sie Zertifikate an die Gruppe:

  1. Navigieren Sie zu Verkehrsmanagement > SSL > CA Certificates Group.
  2. Klicken Sie auf Hinzufügen und geben Sie einen Namen für die Gruppe ein.
  3. Klicken Sie auf Erstellen.
  4. Wählen Sie die CA-Zertifikatsgruppe aus und klicken Sie dann auf Bindungen anzeigen.
  5. Klicken Sie auf Bind.
  6. Wählen Sie auf der Seite CA Certificate Binding ein vorhandenes Zertifikat aus oder klicken Sie auf Hinzufügen, um ein neues Zertifikat hinzuzufügen.
  7. Klicken Sie auf Auswählen und dann auf Binden.
  8. Um ein weiteres Zertifikat zu binden, wiederholen Sie die Schritte 5 bis 7.
  9. Klicken Sie auf Schließen.

Navigieren Sie zu Traffic Management > SSL > Richtlinien.

SSL-Aktion erstellen:

  1. Klicken Sie unter SSL-Aktionenauf Hinzufügen.
  2. Geben Sie unter SSL-Aktion erstelleneinen Namen für die Aktion an.
  3. Wählen Sie unter Forward Action Virtual Servereinen vorhandenen virtuellen Server aus oder fügen Sie einen virtuellen Server hinzu, an den der Datenverkehr weitergeleitet werden soll.
  4. Stellen Sie optional weitere Parameter ein.
  5. Klicken Sie auf Erstellen.

SSL-Richtlinie erstellen:

  1. Klicken Sie unter SSL-Richtlinienauf Hinzufügen.
  2. Geben Sie unter SSL-Richtlinie erstelleneinen Namen für die Richtlinie an.
  3. Wählen Sie unter Aktiondie zuvor erstellte Aktion aus.
  4. Geben Sie im Ausdruckseditordie auszuwertende Regel ein.
  5. Klicken Sie auf Erstellen.

Erstellen oder fügen Sie einen virtuellen Server und eine Bindungsrichtliniehinzu:

  1. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
  2. Fügen Sie einen virtuellen Server hinzu oder wählen Sie ihn aus.
  3. Klicken Sie in Erweiterte Einstellungenauf SSL-Richtlinien.
  4. Klicken Sie in den Abschnitt SSL-Richtlinie.
  5. Wählen Sie unter Richtlinieauswählen die Richtlinie aus, die Sie zuvor erstellt haben.
  6. Geben Sie unter Richtlinienbindungeine Priorität für die Richtlinie an.
  7. Wählen Sie unter Typdie Option CLIENTHELLO_REQaus.
  8. Klicken Sie auf Bind.
  9. Klicken Sie auf Fertig.

Entbinden Sie eine CA-Zertifikatsgruppe mithilfe der GUI

  1. Navigieren Sie zu Verkehrsmanagement > SSL > CA Certificates Group.
  2. Wählen Sie eine Zertifikatsgruppe aus und klicken Sie auf Bindungen anzeigen.
  3. Wählen Sie das Zertifikat aus, das Sie aus der Gruppe entfernen möchten, und klicken Sie auf Binden aufheben.
  4. Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf **Ja••.
  5. Klicken Sie auf Schließen.

Entfernen Sie eine CA-Zertifikatsgruppe mithilfe der GUI

  1. Navigieren Sie zu Verkehrsmanagement > SSL > CA Certificates Group.
  2. Wählen Sie eine Zertifikatsgruppe aus und klicken Sie auf Löschen.
  3. Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf Ja.
Die offizielle Version dieses Inhalts ist auf Englisch. Für den einfachen Einstieg wird Teil des Inhalts der Cloud Software Group Dokumentation maschinell übersetzt. Cloud Software Group hat keine Kontrolle über maschinell übersetzte Inhalte, die Fehler, Ungenauigkeiten oder eine ungeeignete Sprache enthalten können. Es wird keine Garantie, weder ausdrücklich noch stillschweigend, für die Genauigkeit, Zuverlässigkeit, Eignung oder Richtigkeit von Übersetzungen aus dem englischen Original in eine andere Sprache oder für die Konformität Ihres Cloud Software Group Produkts oder Ihres Diensts mit maschinell übersetzten Inhalten gegeben, und jegliche Garantie, die im Rahmen der anwendbaren Endbenutzer-Lizenzvereinbarung oder der Vertragsbedingungen oder einer anderen Vereinbarung mit Cloud Software Group gegeben wird, dass das Produkt oder den Dienst mit der Dokumentation übereinstimmt, gilt nicht in dem Umfang, in dem diese Dokumentation maschinell übersetzt wurde. Cloud Software Group kann nicht für Schäden oder Probleme verantwortlich gemacht werden, die durch die Verwendung maschinell übersetzter Inhalte entstehen können.