SSL-Offloadkonfiguration
Um die SSL-Abladung zu konfigurieren, müssen Sie die SSL-Verarbeitung auf der Citrix ADC Appliance aktivieren und einen SSL-basierten virtuellen Server konfigurieren. Der virtuelle Server fängt SSL-Datenverkehr ab, entschlüsselt den Datenverkehr und leitet ihn an einen Dienst weiter, der an den virtuellen Server gebunden ist. Sie können einen virtuellen DTLS-Server konfigurieren, um zeitkritischen Datenverkehr zu sichern, z. B. Um das SSL-Verschieben zu aktivieren, müssen Sie ein gültiges Zertifikat und einen gültigen Schlüssel importieren und das Paar an den virtuellen Server binden.
SSL aktivieren
Um SSL-Datenverkehr zu verarbeiten, müssen Sie die SSL-Verarbeitung aktivieren. Sie können SSL-basierte Entitäten wie virtuelle Server und Dienste konfigurieren, ohne die SSL-Verarbeitung zu aktivieren. Sie funktionieren jedoch erst, wenn die SSL-Verarbeitung aktiviert ist.
Aktivieren der SSL-Verarbeitung mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
enable ns feature ssl
show ns feature
Beispiel:
enable ns feature SSL
Done
show ns feature
Feature Acronym Status
------- ------- ------
1) Web Logging WL OFF
2) Surge Protection SP ON
3) Load Balancing LB ON
.
.
.
9) SSL Offloading SSL ON
.
.
.
24) NetScaler Push push OFF
Done
Aktivieren der SSL-Verarbeitung mit der GUI
Navigieren Sie zu System > Einstellungen, und klicken Sie in der Gruppe Modi und Features auf Basisfunktionen konfigurieren, und klicken Sie auf SSL-Abladung .
Konfigurieren von Diensten
Auf der Citrix ADC Appliance stellt ein Dienst einen physischen Server oder eine Anwendung auf einem physischen Server dar. Nach der Konfiguration befinden sich Dienste im deaktivierten Zustand, bis die Appliance den physischen Server im Netzwerk erreichen und den Status überwachen kann.
Hinzufügen eines Dienstes mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um einen Dienst hinzuzufügen und die Konfiguration zu überprüfen:
add service <name> (<IP> | <serverName>) <serviceType> <port>
show service <serviceName>
Beispiel:
add service sslsvc 198.51.100.225 SSL 443
Done
sh ssl service sslsvc
Advanced SSL configuration for Back-end SSL Service sslsvc:
DH: DISABLED
DH Private-Key Exponent Size Limit: DISABLED Ephemeral RSA: DISABLED
Session Reuse: ENABLED Timeout: 300 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Server Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED TLSv1.3: DISABLED
Send Close-Notify: YES
Strict Sig-Digest Check: DISABLED
Zero RTT Early Data: ???
DHE Key Exchange With PSK: ???
Tickets Per Authentication Context: ???
ECC Curve: P_256, P_384, P_224, P_521
1) Cipher Name: DEFAULT_BACKEND
Description: Default cipher list for Backend SSL session
Done
Ändern oder Entfernen eines Dienstes mit der CLI
Um einen Dienst zu ändern, verwenden Sie den Befehl set service, der genauso wie mit dem Befehl add service entspricht, mit der Ausnahme, dass Sie den Namen eines vorhandenen Dienstes eingeben.
Um einen Dienst zu entfernen, verwenden Sie den Befehl rm service, der nur das <name> Argument akzeptiert.
rm service <servicename>
Beispiel:
rm service sslsvc
Um einen Dienst zu ändern, verwenden Sie den Befehl set service, wählen Sie einen beliebigen Parameter aus und ändern Sie seine Einstellung.
set service <name> (<IP> | <serverName>) <serviceType> <port>
Beispiel:
set service sslsvc 198.51.100.225 SSL 443
Konfigurieren eines Dienstes mit der GUI
Navigieren Sie zu Traffic Management > Load Balancing > Services, erstellen Sie einen Dienst und geben Sie das Protokoll als SSL an.
Konfiguration des virtuellen SSL-Servers
Sichere Sitzungen erfordern die Einrichtung einer Verbindung zwischen dem Client und einem SSL-basierten virtuellen Server auf der Citrix ADC Appliance. Der virtuelle SSL-Server fängt SSL-Datenverkehr ab, entschlüsselt ihn und verarbeitet ihn, bevor er an Dienste sendet, die an den virtuellen Server gebunden sind.
Hinweis: Der virtuelle SSL-Server wird auf der Citrix ADC Appliance als unten markiert, bis ein gültiges Zertifikat/Schlüsselpaar und mindestens ein Dienst an ihn gebunden sind. Ein SSL-basierter virtueller Server ist ein virtueller Lastausgleichsserver vom Protokolltyp SSL oder SSL_TCP. Die Lastenausgleichsfunktion muss auf der Citrix ADC Appliance aktiviert sein.
Hinzufügen eines SSL-basierten virtuellen Servers mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um einen SSL-basierten virtuellen Server zu erstellen und die Konfiguration zu überprüfen:
add lb vserver <name> (serviceType) <IPAddress> <port>
show ssl vserver <name>
Beispiel:
add lb vserver sslvs SSL 192.0.2.240 443
Done
sh ssl vserver sslvs
Advanced SSL configuration for VServer sslvs:
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: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
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) Cipher Name: DEFAULT
Description: Default cipher list with encryption strength >= 128bit
Done
Ändern oder Entfernen eines SSL-basierten virtuellen Servers mit der CLI
Verwenden Sie denset lb vserver
Befehl, um die Lastenausgleichseigenschaften eines virtuellen SSL-Servers zu ändern. Der Befehl set ähnelt demadd lb vserver
Befehl, außer dass Sie den Namen eines vorhandenen virtuellen Servers eingeben. Verwenden Sie denset ssl vserver
Befehl, um die SSL-Eigenschaften eines SSL-basierten virtuellen Servers zu ändern. Weitere Informationen finden Sie im Abschnitt SSL-Parameter für virtuelle Server weiter unten auf dieser Seite.
Um einen virtuellen SSL-Server zu entfernen, verwenden Sie denrm lb vserver
Befehl, der nur das<name>
Argument akzeptiert.
Konfigurieren eines SSL-basierten virtuellen Servers mit der GUI
Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, erstellen Sie einen virtuellen Server und geben Sie das Protokoll als SSL an.
Binden von Diensten an den virtuellen SSL-Server
Die ADC-Appliance leitet entschlüsselte SSL-Daten an Server im Netzwerk weiter. Um Daten weiterzuleiten, müssen Dienste, die diese physischen Server darstellen, an den virtuellen Server gebunden sein, der die SSL-Daten empfängt.
In der Regel ist die Verbindung zwischen der ADC-Appliance und dem physischen Server sicher. Daher muss die Datenübertragung zwischen der Appliance und dem physischen Server nicht verschlüsselt werden. Sie können jedoch End-to-Ende-Verschlüsselung bereitstellen, indem Sie die Datenübertragung zwischen der Appliance und dem Server verschlüsseln. Einzelheiten finden Sie unter Konfigurieren Sie SSL-Abladung mit Ende-zu-Ende-Verschlüsselung.
Hinweis: Aktivieren Sie die Lastenausgleichsfunktion auf der ADC-Appliance, bevor Sie Dienste an den SSL-basierten virtuellen Server binden.
Binden eines Dienstes an einen virtuellen Server mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um den Dienst an den virtuellen Server zu binden und die Konfiguration zu überprüfen:
bind lb vserver <name> <serviceName>
show lb vserver <name>
Beispiel:
bind lb vserver sslvs sslsvc
Done
sh lb vserver sslvs
sslvs (192.0.2.240:443) - SSL Type: ADDRESS
State: DOWN[Certkey not bound]
Last state change was at Wed May 2 11:43:04 2018
Time since last state change: 0 days, 00:13:21.150
Effective State: DOWN
Client Idle Timeout: 180 sec
Down state flush: ENABLED
Disable Primary Vserver On Down : DISABLED
Appflow logging: ENABLED
No. of Bound Services : 1 (Total) 0 (Active)
Configured Method: LEASTCONNECTION BackupMethod: ROUNDROBIN
Mode: IP
Persistence: NONE
Vserver IP and Port insertion: OFF
Push: DISABLED Push VServer:
Push Multi Clients: NO
Push Label Rule: none
L2Conn: OFF
Skip Persistency: None
Listen Policy: NONE
IcmpResponse: PASSIVE
RHIstate: PASSIVE
New Service Startup Request Rate: 0 PER_SECOND, Increment Interval: 0
Mac mode Retain Vlan: DISABLED
DBS_LB: DISABLED
Process Local: DISABLE
Traffic Domain: 0
TROFS Persistence honored: ENABLED
Retain Connections on Cluster: NO
1) sslsvc (198.51.100.225: 443) - SSL State: DOWN Weight: 1
Done
Aufheben der Bindung eines Dienstes von einem virtuellen Server mit der CLI
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
unbind lb vserver <name> <serviceName>
Beispiel:
unbind lb vserver sslvs sslsvc
Done
Binden eines Dienstes an einen virtuellen Server mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
- Öffnen Sie einen virtuellen Server und klicken Sie auf die Kachel Load Balancing Virtual Server Service Bindings im Abschnitt Dienste und Dienstgruppen.
-
Klicken Sie auf der Seite Load Balancing Virtual Server Service Binding auf Add Bindings, klicken Sie unter Select Service auf Click to select und aktivieren Sie das Kontrollkästchen neben dem Dienst, der gebunden werden soll.
- Klicken Sie auf Auswählen und auf Binden.
Konfigurieren eines virtuellen Servers (Server Name Indication, SNI) für sicheres Hosting mehrerer Standorte
Virtuelles Hosting wird von Webservern verwendet, um mehr als einen Domainnamen mit derselben IP-Adresse zu hosten. Die Appliance unterstützt das Hosten mehrerer sicherer Domänen, indem die SSL-Verarbeitung von den Webservern mithilfe transparenter SSL-Dienste oder virtueller serverbasierter SSL-Abladung entfernt wird. Wenn jedoch mehrere Websites auf demselben virtuellen Server gehostet werden, wird der SSL-Handshake abgeschlossen, bevor der erwartete Hostname an den virtuellen Server gesendet wird. Daher kann die Appliance nicht bestimmen, welches Zertifikat dem Client vorgelegt werden soll, nachdem eine Verbindung hergestellt wurde. Dieses Problem wird durch Aktivieren von SNI auf dem virtuellen Server behoben. SNI ist eine TLS-Erweiterung (Transport Layer Security), die vom Client verwendet wird, um den Hostnamen während der Handshake-Initiierung anzugeben. Die ADC-Appliance vergleicht diesen Hostnamen mit dem allgemeinen Namen und vergleicht ihn, falls er nicht übereinstimmt, mit dem alternativen Antragstellernamen (SAN). Wenn der Name übereinstimmt, stellt die Appliance dem Client das entsprechende Zertifikat vor.
Ein Platzhalter-SSL-Zertifikat unterstützt die Aktivierung der SSL-Verschlüsselung in mehreren Subdomänen, wenn dieselbe Organisation diese Domänen steuert und der Domänenname der zweiten Ebene identisch ist. Beispielsweise kann ein Platzhalterzertifikat, das an ein Sportnetzwerk mit dem allgemeinen Namen “*.sports.net” ausgestellt wurde, verwendet werden, um Domains wie “login.sports.net” und “help.sports.net” zu sichern. Sie kann die “login.ftp.sports.net” -Domäne nicht sichern.
Hinweis: Auf einer ADC-Appliance werden nur DNS-Einträge im SAN-FeldDomänenname, URL und E-Mail-ID verglichen.
Mit der Option -SNICert können Sie mehrere Serverzertifikate an einen einzelnen virtuellen SSL-Server oder einen transparenten Dienst binden. Der virtuelle Server oder Dienst gibt diese Zertifikate aus, wenn SNI auf dem virtuellen Server oder Dienst aktiviert ist. Sie können SNI jederzeit aktivieren.
Binden Sie mehrere Serverzertifikate an einen einzelnen virtuellen SSL-Server mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um SNI zu konfigurieren und die Konfiguration zu überprüfen:
set ssl vserver <vServerName>@ [-SNIEnable ( ENABLED | DISABLED )]
bind ssl vserver <vServerName>@ -certkeyName <string> -SNICert
show ssl vserver <vServerName>
Um mehrere Serverzertifikate mit der CLI an einen transparenten Dienst zu binden,vserver
ersetzen Sie in den vorangegangenen Befehlen durch Dienst undvservername
Dienstname.
Hinweis: Erstellen Sie den SSL-Dienst mit der -clearTextPort 80
Option.
Binden Sie mehrere Serverzertifikate an einen einzelnen virtuellen SSL-Server mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
- Öffnen Sie einen virtuellen SSL-Server, und wählen Sie unter ZertifikateServerzertifikataus.
- Fügen Sie ein Zertifikat hinzu, oder wählen Sie ein Zertifikat aus der Liste aus, und klicken Sie auf Serverzertifikat für SNI.
- Wählen Sie unter Erweiterte Einstellungendie Option SSL-Parameteraus.
- Klicken Sie auf SNI Enable.
Unterstützung für SNI im Back-End-Dienst
Hinweis: SNI wird auf einem DTLS-Back-End-Dienst nicht unterstützt.
Die Citrix ADC Appliance unterstützt Server Name Indication (SNI) am Back-End. Das heißt, der allgemeine Name wird als Servername im Client Hallo an den Back-End-Server gesendet, um den Handshake erfolgreich zu beenden. Dieser Support trägt dazu bei, die Sicherheitsanforderungen des Bundes für Systemintegratoren zu erfüllen. Außerdem bietet SNI den Vorteil, nur einen Port zu verwenden, anstatt Hunderte verschiedener IP-Adressen und Ports auf einer Firewall zu öffnen.
Die Sicherheitsanforderungen für den Federal Systemintegrator umfassen die Unterstützung für Active Directory Federation Services (ADFS) 3.0 in 2012R2 und WAP-Servern. Um diese Anforderung zu erfüllen, ist die Unterstützung für SNI am Back-End einer Citrix ADC Appliance erforderlich.
Hinweis:
Damit SNI funktioniert, muss der Servername im Client hello mit dem Hostnamen übereinstimmen, der auf dem Back-End-Dienst konfiguriert ist, der an einen virtuellen SSL-Server gebunden ist. Wenn beispielsweise der Hostname des Back-End-Servers www.mail.example.com lautet, muss der SNI-fähige Back-End-Dienst mit dem Servernamen als konfiguriert werdenhttps://www.mail.example.com. Und dieser Hostname muss mit dem Servernamen im Client Hallo übereinstimmen.
Unterstützung für dynamisches SNI im Back-End-Dienst
Die Citrix ADC Appliance unterstützt dynamisches SNI auf den Back-End-TLS-Verbindungen. Das heißt, die Appliance lernt das SNI in der Clientverbindung und verwendet es in der serverseitigen Verbindung. Sie müssen keinen allgemeinen Namen mehr im SSL-Dienst, Dienstgruppe oder Profil angeben. Der allgemeine Name, der in der SNI-Erweiterung der Client Hello Nachricht empfangen wird, wird an die Back-End-SSL-Verbindung weitergeleitet.
Früher mussten Sie statische SNI für SSL-Dienste, Dienstgruppen und SSL-Profile konfigurieren. Dadurch wurde nur die konfigurierte statische SNI-Erweiterung an den Server gesendet. Wenn ein Client gleichzeitig auf mehrere Domains zugreifen musste, konnte die ADC-Appliance den vom Client erhaltenen SNI nicht an den Back-End-Service senden. Stattdessen wurde der statische allgemeine Name gesendet, der konfiguriert wurde. Wenn der Back-End-Server jetzt für mehrere Domänen konfiguriert ist, kann der Server mit dem richtigen Zertifikat antworten, das auf dem SNI basiert, das in der Client Hello Nachricht von der Appliance empfangen wurde.
Hinweis:
-
SNI muss auf dem Front-End und das richtige SNI-Zertifikat aktiviert sein, das an den virtuellen SSL-Server gebunden ist. Wenn Sie SNI am Frontend nicht aktivieren, werden die SNI-Informationen nicht an das Backend übergeben.
-
Wenn die Serverauthentifizierung aktiviert ist, wird das Serverzertifikat durch das CA-Zertifikat überprüft, und der allgemeine Name/SAN-Einträge im Serverzertifikat werden mit dem SNI abgeglichen. Daher muss das Zertifizierungsstellenzertifikat an den Dienst gebunden sein.
-
Die Wiederverwendung der Back-End-Verbindung und der SSL-Sitzung basiert auf SNI, wenn dynamisches SNI aktiviert ist.
SSL-Monitore senden SNI nicht, wenn dynamisches SNI aktiviert ist. Für SNI-basierte Sondierung fügen Sie ein Back-End-Profil an, auf dem statische SNI konfiguriert ist, an die SSL-Monitore an. Der Monitor muss mit demselben benutzerdefinierten Header wie SNI konfiguriert sein.
Konfigurieren von SNI auf dem Back-End-Dienst mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
add service <name> <IP> <serviceType> <port>
add lb vserver <name> <IPAddress> <serviceType> <port>
bind lb vserver <name> <serviceName>
set ssl service <serviceName> -SNIEnable ENABLED -commonName <string>
set ssl profile <name> -SNIEnable ENABLED
Beispiel:
add service service_ssl 198.51.100.100 SSL 443
add lb vserver ssl-vs 203.0.113.200 SSL 443
bind lb vserver ssl-vs service_ssl
set ssl service service_ssl -SNIEnable ENABLED –commonName www.example.com
set ssl profile sslprof -SNIEnable ENABLED
Konfigurieren von SNI auf dem Back-End-Dienst mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Services.
- Wählen Sie einen SSL-Dienst aus, und klicken Sie unter Erweiterte Einstellungenauf SSL-Parameter.
-
Klicken Sie auf SNI Enable.
Konfigurieren von SNI auf dem SSL-Profil mit der GUI
- Navigieren Sie zu System > Profile > SSL-Profil.
- Klicken Sie auf Hinzufügen.
-
Wählen Sie unter Grundeinstellungendie Option SNI Aktivierenaus.
- Klicken Sie auf OK.
Binden eines sicheren Monitors an einen SNI-fähigen Back-End-Dienst
Sie können sichere Monitore vom Typ HTTP, HTTP-ECV, TCP oder TCP-ECV an die Back-End-Dienste und Service-Gruppen binden, die SNI unterstützen. Die Monitorsonden senden die SNI-Erweiterung jedoch nicht, wenn dynamisches SNI aktiviert ist. Um SNI-Prüfpunkte zu senden, aktivieren Sie statische SNI im Back-End-SSL-Profil und binden Sie das Profil an den Monitor. Legen Sie den benutzerdefinierten Header im Monitor auf den Servernamen fest, der als SNI-Erweiterung im Client-Hallo der Monitorprobe gesendet wird.
Konfigurieren und Binden eines sicheren Monitors an einen SNI-fähigen Back-End-Dienst mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
add lb monitor <monitorName> <type> -secure YES
add ssl profile <name> -sslProfileType BackEnd
set lb monitor <monitorName> <type> -customHeaders <string> -sslprofile <backend ssl profile>
set ssl profile <name> -sniEnable ENABLED -commonName <string>
bind service <name> -monitorName <string>
Beispiel:
add ssl profile sni_backend_profile -sslProfileType BackEnd
set ssl profile sni_backend_profile -sniEnable ENABLED -commonName example.com
add lb monitor http-ecv-mon HTTP-ECV -secure YES
set monitor http-ecv-mon HTTP-ECV -customHeaders "Host: example.com\r\n" -sslprofile sni_backend_profile
bind service ssl_service –monitorName http-ecv-mon
Konfigurieren und Binden eines sicheren Monitors an einen SNI-fähigen Back-End-Dienst mit der GUI
- Navigieren Sie zu System > Profile > SSL-Profile.
- Klicken Sie auf Hinzufügen.
-
Geben Sie einen Namen für das Profil an, und wählen Sie unter SSL-Profiltypdie Option Backendaus.
-
Geben Sie den allgemeinen Namen an (wie Host-Header) und wählen Sie SNI Enable.
- Klicken Sie auf OK.
- Navigieren Sie zu Traffic Management > Load Balancing > Monitor.
- Klicken Sie auf Hinzufügen.
- Geben Sie einen Namen für den Monitor an. Wählen Sie unter Typdie Option HTTP, HTTP-ECV, TCP oder TCP-ECV aus.
-
Geben Sie eine benutzerdefinierte Kopfzeilean.
- Wählen Sie Sichernaus.
- Wählen Sie unter SSL-Profildas Back-End-SSL-Profil aus, das in den vorherigen Schritten erstellt wurde.
-
Klicken Sie auf Erstellen.
- Navigieren Sie zu Traffic Management > Load Balancing > Services.
- Wählen Sie einen SSL-Dienst aus, und klicken Sie auf Bearbeiten.
-
Klicken Sie unter Monitoreauf Bindung hinzufügen, wählen Sie den in den vorherigen Schritten erstellten Monitor aus, und klicken Sie auf Binden.
Konfigurieren und Binden eines sicheren Monitors an einen SNI-fähigen Back-End-Dienst mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Monitor.
- Fügen Sie einen Monitor vom Typ HTTP-ECV oder TCP-ECV hinzu, und geben Sie einen benutzerdefinierten Header an.
- Wählen Sie Erstellen.
- Navigieren Sie zu Traffic Management > Load Balancing > Services.
- Wählen Sie einen SSL-Dienst aus, und klicken Sie auf Bearbeiten.
- Klicken Sie unter Monitoreauf Bindung hinzufügen, wählen Sie den in Schritt 3 erstellten Monitor aus, und klicken Sie auf Binden.
Hinzufügen oder Aktualisieren eines Zertifikatschlüsselpaars
Hinweise:
Wenn Sie kein vorhandenes Zertifikat und keinen vorhandenen Schlüssel haben, finden Sie weitere Informationen unterErstellen eines Zertifikats.
Klicken Sie auf, um ein ECDSA-Zertifikatschlüsselpaar zu erstellenErstellen eines ECDSA-Zertifikatschlüsselpaars.
Ab Build 41.x werden Zertifikatnamen mit bis zu 63 Zeichen unterstützt.
Für jede SSL-Transaktion benötigt der Server ein gültiges Zertifikat und das entsprechende private und öffentliche Schlüsselpaar. Die SSL-Daten werden mit dem öffentlichen Schlüssel des Servers verschlüsselt, der über das Zertifikat des Servers verfügbar ist. Die Entschlüsselung erfordert den entsprechenden privaten Schlüssel. Das Kennwort des privaten Schlüssels, der beim Hinzufügen eines SSL-Zertifikatschlüsselpaars verwendet wird, wird mit einem eindeutigen Verschlüsselungsschlüssel für jede Citrix ADC Appliance gespeichert.
Die ADC-Appliance entlädt SSL-Transaktionen vom Server. Daher müssen das Zertifikat und der private Schlüssel des Servers auf der Appliance vorhanden sein, und das Zertifikat muss mit dem entsprechenden privaten Schlüssel gekoppelt sein. Dieses Zertifikatschlüsselpaar muss an den virtuellen Server gebunden sein, der die SSL-Transaktionen verarbeitet.
Hinweis: Das Standardzertifikat einer Citrix ADC Appliance beträgt 2048 Bit. In früheren Builds war das Standardzertifikat 512 Bit oder 1024 Bit. Nach dem Upgrade auf Version 11.0 müssen Sie alle alten Zertifikatschlüsselpaare löschen, die mit beginnen"ns-"
, und dann die Appliance neu starten, um automatisch ein 2048-Bit-Standardzertifikat zu generieren.
Sowohl das Zertifikat als auch der Schlüssel müssen sich im lokalen Speicher auf der Citrix ADC Appliance befinden, bevor sie der Appliance hinzugefügt werden können. Wenn sich das Zertifikat oder die Schlüsseldatei nicht auf der Appliance befindet, laden Sie es auf die Appliance hoch, bevor Sie das Paar erstellen.
Wichtig: Zertifikate und Schlüssel werden standardmäßig im Verzeichnis /nsconfig/ssl gespeichert. Wenn Ihre Zertifikate oder Schlüssel an einem anderen Speicherort gespeichert sind, müssen Sie den absoluten Pfad zu den Dateien auf der Citrix ADC Appliance angeben. Die Citrix ADC FIPS-Appliances unterstützen keine externen Schlüssel (Nicht-FIPS-Schlüssel). Auf einer FIPS-Appliance können Sie keine Schlüssel von einem lokalen Speichergerät wie einer Festplatte oder einem Flash-Speicher laden. Die FIPS-Schlüssel müssen im Hardwaresicherheitsmodul (HSM) der Appliance vorhanden sein.
Auf Citrix ADC Appliances werden nur RSA-Schlüssel unterstützt.
Legen Sie den Benachrichtigungszeitraum fest, und aktivieren Sie die Ablaufüberwachung, um eine Eingabeaufforderung auszustellen, bevor das Zertifikat abläuft.
Die Citrix ADC Appliance unterstützt die folgenden Eingabeformate des Zertifikats und der Dateien mit privatem Schlüssel:
- PEM - Datenschutzoptimierte E-Mail
- DER - Distinguished Coding Rule
- PFX - Persönlicher Informationsaustausch
Die Software erkennt automatisch das Format. Daher ist es nicht mehr erforderlich, das Format im Parameter inform anzugeben. Wenn Sie das Format angeben (korrekt oder falsch), ignoriert die Software es. Das Format des Zertifikats und der Schlüsseldatei muss identisch sein.
Hinweis: Ein Zertifikat muss mit einem der folgenden Hash-Algorithmen signiert werden:
- MD5
- SHA-1
- SHA-224
- SHA-256
- SHA-384 (nur am Frontend unterstützt)
- SHA-512 (nur am Frontend unterstützt)
Eine MPX-Appliance unterstützt Zertifikate mit 512 oder mehr Bits bis zu den folgenden Größen:
- 4096-Bit-Serverzertifikat auf dem virtuellen Server
- 4096-Bit-Clientzertifikat für den Dienst
- 4096-Bit-CA-Zertifikat (einschließlich Zwischen- und Stammzertifikate)
- 4096-Bit-Zertifikat auf dem Back-End-Server
- 4096-Bit-Clientzertifikat (wenn die Clientauthentifizierung auf dem virtuellen Server aktiviert ist)
Eine virtuelle VPX-Appliance unterstützt Zertifikate mit 512 oder mehr Bits bis zu den folgenden Größen:
- 4096-Bit-Serverzertifikat auf dem virtuellen Server
- 4096-Bit-Clientzertifikat für den Dienst
- 4096-Bit-CA-Zertifikat (einschließlich Zwischen- und Stammzertifikate)
- 4096-Bit-Zertifikat auf dem Back-End-Server
- 2048-Bit-Clientzertifikat (wenn die Clientauthentifizierung auf dem virtuellen Server aktiviert ist)
Hinweis:
Eine Citrix ADC SDX-Appliance unterstützt Zertifikate mit 512 oder mehr Bits. Jede Citrix ADC VPX Instanz, die auf der Appliance gehostet wird, unterstützt die vorherigen Zertifikatgrößen für eine virtuelle VPX-Appliance. Wenn jedoch ein SSL-Chip einer Instanz zugewiesen wird, unterstützt diese Instanz die von einer MPX-Appliance unterstützten Zertifikatgrößen.
Hinzufügen eines Zertifikatschlüsselpaars mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um ein Zertifikatschlüsselpaar hinzuzufügen und die Konfiguration zu überprüfen:
add ssl certKey <certkeyName> -cert <string>[(-key <string> [-password]) | -fipsKey <string>] [-inform ( DER | PEM )] [<passplain>] [-expiryMonitor ( ENABLED | DISABLED ) [-notificationPeriod <positive_integer>]]
show ssl certKey [<certkeyName>]
Beispiel:
add ssl certKey sslckey -cert server_cert.pem -key server_key.pem -password ssl -expiryMonitor ENABLED -notificationPeriod 30
Done
Note: For FIPS appliances, replace -key with -fipskey
show ssl certKey sslckey
Name: sslckey Status: Valid, Days to expiration:8418
Version: 3
Serial Number: 01
Signature Algorithm: md5WithRSAEncryption
Issuer: C=US,ST=SJ,L=SJ,O=NS,OU=NSSSL,CN=www.root.com
Validity
Not Before: Jul 15 02:25:01 2005 GMT
Not After : Nov 30 02:25:01 2032 GMT
Subject: C=US,ST=SJ,L=SJ,O=NS,OU=NSSSL,CN=www.server.com
Public Key Algorithm: rsaEncryption
Public Key size: 2048
Done
Aktualisieren oder Entfernen eines Zertifikatschlüsselpaars mit der CLI
Verwenden Sie denset ssl certkey
Befehl, um die Ablaufüberwachung oder den Benachrichtigungszeitraum in einem Zertifikatschlüsselpaar zu ändern. Verwenden Sie denupdate ssl certkey
Befehl, um das Zertifikat oder den Schlüssel in einem Zertifikatschlüsselpaar zu ersetzen. Derupdate ssl certkey
Befehl verfügt über einen zusätzlichen Parameter zum Überschreiben der Domänenprüfung. Geben Sie für beide Befehle den Namen eines vorhandenen Zertifikatschlüsselpaars ein. Um ein SSL-Zertifikatschlüsselpaar zu entfernen, verwenden Sie denrm ssl certkey
Befehl, der nur das<certkeyName>
Argument akzeptiert.
Beispiel:
set ssl certKey <certkeyName> [-expiryMonitor ( ENABLED | DISABLED )
[-notificationPeriod <positive_integer>]]
update ssl certKey <certkeyName> [-cert <string> [-password]] [-key
<string> | -fipsKey <string>] [-inform <inform>] [-noDomainCheck]
Hinzufügen oder Aktualisieren eines Zertifikatschlüsselpaars mit der GUI
-
Navigieren Sie zu Traffic Management > SSL > Zertifikate > Server.
-
Geben Sie die Werte für die folgenden Parameter ein und klicken Sie auf Installieren.
-
Name des Zertifikatschlüsselpaars - Name des Zertifikats und des Privatschlüsselpaars.
-
Name der Zertifikatdatei - Signiertes Zertifikat, das von der Zertifizierungsstelle erhalten wurde.
-
Schlüsseldateiname - Name und optional Pfad zur Privatschlüsseldatei, die zur Bildung des Zertifikatschlüsselpaares verwendet wird.
-
Binden Sie das Zertifikatschlüsselpaar an den virtuellen SSL-Server
Wichtig: Verknüpfen Sie alle Zwischenzertifikate mit diesem Zertifikat, bevor Sie das Zertifikat an einen virtuellen SSL-Server binden. Hinweise zum Verknüpfen von Zertifikaten finden Sie unterErstellen einer Kette von Zertifikaten.
Das Zertifikat, das für die Verarbeitung von SSL-Transaktionen verwendet wird, muss an den virtuellen Server gebunden sein, der die SSL-Daten empfängt. Wenn mehrere virtuelle Server SSL-Daten empfangen, muss ein gültiges Zertifikatschlüsselpaar an jeden dieser Server gebunden sein.
Verwenden Sie ein gültiges, vorhandenes SSL-Zertifikat, das Sie in die Citrix ADC Appliance hochgeladen haben. Als Alternative zu Testzwecken erstellen Sie Ihr eigenes SSL-Zertifikat auf der Appliance. Zwischenzertifikate, die mit einem FIPS-Schlüssel auf der Appliance erstellt wurden, können nicht an einen virtuellen SSL-Server gebunden werden.
Während des SSL-Handshake listet der Server in der Zertifikatanforderungsnachricht während der Clientauthentifizierung die Distinguished Names (DNs) aller an den Server gebundenen Zertifikatstellen auf. Der Server akzeptiert nur ein Clientzertifikat aus dieser Liste. Wenn der DN-Name eines bestimmten Zertifizierungsstellenzertifikats nicht an den SSL-Client gesendet werden soll, setzen Sie dasskipCA
Flag. Diese Einstellung gibt an, dass der definierte Name des bestimmten Zertifizierungsstellenzertifikats nicht an den SSL-Client gesendet werden darf.
Weitere Informationen zum Erstellen eines eigenen Zertifikats finden Sie unterVerwalten von Zertifikaten.
Hinweis: Citrix empfiehlt, nur gültige SSL-Zertifikate zu verwenden, die von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt wurden.
Binden Sie ein SSL-Zertifikatschlüsselpaar an einen virtuellen Server mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um ein SSL-Zertifikatschlüsselpaar an einen virtuellen Server zu binden und die Konfiguration zu überprüfen:
- bind ssl vserver <vServerName> -certkeyName <certificate-KeyPairName> -CA -skipCAName
- show ssl vserver <vServerName>
Beispiel:
bind ssl vs vs1 -certkeyName cert2 -CA -skipCAName
Done
sh ssl vs vs1
Advanced SSL configuration for VServer vs1:
DH: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 0
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: DISABLED TLSv1.2: DISABLED
Push Encryption Trigger: Always
Send Close-Notify: YES
Strict Sig-Digest Check: DISABLED
ECC Curve: P_256, P_384, P_224, P_521
1) CertKey Name: cert1 CA Certificate OCSPCheck: Optional CA_Name Sent
2) CertKey Name: cert2 CA Certificate OCSPCheck: Optional CA_Name Skipped
1) Cipher Name: DEFAULT
Description: Default cipher list with encryption strength >= 128bit
Done
Entbinden eines SSL-Zertifikatschlüsselpaars von einem virtuellen Server mit der CLI
Wenn Sie versuchen, ein Zertifikatschlüsselpaar von einem virtuellen Server mithilfe desunbind ssl certKey <certkeyName>
Befehls zu lösen, wird eine Fehlermeldung angezeigt. Der Fehler wird angezeigt, weil sich die Syntax des Befehls geändert hat. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
unbind ssl vserver <vServerName> -certkeyName <string>
Beispiel:
unbind ssl vserver vssl -certkeyName sslckey
Binden Sie ein SSL-Zertifikatschlüsselpaar an einen virtuellen Server mit der GUI
-
Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen SSL-Server. Klicken Sie in den Bereich Zertifikat.
-
Klicken Sie auf den Pfeil, um das Zertifikatschlüsselpaar auszuwählen.
-
Wählen Sie das Zertifikatschlüsselpaar aus der Liste aus.
-
Binden Sie das Zertifikatschlüsselpaar an den virtuellen Server. Um ein Serverzertifikat als SNI-Zertifikat hinzuzufügen, wählen Sie Serverzertifikat für SNIaus.
Parameter des virtuellen SSL-Servers
Legen Sie die erweiterte SSL-Konfiguration für einen virtuellen SSL-Server fest. Sie können viele dieser Parameter auch in einem SSL-Profil festlegen. Hinweise zu den Parametern, die in einem SSL-Profil festgelegt werden können, finden Sie unterSSL-Profilparameter.
Festlegen von virtuellen SSL-Serverparametern mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
set ssl vserver <vServerName>@ [-clearTextPort <port>] [-dh ( ENABLED |DISABLED ) -dhFile <string>] [-dhCount <positive_integer>][-dhKeyExpSizeLimit ( ENABLED | DISABLED )] [-eRSA ( ENABLED | DISABLED) [-eRSACount <positive_integer>]] [-sessReuse ( ENABLED | DISABLED )[-sessTimeout <positive_integer>]] [-cipherRedirect ( ENABLED | DISABLED ) [-cipherURL <URL>]] [-sslv2Redirect ( ENABLED | DISABLED )[-sslv2URL <URL>]] [-clientAuth ( ENABLED | DISABLED ) [-clientCert ( Mandatory | Optional )]] [-sslRedirect ( ENABLED | DISABLED )][-redirectPortRewrite ( ENABLED | DISABLED )] [-ssl2 ( ENABLED | DISABLED )] [-ssl3 ( ENABLED | DISABLED )] [-tls1 ( ENABLED | DISABLED )] [-tls11 ( ENABLED | DISABLED )] [-tls12 ( ENABLED | DISABLED )][-tls13 ( ENABLED | DISABLED )] [-SNIEnable ( ENABLED | DISABLED )][-ocspStapling ( ENABLED | DISABLED )] [-pushEncTrigger <pushEncTrigger>] [-sendCloseNotify ( YES | NO )] [-dtlsProfileName <string>] [-sslProfile <string>] [-HSTS ( ENABLED | DISABLED )][-maxage <positive_integer>] [-IncludeSubdomains ( YES | NO )][-strictSigDigestCheck ( ENABLED | DISABLED )] [-zeroRttEarlyData (ENABLED | DISABLED )] [-tls13SessionTicketsPerAuthContext <positive_integer>] [-dheKeyExchangeWithPsk ( YES | NO )]
Diffie-Hellman-Parameter (DH)
Um Verschlüsselungen auf der Appliance zu verwenden, für die ein DH-Schlüsselaustausch erforderlich ist, um die SSL-Transaktion einzurichten, aktivieren Sie den DH-Schlüsselaustausch auf der Appliance. Konfigurieren Sie andere Einstellungen basierend auf Ihrem Netzwerk.
Um die Chiffre aufzulisten, für die DH-Parameter mit der CLI festgelegt werden müssen, geben Sie Folgendes ein: sh chiffre DH.
Um die Chiffre aufzulisten, für die DH-Parameter mithilfe des Konfigurationsdienstprogramms festgelegt werden müssen, navigieren Sie zu Verkehrsverwaltung > SSL > Verschlüsselungsgruppen, und doppelklicken Sie auf DH.
Weitere Informationen zum Aktivieren des DH-Schlüsselaustauschs finden Sie unterGenerieren eines Diffie-Hellman-Schlüssels (DH).
Konfigurieren von DH-Parametern mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um DH-Parameter zu konfigurieren und die Konfiguration zu überprüfen:
- `set ssl vserver <vserverName> -dh <Option> -dhCount <RefreshCountValue> -filepath <string>
- show ssl vserver <vServerName>`
Beispiel:
set ssl vserver vs-server -dh ENABLED -dhFile /nsconfig/ssl/ns-server.cert -dhCount 1000
Done
show ssl vserver vs-server
Advanced SSL configuration for VServer vs-server:
DH: ENABLED
Ephemeral RSA: ENABLED Refresh Count: 1000
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
HSTS IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.2: ENABLED TLSv1.2: ENABLED
1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done
Konfigurieren von DH-Parametern mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen Server.
- Wählen Sie im Abschnitt SSL-Parameter die Option DH Parameter aktivieren aus, und geben Sie einen Aktualisierungszähler und einen Dateipfad an.
Ephemere RSA
Ephemere RSA ermöglicht Exportclients die Kommunikation mit dem sicheren Server, auch wenn das Serverzertifikat keine Exportclients unterstützt (1024-Bit-Zertifikat). Wenn Sie verhindern möchten, dass Exportclients auf das sichere Web-Objekt oder die sichere Ressource zugreifen, müssen Sie den flüchtigen RSA-Schlüsselaustausch deaktivieren.
Standardmäßig ist diese Funktion auf der Citrix ADC Appliance aktiviert, wobei die Anzahl der Aktualisierungen auf Null (unendliche Nutzung) festgelegt ist.
Hinweis:
Der flüchtige RSA-Schlüssel wird automatisch generiert, wenn Sie eine Exportchiffre an einen virtuellen SSL- oder TCP-basierten SSL-Server oder Dienst binden. Wenn Sie die Exportchiffre entfernen, wird der eRSA-Schlüssel nicht gelöscht. Sie wird später wiederverwendet, wenn eine andere Exportchiffre an einen SSL- oder TCP-basierten virtuellen SSL-Server oder Dienst gebunden ist. Der eRSA-Schlüssel wird beim Neustart des Systems gelöscht.
Konfigurieren von flüchtiger RSA mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um flüchtige RSA zu konfigurieren und die Konfiguration zu überprüfen:
set ssl vserver <vServerName> -eRSA (enabled | disabled) -eRSACount <positive_integer>
show ssl vserver <vServerName>
Beispiel:
set ssl vserver vs-server -eRSA ENABLED -eRSACount 1000
Done
show ssl vserver vs-server
Advanced SSL configuration for VServer vs-server:
DH: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 1000
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
HSTS IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.2: ENABLED TLSv1.2: ENABLED
1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done
Konfigurieren von ephemeren RSA mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen Server.
- Wählen Sie im Abschnitt SSL-Parameter die Option Ephemere RSA aktivierenaus, und geben Sie eine Aktualisierungsanzahl an.
Sitzungswiederverwendung
Für SSL-Transaktionen erfordert die Einrichtung des anfänglichen SSL-Handshake CPU-intensive Verschlüsselungsvorgänge für öffentliche Schlüssel. Die meisten Handshake-Vorgänge sind mit dem Austausch des SSL-Sitzungsschlüssels (Clientschlüsselaustauschnachricht) verknüpft. Wenn eine Clientsitzung für einige Zeit im Leerlauf ist und dann wieder aufgenommen wird, wird der SSL-Handshake in der Regel erneut durchgeführt. Wenn die Sitzungswiederverwendung aktiviert ist, wird der Austausch von Sitzungsschlüsseln für vom Client empfangene Sitzungswiederholungsanforderungen vermieden.
Die Sitzungswiederverwendung ist auf der Citrix ADC Appliance standardmäßig aktiviert. Durch Aktivieren dieser Funktion wird die Serverlast reduziert, die Reaktionszeit verbessert und die Anzahl der SSL-Transaktionen pro Sekunde (TPS) erhöht, die der Server unterstützen kann.
Konfigurieren der Wiederverwendung von Sitzungen mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die Wiederverwendung der Sitzung zu konfigurieren und die Konfiguration zu überprüfen:
set ssl vserver <vServerName> -sessReuse ( ENABLED | DISABLED ) -sessTimeout <positive_integer>
show ssl vserver <vServerName>
Beispiel:
set ssl vserver vs-ssl -sessreuse enabled -sesstimeout 600
Done
show ssl vserver vs-ssl
Advanced SSL configuration for VServer vs-ssl:
DH: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 1000
Session Reuse: ENABLED Timeout: 600 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
HSTS IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.2: ENABLED TLSv1.2: ENABLED
1) CertKey Name: Auth-Cert-1 Server Certificate
1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done
Konfigurieren der Wiederverwendung der Sitzung mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen Server.
- Wählen Sie im Abschnitt SSL-Parameter die Option Sitzungswiederverwendung aktivieren aus, und geben Sie eine Zeit an, für die die Sitzung aktiv bleiben soll.
SSL-Protokolleinstellungen
Die Citrix ADC Appliance unterstützt die Protokolle SSLv3, TLSv1, TLSv1.1 und TLSv1.2. Jedes dieser Protokolle kann auf der Appliance entsprechend Ihrer Bereitstellung und dem Typ der Clients, die eine Verbindung mit der Appliance herstellen, festgelegt werden.
Die TLS-Protokollversionen 1.0, 1.1 und 1.2 sind sicherer als ältere Versionen des TLS/SSL-Protokolls. Um ältere Systeme zu unterstützen, erhalten viele TLS-Implementierungen jedoch die Abwärtskompatibilität mit dem SSLv3-Protokoll. In einem SSL-Handshake wird die höchste Protokollversion verwendet, die für den Client und den virtuellen SSL-Server, der auf der Citrix ADC Appliance konfiguriert ist.
Beim ersten Handshake-Versuch bietet ein TLS-Client die höchste Protokollversion, die er unterstützt. Wenn der Handshake fehlschlägt, bietet der Client eine niedrigere Protokollversion an. Wenn beispielsweise ein Handshake mit TLS-Version 1.1 nicht erfolgreich ist, versucht der Client neu zu verhandeln, indem er das TLSv1.0-Protokoll anbietet. Wenn dieser Versuch nicht erfolgreich ist, versucht der Client erneut mit dem SSLv3-Protokoll. Ein Mann in der Mitte (MITM) -Angreifer kann den anfänglichen Handshake brechen und Neuverhandlungen mit dem SSLv3-Protokoll auslösen und dann eine Schwachstelle in SSLv3 ausnutzen. Um solche Angriffe zu mildern, können Sie SSLv3 deaktivieren oder Neuverhandlungen mit einem heruntergestuften Protokoll nicht zulassen. Dieser Ansatz ist jedoch möglicherweise nicht praktikabel, wenn Ihre Bereitstellung Legacy-Systeme enthält. Eine Alternative besteht darin, einen Wert der Signaling Cipher Suite (TLS_FALLBACK_SCSV) in der Clientanforderung zu erkennen.
Ein TLS_FALLBACK_SCSV-Wert in einer Client-Hallo Meldung zeigt dem virtuellen Server an, dass der Client zuvor versucht hat, eine Verbindung mit einer höheren Protokollversion herzustellen und dass die aktuelle Anforderung ein Fallback ist. Wenn der virtuelle Server diesen Wert erkennt und eine Version unterstützt, die höher ist als die vom Client angegebene, wird die Verbindung mit einer schwerwiegenden Warnung abgelehnt. Der Handshake ist erfolgreich, wenn eine der folgenden Bedingungen erfüllt ist:
- Der Wert TLS_FALLBACK_SCSV ist nicht in der Client-Hallo Nachricht enthalten.
- Die Protokollversion im Client Hello ist die höchste Protokollversion, die vom virtuellen Server unterstützt wird.
Konfigurieren der SSL-Protokollunterstützung mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die SSL-Protokollunterstützung zu konfigurieren und die Konfiguration zu überprüfen:
set ssl vserver <vServerName> -ssl2 ( ENABLED | DISABLED ) -ssl3 ( ENABLED | DISABLED ) -tls1 ( ENABLED | DISABLED ) -tls11 ( ENABLED | DISABLED ) -tls12 ( ENABLED | DISABLED )
show ssl vserver <vServerName>
Beispiel:
set ssl vserver vs-ssl -tls11 ENABLED -tls12 ENABLED
Done
sh ssl vs vs-ssl
Advanced SSL configuration for VServer vs-ssl:
DH: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 0
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED
Push Encryption Trigger: Always
Send Close-Notify: YES
1 bound certificate:
1) CertKey Name: mycert Server Certificate
1 configured cipher:
1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done
Konfigurieren der SSL-Protokollunterstützung mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen Server.
- Wählen Sie im Abschnitt SSL-Parameter ein Protokoll aus, das aktiviert werden soll.
Close-Notify
Eine Close-Notify ist eine sichere Nachricht, die das Ende der SSL-Datenübertragung anzeigt. Eine Einstellung für Nahbenachrichtigung ist auf globaler Ebene erforderlich. Diese Einstellung gilt für alle virtuellen Server, Dienste und Dienstgruppen. Weitere Informationen zur globalen Einstellung finden Sie im Abschnitt Globale SSL-Parameter weiter unten auf dieser Seite.
Zusätzlich zur globalen Einstellung können Sie den Parameter close-notify auf der Ebene des virtuellen Servers, des Dienstes oder der Dienstgruppe festlegen. Sie haben daher die Flexibilität, den Parameter für eine Entität festzulegen und ihn für eine andere Entität aufzuheben. Stellen Sie jedoch sicher, dass Sie diesen Parameter auf globaler Ebene festlegen. Andernfalls gilt die Einstellung auf Entitätenebene nicht.
Konfigurieren von Close-Notify auf Entitätenebene mit der CLI
Geben Sie an der Eingabeaufforderung einen der folgenden Befehle ein, um die Close-Notify-Funktion zu konfigurieren und die Konfiguration zu überprüfen:
- Geben Sie Folgendes ein, um auf der Ebene des virtuellen Servers zu konfigurieren:
set ssl vserver <vServerName> -sendCloseNotify ( YES | NO )
show ssl vserver <vServerName>
- Um auf Service-Level zu konfigurieren, geben Sie Folgendes ein:
set ssl service <serviceName> -sendCloseNotify ( YES | NO )
show ssl service <serviceName>
- Um auf Servicegruppenebene zu konfigurieren, geben Sie Folgendes ein:
set ssl serviceGroup <serviceGroupName> -sendCloseNotify ( YES | NO )
show ssl serviceGroup <serviceGroupName>
Beispiel:
set ssl vserver sslvsvr -sendCloseNotify YES
Done
Konfigurieren der Close-Notify Funktion auf Entitätenebene mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen Server.
- Wählen Sie im Abschnitt SSL-Parameter die Option Schließen Benachrichtigen senden .
Globale SSL-Parameter
Die erweiterte Anpassung Ihrer SSL-Konfiguration behebt spezifische Probleme. Sie können den set ssl parameter
Befehl oder das Konfigurationsdienstprogramm verwenden, um Folgendes anzugeben:
- Quantengröße, die für SSL-Transaktionen verwendet werden soll.
- CRL-Speichergröße.
- OCSP-Cachegröße.
- SSL-Neuverhandlung verweigern.
- Setzen Sie das PUSH-Flag für entschlüsselte, verschlüsselte oder alle Datensätze.
- Löscht Anforderungen, wenn der Client den Handshake für eine Domäne initiiert und eine HTTP-Anforderung für eine andere Domäne sendet.
- Legen Sie die Zeit fest, nach der die Verschlüsselung ausgelöst wird.
Hinweis: Die angegebene Zeit gilt nur, wenn Sie den
set ssl vserver
Befehl oder das Konfigurationsdienstprogramm verwenden, um die zeitgesteuerte Verschlüsselung festzulegen. - NDCPP-Konformitätszertifikatprüfung - Gilt, wenn die Appliance einen Client handelt (Back-End-Verbindung). Ignorieren Sie während der Zertifikatüberprüfung den allgemeinen Namen, wenn SAN im SSL-Zertifikat vorhanden ist.
- Ermöglichen Sie einen heterogenen Cluster von Cavium-Chip-basierten Appliances wie MPX 14000 und Intel Coleto-Chip-basierten Appliances wie MPX 15000 Appliances mit einer anderen Anzahl von Paket-Engines. (Unterstützung wurde ab Release 13.0 Build 47.x hinzugefügt.).
- Aktivieren Sie sichere Neuverhandlungen am Back-End (Unterstützung aus Release 1.0 Build 58.x hinzugefügt).
- Adaptive SSL-Verkehrssteuerung (Unterstützung aus Release 13.0 Build 58.x hinzugefügt).
Konfigurieren globaler SSL-Parameter mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um erweiterte SSL-Einstellungen zu konfigurieren und die Konfiguration zu überprüfen:
set ssl parameter [-quantumSize <quantumSize>] [-crlMemorySizeMB <positive_integer>] [-strictCAChecks (YES | NO)] [-sslTriggerTimeout <positive_integer>] [-sendCloseNotify (YES | NO)] [-encryptTriggerPktCount <positive_integer>] [-denySSLReneg <denySSLReneg>] [-insertionEncoding (Unicode|UTF-8)] [-ocspCacheSize <positive_integer>][- pushFlag <positive_integer>] [- dropReqWithNoHostHeader (YES | NO)] [-pushEncTriggerTimeout <positive_integer>] [-ndcppComplianceCertCheck ( YES | NO)] [-heterogeneousSSLHW (ENABLED | DISABLED )]
show ssl parameter
Beispiel:
set ssl parameter -quantumSize 8 -crlMemorySizeMB 256 -strictCAChecks no -ssltriggerTimeout 100 -sendClosenotify no -encryptTriggerPktCount 45 -denySSLReneg NONSECURE -insertionEncoding unicode -ocspCacheSize 10 -pushFlag 3 -dropReqWithNoHostHeader YES -pushEncTriggerTimeout 100 ms -ndcppComplianceCertCheck YES
Done
show ssl parameter
Advanced SSL Parameters
-----------------------
SSL quantum size : 8 KB
Max CRL memory size : 256 MB
Strict CA checks : NO
Encryption trigger timeout : 100 ms
Send Close-Notify : NO
Encryption trigger packet count : 45
Deny SSL Renegotiation : NONSECURE
Subject/Issuer Name Insertion Format : Unicode
OCSP cache size : 10 MB
Push flag : 0x3 (On every decrypted and encrypted record)
Strict Host Header check for SNI enabled SSL sessions : YES
PUSH encryption trigger timeout : 100 ms
Crypto Device Disable Limit : 0
Global undef action for control policies : CLIENTAUTH
Global undef action for data policies : NOOP
Default profile : DISABLED
SSL Insert Space in Certificate Header : YES
Disable TLS 1.1/1.2 for SSL_BRIDGE secure monitors : NO
Disable TLS 1.1/1.2 for dynamic and VPN services : NO
Software Crypto acceleration CPU Threshold : 0
Hybrid FIPS Mode : DISABLED
Signature and Hash Algorithms supported by TLS1.2 : ALL
SSL Interception Error Learning and Caching : DISABLED
SSL Interception Maximum Error Cache Memory : 0 Bytes
NDCPP Compliance Certificate Check : YES
Heterogeneous SSL HW (Cavium and Intel Based) : ENABLED
Done
Konfigurieren der Überprüfung der NDcPP-Konformitätszertifikate über die GUI
-
Navigieren Sie zu Traffic Management > SSL, und wählen Sie in der Gruppe Einstellungen die Option Erweiterte SSL-Einstellungen ändern aus.
-
Wählen Sie NDcPP-Konformitätszertifikatprüfung aus. Klicken Sie auf OK.
Unterstützung für sichere Neuverhandlungen am Backend einer Citrix ADC Appliance
Hinweis: Diese Funktion wird in Version 13.0 Build 58.x und höher unterstützt. In früheren Releases und Builds wurde im Back-End nur unsichere Neuverhandlungen unterstützt.
Die Funktion wird auf den folgenden Plattformen unterstützt: • VPX • MPX-Plattformen, die N2- oder N3-Chips enthalten • Plattformen mit Intel Coleto SSL Chips
Die Funktion wird auf der FIPS-Plattform noch nicht unterstützt.
Eine sichere Neuverhandlung wird standardmäßig am Back-End einer ADC-Appliance verweigert. Das heißt, der denySSLReneg
Parameter ist auf ALL (Standard) festgelegt.
Um eine sichere Neuverhandlung auf dem Back-End zu ermöglichen, wählen Sie eine der folgenden Einstellungen für den Parameter denySSLReneg
aus:
- NO
- FRONTEND_CLIENT
- FRONTEND_CLIENTSERVER
- NONSECURE
Sichere Neuverhandlung über die CLI aktivieren
Geben Sie an der Eingabeaufforderung Folgendes ein:
set ssl parameter -denySSLReneg <denySSLReneg>
Beispiel:
set ssl parameter -denySSLReneg NONSECURE
Done
sh ssl parameter
Advanced SSL Parameters
-----------------------
SSL quantum size : 8 KB
Max CRL memory size : 256 MB
Strict CA checks : NO
Encryption trigger timeout : 100 ms
Send Close-Notify : YES
Encryption trigger packet count : 45
Deny SSL Renegotiation : NONSECURE
Subject/Issuer Name Insertion Format : Unicode
OCSP cache size : 10 MB
Push flag : 0x0 (Auto)
Strict Host Header check for SNI enabled SSL sessions : NO
Match HTTP Host header with SNI : CERT
PUSH encryption trigger timeout : 1 ms
Crypto Device Disable Limit : 0
Global undef action for control policies : CLIENTAUTH
Global undef action for data policies : NOOP
Default profile : ENABLED
SSL Insert Space in Certificate Header : YES
Disable TLS 1.1/1.2 for SSL_BRIDGE secure monitors : NO
Disable TLS 1.1/1.2 for dynamic and VPN services : NO
Software Crypto acceleration CPU Threshold : 0
Hybrid FIPS Mode : DISABLED
Signature and Hash Algorithms supported by TLS1.2 : ALL
SSL Interception Error Learning and Caching : DISABLED
SSL Interception Maximum Error Cache Memory : 0 Bytes
NDCPP Compliance Certificate Check : NO
Heterogeneous SSL HW (Cavium and Intel Based) : DISABLED
Crypto Operation Queue Limit : 150%
Done
Ermöglichen Sie sichere Neuverhandlungen mit der GUI
- Navigieren Sie zu Traffic Management > SSL > Erweiterte SSL-Einstellungen ändern.
-
Setzen Sie Deny SSL Renegotiation auf einen anderen Wert als ALL.
Adaptive SSL-Verkehrssteuerung
Hinweis: Diese Funktion wird in Version 13.0 Build 58.x und höher unterstützt.
Wenn hoher Datenverkehr auf der Appliance empfangen wird und die Krypto-Beschleunigungskapazität voll ist, beginnt die Appliance, Verbindungen später in die Warteschlange zu stellen. Derzeit ist die Größe dieser Warteschlange auf 64 K festgelegt und die Appliance beginnt, Verbindungen zu löschen, wenn dieser Wert überschritten wird.
Ab Release 13.0 Build 58.x kann der Benutzer einen Wert konfigurieren, der ein Prozentsatz der tatsächlichen Kapazität ist. Mit dieser Verbesserung lässt die Appliance neue Verbindungen fallen, wenn die Anzahl der Elemente in der Warteschlange größer ist als das adaptiv und dynamisch berechnete Limit. Dieser Ansatz steuert eingehende SSL-Verbindungen und verhindert einen übermäßigen Ressourcenverbrauch und andere Fehler, wie z. B.
Wenn die Warteschlange leer ist, kann die Appliance weiterhin Verbindungen annehmen. Wenn die Warteschlange nicht leer ist, hat das Kryptosystem seine Kapazität erreicht und die Appliance beginnt, Verbindungen in die Warteschlange zu stellen.
Das Limit wird basierend auf folgenden Themen berechnet:
- Die tatsächliche Kapazität der Appliance.
- Vom Benutzer konfigurierter Wert als Prozentsatz der tatsächlichen Kapazität. Der Standardwert ist auf 150% festgelegt.
Wenn beispielsweise die tatsächliche Kapazität einer Appliance 1000 Vorgänge/Sekunde zu einem bestimmten Zeitpunkt beträgt und der Standardprozentsatz konfiguriert ist, beträgt das Limit, nach dem die Appliance Verbindungen ablässt, 1500 (150% von 1000).
So konfigurieren Sie das Limit für die Betriebswarteschlange mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
set ssl parameter -operationQueueLimit <positive_integer>
Beschränkung der Betriebswarteschlange - Begrenzung des Prozentsatzes der Kapazität der Warteschlange für Krypto-Operationen, über die neue SSL-Verbindungen nicht akzeptiert werden, bis die Warteschlange reduziert wird. Standardwert: 150. Mindestwert: 0. Maximalwert: 10000
So konfigurieren Sie das Limit für die Betriebswarteschlange mit der GUI
- Navigieren Sie zu Traffic Management > SSL.
- Klicken Sie in den Einstellungenauf Erweiterte SSL-Einstellungen ändern.
- Geben Sie einen Wert unter Operation Queue Limit ein. Der Standardwert ist 150.
-
Klicken Sie auf OK.
Heterogene Clusterbereitstellungen
Ab Version 13.0 Build 47.x können Sie eine heterogene Clusterbereitstellung von Citrix ADC MPX-Appliances mit einer anderen Anzahl von Paketmodulen erstellen, indem Sie den SSL-Parameter “Heterogene SSL HW” auf ENABLED setzen. Um beispielsweise einen Cluster von Cavium-Chip-basierten Appliances (MPX 14000 oder ähnlich) und Intel Coleto-Chip-basierten Appliances (MPX 15000 oder ähnlich) zu bilden, aktivieren Sie den SSL-Parameter “Heterogene SSL-HW”. Um einen Cluster von Plattformen mit demselben Chip zu bilden, behalten Sie den Standardwert (DISABLED) für diesen Parameter bei.
Hinweise:
Die folgenden Funktionen werden in einem heterogenen Cluster nicht unterstützt:
- VPX-Instanzen, die auf Citrix ADC SDX-Appliances gehostet werden.
- SSLv3-Protokoll auf SSL-Entitäten wie virtuellen Servern, Diensten, Dienstgruppen und internen Diensten.
- CPU-Schwellenwert für Software-Krypto-Beschleunigung (Verwendung von Hardware und Software zur Verbesserung der Verschlüsselungsleistung von ECDSA und ECDHE).
Weitere Hinweise zu den Plattformen, die bei der Bildung eines heterogenen Clusters unterstützt werden, finden Sie unterhttps://docs.citrix.com/de-de/citrix-adc/current-release/clustering/support-for-heterogeneous-cluster.html.
Aktivieren eines heterogenen Clusters mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
set ssl parameter -heterogeneousSSLHW ENABLED
Aktivieren eines heterogenen Clusters über die GUI
- Navigieren Sie zu Traffic Management > SSL, und wählen Sie in der Gruppe Einstellungen die Option Erweiterte SSL-Einstellungen ändern aus.
-
Wählen Sie Heterogene SSL HW. Klicken Sie auf OK.
PUSH-Flag-basierter Verschlüsselungsauslöser
Mit dem Verschlüsselungsauslösemechanismus, der auf dem PSH TCP-Flag basiert, können Sie nun Folgendes tun:
- Verbinden Sie aufeinanderfolgende Pakete, in denen das PSH-Flag gesetzt ist, in einem einzigen SSL-Datensatz, oder ignorieren Sie das PSH-Flag.
- Führen Sie eine zeitgesteuerte Verschlüsselung durch, bei der der Zeitüberschreitungswert global mithilfe des
set ssl parameter -pushEncTriggerTimeout <positive_integer>
Befehls festgelegt wird.
Konfigurieren Sie die PUSH-Flag-basierte Verschlüsselung mit der CLI
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um die PUSH-Flag-basierte Verschlüsselung zu konfigurieren und die Konfiguration zu überprüfen:
set ssl vserver <vServerName> [-pushEncTrigger <pushEncTrigger>]
show ssl vserver
Beispiel:
set ssl vserver vserver1 -pushEncTrigger always
Done
sh ssl vserver vserver1
Advanced SSL configuration for VServer vserver1:
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: DISABLED
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
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) Cipher Name: DEFAULT
Description: Default cipher list with encryption strength >= 128bit
Done
Konfigurieren Sie die PUSH-Flag-basierte Verschlüsselung mit der GUI
- Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und öffnen Sie einen virtuellen SSL-Server.
- Wählen Sie im Abschnitt SSL-Parameter aus der Liste PUSH Encryption Trigger einen Wert aus.
Unterstützung für TLS1.2-Signatur-Hash-Algorithmus
Die Citrix ADC Appliance ist vollständig TLS1.2-Signatur-Hash-Erweiterung kompatibel.
In einem SSL-Handshake sendet ein Client eine Liste unterstützter Signatur-Hash-Algorithmen. Der Client verwendet die Erweiterung “signature_algorithms”, um dem Server anzugeben, welche Signatur-Hash-Algorithmus-Paare in den SSL-Handshake-Nachrichten (SKE und CCV) verwendet werden könnten. Das Feld “extension_data” dieser Erweiterung enthält einen Wert “supported_signature_algorithms” in der Client-Hello Nachricht. Der SSL-Handshake wird fortgesetzt, wenn der Server einen dieser Signatur-Hash-Algorithmen unterstützt. Wenn der Server keinen dieser Algorithmen unterstützt, wird die Verbindung unterbrochen.
Wenn der Server ein Clientzertifikat für die Clientauthentifizierung anfordert, enthält die Zertifikatanforderungsnachricht einen Wert supported_signature_algorithms. Das Clientzertifikat wird basierend auf diesem Signatur-Hash-Algorithmus ausgewählt.
Hinweis:
Die Citrix ADC Appliance fungiert als Server für einen Client und als Client für den Back-End-Server.
Die Appliance unterstützt nur RSA-SHA1 und RSA-SHA256 am Frontend und RSA-MD5, RSA-SHA1 und RSA-SHA256 am Backend.
Die MPX/SDX/VPX-Appliance unterstützt die folgenden Signatur-Hash-Kombinationen. Wenn auf einer SDX-Appliance ein SSL-Chip einer VPX-Instanz zugewiesen ist, gilt die Verschlüsselungsunterstützung einer MPX-Appliance. Andernfalls gilt die normale Verschlüsselungsunterstützung einer VPX-Instanz.
- Auf einer VPX-Instanz und auf einer MPX/SDX-Appliance ohne N3-Chips:
- RSA-MD5
- RSA-SHA1
- RSA-SHA224
- RSA-SHA256
- RSA-SHA384
- RSA-SHA512
- Auf einer MPX/SDX-Einheit mit N3-Chips:
- RSA-MD5
- RSA-SHA1
- RSA-SHA224
- RSA-SHA256
- RSA-SHA384
- RSA-SHA512
- ECDSA-SHA1
- ECDSA-SHA224
- ECDSA-SHA256
- ECDSA-SHA384
- ECDSA-SHA512
Standardmäßig sind alle Signatur-Hash-Algorithmen aktiviert. Sie können jedoch nur wenige Signaturhash-Algorithmen aktivieren, indem Sie den folgenden Befehl verwenden:
set ssl parameter -sigDigestType <sigDigestType>
Parameters
sigDigestType
Signature digest algorithms supported by the appliance. The platform determines the list of algorithms supported by default.
On VPX: RSA-MD5 RSA-SHA1 RSA-SHA224 RSA-SHA256 RSA-SHA384 RSA-
SHA512
On MPX with N3 cards: RSA-MD5 RSA-SHA1 RSA-SHA224 RSA-
SHA256 RSA-SHA384 RSA-SHA512 ECDSA-SHA1 ECDSA-SHA224 ECDSA-
SHA256 ECDSA-SHA384 ECDSA-SHA512
Other MPX Platforms: RSA-MD5 RSA-SHA1 RSA-SHA224 RSA-SHA256 RSA-SHA384 RSA-
SHA512.
set ssl parameter -sigDigestType RSA-SHA224 RSA-SHA256 RSA-SHA384 RSA-SHA512
Validieren des Peer-Zertifikats
Gemäß RFC 5246 muss das Peer-Zertifikat mit einem der Signatur-Hash-Algorithmen signiert werden, die in der Client Hello -Erweiterung enthalten sind. Sie können denstrictSigDigestCheck
Parameter verwenden. Abhängig von der vom Client gesendeten Signatur-Hash-Liste gibt die Appliance bei Aktivierung ein Zertifikat zurückstrictSigDigestCheck
, das von einem der Signatur-Hash-Algorithmen signiert wurde, die in der Client-Hlo-Erweiterung erwähnt wurden. Wenn der Peer über kein geeignetes Zertifikat verfügt, wird die Verbindung unterbrochen. Wenn dieser Parameter deaktiviert ist, wird der Signatur-Hash nicht im Peer-Zertifikat überprüft.
Sie können eine strenge Signature-Digest-Überprüfung für einen virtuellen SSL-Server und -Dienst konfigurieren. Wenn Sie diesen Parameter auf einem virtuellen SSL-Server aktivieren, muss das vom Server gesendete Serverzertifikat mit einem der Signatur-Hash-Algorithmen signiert werden, die in der Client-Hlo-Erweiterung aufgeführt sind. Wenn die Clientauthentifizierung aktiviert ist, muss das vom Server empfangene Clientzertifikat mit einem der Signaturhash-Algorithmen signiert werden, die in der vom Server gesendeten Zertifikatsanforderung aufgeführt sind.
Wenn Sie diesen Parameter für einen SSL-Dienst aktivieren, muss das vom Client empfangene Serverzertifikat mit einem der Signatur-Hash-Algorithmen signiert werden, die in der Client-Hlo-Erweiterung aufgeführt sind. Das Clientzertifikat muss mit einem der Signatur-Hash-Algorithmen signiert werden, die in der Zertifikatanforderungsnachricht aufgeführt sind.
Wenn das Standardprofil aktiviert ist, können Sie es verwenden, um eine strenge Signatur-Digest-Überprüfung auf einem virtuellen SSL-Server, SSL-Dienst und SSL-Profil zu konfigurieren.
Konfigurieren der strengen Signaturüberprüfung auf einem virtuellen SSL-Server, -Dienst oder -Profil mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
set ssl vserver <vServerName> -strictSigDigestCheck ( ENABLED | DISABLED )
set ssl service <serviceName> -strictSigDigestCheck ( ENABLED | DISABLED )
set ssl profile <name>-strictSigDigestCheck ( ENABLED | DISABLED )
Parameters
strictSigDigestCheck
Check whether peer entity certificate is signed using one of the signature-hash algorithms supported by the Citrix ADC appliance.
Possible values: ENABLED, DISABLED
Default: DISABLED
Beispiel:
set ssl vserver v1 –strictSigDigestCheck Enabled
set ssl service s1 –strictSigDigestCheck Enabled
set ssl profile p1 –strictSigDigestCheck Enabled
Wichtig:
Wenn DH-, ECDHE- oder ECDSA-Chiffre auf der Appliance konfiguriert sind, muss die SKE-Nachricht mit einem der Signature-Hashes, die der Clientliste und der auf der Appliance konfigurierten Liste gemeinsam sind, signiert werden. Wenn kein gemeinsamer Signaturhash vorhanden ist, wird die Verbindung unterbrochen.
In diesem Artikel
- SSL aktivieren
- Konfigurieren von Diensten
- Konfiguration des virtuellen SSL-Servers
- Binden von Diensten an den virtuellen SSL-Server
- Konfigurieren eines virtuellen Servers (Server Name Indication, SNI) für sicheres Hosting mehrerer Standorte
- Unterstützung für SNI im Back-End-Dienst
- Hinzufügen oder Aktualisieren eines Zertifikatschlüsselpaars
- Binden Sie das Zertifikatschlüsselpaar an den virtuellen SSL-Server
- Parameter des virtuellen SSL-Servers
- Globale SSL-Parameter