Erstellen einer Zertifikatsignaturanforderung und Verwenden von SSL-Zertifikaten auf einer Citrix ADC Appliance
Informationen zum Installieren, Verknüpfen und Aktualisieren von Zertifikaten finden Sie unter Installieren, Verknüpfen und Aktualisieren von Zertifikaten.
Führen Sie die folgenden Schritte aus, um ein Zertifikat zu erstellen und es an einen virtuellen SSL-Server zu binden.
- Erstellen Sie einen privaten Schlüssel.
- Erstellen Sie eine Zertifikatsignieranforderung (CSR).
- Reichen Sie den CSR bei einer Zertifizierungsstelle ein.
- Erstellen Sie ein Zertifikatschlüsselpaar.
- Binden Sie das Zertifikatschlüsselpaar an einen virtuellen SSL-Server
Das folgende Diagramm veranschaulicht den Arbeitsablauf.
Erstellen eines privaten Schlüssels
Der private Schlüssel ist der wichtigste Teil eines digitalen Zertifikats. Per Definition ist dieser Schlüssel nicht mit jemandem zu teilen und muss sicher auf der Citrix ADC Appliance aufbewahrt werden. Alle mit dem öffentlichen Schlüssel verschlüsselten Daten können nur mit dem privaten Schlüssel entschlüsselt werden.
Das Zertifikat, das Sie von der Zertifizierungsstelle erhalten, ist nur mit dem privaten Schlüssel gültig, der zum Erstellen der CSR verwendet wurde. Der Schlüssel ist erforderlich, um das Zertifikat zur Citrix ADC Appliance hinzuzufügen.
Wichtig: Beschränken Sie den Zugriff auf Ihren privaten Schlüssel. Jeder, der Zugriff auf Ihren privaten Schlüssel hat, kann Ihre SSL-Daten entschlüsseln.
Hinweis: Die Länge des zulässigen SSL-Schlüsselnamens enthält die Länge des absoluten Pfadnamens, wenn der Pfad im Schlüsselnamen enthalten ist.
Erstellen eines privaten RSA-Schlüssels mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
create ssl rsakey <keyFile> <bits> [-exponent ( 3 | F4 )] [-keyform (DER | PEM )] [-des | -des3 | -aes256] {-password } [-pkcs8]
<!--NeedCopy-->
Beispiel:
create rsakey RSA_Key 2048 -aes256 -password 123456 -pkcs8
<!--NeedCopy-->
Erstellen eines privaten RSA-Schlüssels mit der GUI
-
Navigieren Sie zu Traffic Management > SSL > SSL-Dateien.
-
Klicken Sie auf der Seite SSL-Dateien auf die Registerkarte Keys und wählen Sie RSA-Schlüssel erstellenaus.
-
Geben Sie Werte für die folgenden Parameter ein, und klicken Sie auf Erstellen.
- Schlüsseldateiname - Name für und optional Pfad zur RSA-Schlüsseldatei. /nsconfig/ssl/ ist der Standardpfad.
- Schlüsselgröße - Größe des RSA-Schlüssels in Bits. Kann von 512 Bit bis 4096 Bit reichen.
- Public Exponent Value - Öffentlicher Exponent für den RSA-Schlüssel. Der Exponent ist Teil des Verschlüsselungsalgorithmus und wird für die Erstellung des RSA-Schlüssels benötigt.
- Schlüsselformat - Das Format, in dem die RSA-Schlüsseldatei auf der Appliance gespeichert ist.
- PEM-Encoding-Algorithmus - Verschlüsseln Sie den generierten RSA-Schlüssel mithilfe des AES 256-, DES- oder Triple-DES-Algorithmus (DES3). Standardmäßig sind private Schlüssel unverschlüsselt.
- PEM-Passphrase - Wenn der private Schlüssel verschlüsselt ist, geben Sie eine Passphrase für den Schlüssel ein.
Erstellen einer Zertifikatsignieranforderung
Verwenden Sie den privaten Schlüssel, um eine Zertifikatsignieranforderung zu erstellen und an eine Zertifizierungsstelle zu senden.
Erstellen einer Zertifikatsignaturanforderung mit der CLI
Geben Sie an der Eingabeaufforderung Folgendes ein:
create ssl certreq <reqFile> -keyFile <input_filename> | -fipsKeyName <string>) [-keyForm (DER | PEM) {-PEMPassPhrase }] -countryName <string> -stateName <string> -organizationName <string> -organizationUnitName <string> -localityName <string> -commonName <string> -emailAddress <string> {-challengePassword } -companyName <string> -digestMethod ( SHA1 | SHA256 )
<!--NeedCopy-->
Beispiel:
create ssl certreq priv_csr_sha256 -keyfile priv_2048_2 -keyform PEM -countryName IN -stateName Karnataka -localityName Bangalore -organizationName Citrix -organizationUnitName NS -digestMethod SHA256
<!--NeedCopy-->
Erstellen einer Zertifikatsignaturanforderung mit der GUI
- Navigieren Sie zu Traffic Management > SSL.
-
Klicken Sie auf der Seite “ SSL-Dateien “ auf die Registerkarte CSRs und dann auf Certificate Signing Request (CSR) erstellen.
-
Geben Sie Werte für die folgenden Parameter ein.
-
Dateiname anfordern - Name für und optional Pfad zur Zertifikatsignieranforderung (CSR). /nsconfig/ssl/ ist der Standardpfad.
-
Schlüsseldateiname - Name und optional Pfad zum privaten Schlüssel, der zum Erstellen der Zertifikatsignieranforderung verwendet wird, die dann Teil des Zertifikatschlüsselpaars wird. Der private Schlüssel kann entweder ein RSA-Schlüssel oder ein ECDSA-Schlüssel sein. Der Schlüssel muss im lokalen Speicher der Appliance vorhanden sein. /nsconfig/ssl ist der Standardpfad.
- Schlüsselformat
- PEM-Passphrase (für verschlüsselten Schlüssel)
- Digest-Methode
- Organisationsname
- Bundesstaat oder Provinz
- Land
-
Subject Alternative Name: Der Subjekt-Alternativname (SAN) ist eine Erweiterung von X.509, die es ermöglicht, verschiedene Werte mit einem Sicherheitszertifikat unter Verwendung eines SubjectAltName-Feldes zu verknüsen. Diese Werte werden “Subject Alternative Names” (SAN) genannt. Zu den Namen gehören:
- IP-Adressen (Präfix mit “IP:” Beispiel: IP:198.51.10.5 IP: 192.0.2.100)
- DNS-Namen (Präfix mit “DNS:” Beispiel: Dns:www.example.com DNS:www.example.org DNS:www.example.net)
Hinweise:
-
Das Feld Subject Alternative Name (SAN) in einem Zertifikat ermöglicht es Ihnen, mehrere Werte, wie Domänennamen und IP-Adressen, einem einzelnen Zertifikat zuzuordnen. Mit anderen Worten, Sie können mehrere Domänen wie www.example.com, www.example1.com, www.example2.com mit einem einzigen Zertifikat sichern.
-
Einige Browser, wie Google Chrome, unterstützen keinen allgemeinen Namen in einer Zertifikatsignieranforderung (CSR) mehr. Sie erzwingen SAN in allen öffentlich vertrauenswürdigen Zertifikaten.
- Allgemeiner Name: Der von Ihnen angegebene Name wird während eines SSL-Handshakes mit dem allgemeinen Namen im Serverzertifikat verglichen. Wenn die beiden Namen übereinstimmen, ist der Handshake erfolgreich. Wenn die allgemeinen Namen nicht übereinstimmen, wird der für den Dienst oder die Dienstgruppe angegebene allgemeine Name mit den SAN-Feldwerten im Zertifikat verglichen. Wenn er einem dieser Werte entspricht, ist der Handshake erfolgreich. Diese Konfiguration ist besonders nützlich, wenn sich beispielsweise zwei Server hinter einer Firewall befinden und einer der Server die Identität des anderen hinterlässt. Wenn der allgemeine Name nicht aktiviert ist, wird ein von beiden Servern vorgestelltes Zertifikat akzeptiert, wenn die IP-Adresse übereinstimmt.
-
- Klicken Sie auf Erstellen.
Übermitteln der CSR an die Zertifizierungsstelle
Die meisten Zertifizierungsstellen akzeptieren Zertifikatübermittlungen per E-Mail. Die Zertifizierungsstelle gibt ein gültiges Zertifikat an die E-Mail-Adresse zurück, von der Sie die CSR übermitteln.
Hinzufügen eines Zertifikatschlüsselpaars
Installieren Sie das von der Zertifizierungsstelle erhaltene signierte Zertifikat.
Hinweis: 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.
Hinzufügen eines Zertifikatschlüsselpaars mit der CLI
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>]
<!--NeedCopy-->
Beispiel:
add ssl certKey rsa_certkeypair -cert server_cert.pem -key RSA_Key.pem -password ssl -expiryMonitor ENABLED -notificationPeriod 30
Done
<!--NeedCopy-->
Hinzufügen 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 - Von der Zertifizierungsstelle erhaltenes signiertes Zertifikat.
-
Schlüsseldateiname - Name und optional Pfad zur Privatschlüsseldatei, die zur Bildung des Zertifikatschlüsselpaares verwendet wird.
-
Binden Sie das Zertifikatschlüsselpaar an einen virtuellen SSL-Server
Wichtig: Verknüpfen Sie alle Zwischenzertifikate mit diesem Zertifikat, bevor Sie das Zertifikat an einen virtuellen SSL-Server binden. Informationen zum Verknüpfen von Zertifikaten finden Sie unter Erstellen einer Zertifikatkette.
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.
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>
<!--NeedCopy-->
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
<!--NeedCopy-->
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.
Problembehandlung
Im Folgenden sind die beiden häufigsten Fehlerszenarien mit dem Link zu den jeweiligen Lösungsartikeln aufgeführt.
-
Wenn bei der Installation eines Zertifikatschlüsselpaars auf der Citrix ADC Appliance der folgende Fehler angezeigt wird, lesen Sie https://support.citrix.com/article/CTX134233
Fehler: Ungültiger privater Schlüssel oder PEM-Pass-Phrase für diesen privaten Schlüssel erforderlich.
-
Wenn bei der Installation eines SSL-Zertifikats auf der Citrix ADC Appliance der folgende Fehler angezeigt wird, lesen Sie https://support.citrix.com/article/CTX137887
Fehler: Ungültiges Zertifikat.
In diesem Artikel
- Erstellen eines privaten Schlüssels
- Erstellen eines privaten RSA-Schlüssels mit der CLI
- Erstellen einer Zertifikatsignieranforderung
- Übermitteln der CSR an die Zertifizierungsstelle
- Hinzufügen eines Zertifikatschlüsselpaars
- Binden Sie das Zertifikatschlüsselpaar an einen virtuellen SSL-Server
- Problembehandlung