Citrix ADC

Erstellen eines Zertifikats

Eine Zertifizierungsstelle (Certificate Authority, CA) ist eine Entität, die digitale Zertifikate für die Verwendung in der Kryptographie des öffentlichen Schlüssels ausstellt. Zertifikate, die von einer Zertifizierungsstelle ausgestellt oder signiert wurden, werden von Anwendungen, z. B. Webbrowsern, automatisch vertrauenswürdig, die SSL-Transaktionen durchführen. Diese Anwendungen verwalten eine Liste der Zertifizierungsstellen, denen sie vertrauen. Wenn das Zertifikat, das für die sichere Transaktion verwendet wird, von einer der vertrauenswürdigen Zertifizierungsstellen signiert wird, fährt die Anwendung mit der Transaktion fort.

Informationen zum Importieren eines vorhandenen Zertifikats und Schlüssels finden Sie unterImportieren eines Zertifikats.

Führen Sie die folgenden Schritte aus, um ein Zertifikat zu erstellen und es an einen virtuellen SSL-Server zu binden. Die einzigen Sonderzeichen, die in den Dateinamen zulässig sind, sind Unterstrich und Punkt.

  • Erstellen Sie einen privaten Schlüssel.
  • Erstellen Sie eine Zertifikatsignieranforderung (CSR).
  • Senden Sie die CSR an eine Zertifizierungsstelle.
  • Erstellen Sie ein Zertifikatschlüsselpaar.
  • Binden Sie das Zertifikatschlüsselpaar an einen virtuellen SSL-Server

Das folgende Diagramm veranschaulicht den End-zu-End-Fluss.

End-to-End-Fluss

Erstellen eines privaten Schlüssels

Anmerkungen:

  • Ab Version 12.1 Build 49.x können Sie den AES256-Algorithmus mit dem PEM-Schlüsselformat verwenden, um einen privaten Schlüssel auf der Appliance zu verschlüsseln. AES mit 256-Bit-Schlüssel ist mathematisch effizienter und sicherer im Vergleich zum 56-Bit-Schlüssel von DES.

  • Ab Release 12.1 Build 50.x können Sie einen RSA- oder DSA-Schlüssel im PKCS #8 Format erstellen.

Der private Schlüssel ist der wichtigste Teil eines digitalen Zertifikats. Per Definition darf dieser Schlüssel für niemanden freigegeben werden 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.

Die Appliance unterstützt zwei Verschlüsselungsalgorithmen, RSA und DSA, zum Erstellen von privaten Schlüsseln. Sie können beide Arten von privaten Schlüsseln an die Zertifizierungsstelle (CA) senden. 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:

  • Stellen Sie sicher, dass Sie den Zugriff auf Ihren privaten Schlüssel einschränken. Jeder, der Zugriff auf Ihren privaten Schlüssel hat, kann Ihre SSL-Daten entschlüsseln.
  • 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.

Alle SSL-Zertifikate und -Schlüssel werden im/nsconfig/ssl Ordner auf der Appliance gespeichert. Für zusätzliche Sicherheit können Sie den auf der Appliance gespeicherten privaten Schlüssel mit dem Data Encryption Standard (DES) oder dem Triple DES (3DES) -Algorithmus verschlüsseln.

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]

Beispiel:

create rsakey testkey 2048 -aes256 -password 123456 -pkcs8

Erstellen eines privaten RSA-Schlüssels mit der GUI

  1. Navigieren Sie zu Traffic Management > SSL.

  2. Wählen Sie in der Gruppe SSL-Schlüssel die Option RSA-Schlüssel erstellen aus.

    RSA-Schlüssel erstellen

  3. 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 (in Bits) des RSA-Schlüssels. Kann von 512 Bit bis 4096 Bit reichen.
    • Öffentlicher 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 : 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 (DES3) Algorithmus.
    • PEM-Passphrase - Geben Sie optional einen Passphrase für den Schlüssel ein.

    Werte eingeben

Wählen Sie den AES256-Kodierungsalgorithmus in einem RSA-Schlüssel über die GUI aus

  1. Navigieren Sie zu Verkehrsverwaltung > SSL > SSL-Dateien > RSA-Schlüssel erstellen.

  2. Wählen Sie unter Schlüsselformatdie Option PEMaus.

  3. Wählen Sie im PEM-CodierungsalgorithmusAES256aus.

  4. Wählen Sie PKCS8aus.

Erstellen eines privaten DSA-Schlüssels mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

create ssl dsakey <keyfile> <bits> [-keyform (DER | PEM)] [-pkcs8]

Beispiel:

create ssl dsakey Key-DSA-1 2048 -keyform PEM

Erstellen eines privaten DSA-Schlüssels mit der GUI

  1. Navigieren Sie zu Traffic Management > SSL, und wählen Sie in der Gruppe SSL-Schlüsselerstellenaus, und erstellen Sie einen DSA-Schlüssel.
  2. Um einen Schlüssel im PKCS #8 Format zu erstellen, wählen Sie PKCS8aus.

Unterstützung für SHA 256-Digestalgorithmus in einer Zertifikatsignieranforderung

Die Zertifikatsignieranforderung (CSR) ist eine Sammlung von Informationen. Es enthält den Domänennamen, andere wichtige Unternehmensdetails und den öffentlichen Schlüssel, der zum Erstellen des Zertifikats verwendet werden soll. Um das Generieren eines ungültigen Zertifikats zu vermeiden, stellen Sie sicher, dass die von Ihnen angegebenen Angaben korrekt sind.

Die Citrix ADC Appliance unterstützt das Erstellen einer CSR, die standardmäßig mit dem SHA1-Digestalgorithmus signiert wurde. In früheren Versionen mussten Sie OpenSSL verwenden, um eine CSR zu erstellen, die mit dem SHA256-Digest-Algorithmus signiert wurde.

Die Appliance unterstützt das Erstellen einer CSR, die mit dem SHA256-Digestalgorithmus signiert wurde. Der Verschlüsselungs-Hash-Algorithmus, der in SHA256 verwendet wird, macht es stärker als SHA1.

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 )

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

Erstellen einer Zertifikatsignaturanforderung mit der GUI

  1. Navigieren Sie zu Traffic Management > SSL.
  2. Klicken Sie in SSL-Zertifikat auf Create Certificate Signing Request (CSR).

    Zertifikatsignaturanforderung erstellen

  3. Wählen Sie unter Digest-Methode die Option SHA256 aus.

Unterstützung für alternativen Antragstellernamen in einer Zertifikatsignieranforderung

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 (Certificate Signing Request, CSR) mehr. Sie erzwingen SAN in allen öffentlich vertrauenswürdigen Zertifikaten.

Die Citrix ADC Appliance unterstützt das Hinzufügen von SAN-Werten beim Erstellen einer CSR. Sie können eine CSR mit einem SAN-Eintrag an eine Zertifizierungsstelle senden, um ein signiertes Zertifikat mit dem SAN-Eintrag zu erhalten. Wenn die Appliance eine Anforderung erhält, sucht sie in den SAN-Einträgen im Serverzertifikat nach einem übereinstimmenden Domänennamen. Wenn eine Übereinstimmung gefunden wird, sendet sie das Zertifikat an den Client und schließt den SSL-Handshake ab. Sie können die CLI oder die GUI verwenden, um eine CSR mit SAN-Werten zu erstellen.

Hinweis:

Die Citrix ADC Appliance verarbeitet nur DNS-basierte SAN-Werte.

Erstellen Sie eine CSR mit dem alternativen Betreffnamen mit der CLI

create ssl certReq <reqFile> (-keyFile <input_filename> | -fipsKeyName <string>) [-subjectAltName <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 )]

Parameter:

SubjectAltName: Der alternative Name des Antragstellers (SAN) ist eine Erweiterung auf X.509, mit der verschiedene Werte mit einem Sicherheitszertifikat verknüpft werden können, indem ein SubjectAltName-Feld verwendet wird. Diese Werte werden als Subject Alternative Names (SAN) bezeichnet. Zu den Namen gehören:

  1. IP-Adressen (Präfix mit IP: Beispiel: IP:198.51.10.5 IP:192.0.2.100)

  2. DNS-Namen (Präfix mit DNS: Beispiel: DNS:www.example.com DNS:www.example.org DNS:www.example.net)

Geben Sie auf der CLI Werte in Anführungszeichen ein. Trennen Sie zwei Werte durch ein Leerzeichen. Anführungszeichen sind in der GUI nicht erforderlich. Maximale Länge: 127

Beispiel:

create certReq test1.csr -keyFile test1.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:*.example.com DNS:www.example.org DNS:www.example.net"

Hinweis:

Auf einer FIPS-Appliance müssen Sie den Schlüsseldateinamen durch den FIPS-Schlüsselnamen ersetzen, wenn Sie den FIPS-Schlüssel direkt auf der Appliance erstellen.

create certReq <csrname> -fipsKeyName fipskey.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:www.example.com DNS:www.example.org DNS:www.example.net"

Erstellen einer CSR mit der GUI

  1. Navigieren Sie zu Traffic Management > SSL > SSL-Dateien .
  2. Klicken Sie auf der Registerkarte CSR auf Create Certificate Signing Request (CSR) .
  3. Geben Sie die Werte ein, und klicken Sie auf Erstellen.

Einschränkungen

Um SAN beim Erstellen eines SSL-Zertifikats zu verwenden, müssen Sie die SAN-Werte explizit angeben. Die Werte werden nicht automatisch aus der CSR-Datei gelesen.

Ü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.

Erstellen eines Testzertifikats

Hinweis:

Informationen zum Generieren eines Servertestzertifikats finden Sie unterGenerieren eines Servertestzertifikats.

Die Citrix ADC Appliance verfügt über eine integrierte Zertifizierungsstellen-Tools-Suite, mit der Sie selbstsignierte Zertifikate zu Testzwecken erstellen können.

Achtung: Da diese Zertifikate von der Citrix ADC Appliance selbst und nicht von einer tatsächlichen Zertifizierungsstelle signiert werden, dürfen Sie sie nicht in einer Produktionsumgebung verwenden. Wenn Sie versuchen, ein selbstsigniertes Zertifikat in einer Produktionsumgebung zu verwenden, erhalten Benutzer bei jedem Zugriff auf den virtuellen Server eine Warnung Zertifikat ungültig.

Die Appliance unterstützt die Erstellung der folgenden Zertifikatstypen

  • Stammzertifikate
  • Intermediate-CA-Zertifikate
  • Endbenutzerzertifikate
    • Serverzertifikate
    • Client-Zertifikate

Erstellen Sie vor dem Generieren eines Zertifikats einen privaten Schlüssel, und erstellen Sie mit diesem einen CSR (Certificate Signing Request, CSR) auf der Appliance. Anstatt den CSR an eine Zertifizierungsstelle zu senden, verwenden Sie dann die Citrix ADC Zertifizierungsstellentools, um ein Zertifikat zu generieren.

Erstellen eines Zertifikats mithilfe eines Assistenten

  1. Navigieren Sie zu Traffic Management > SSL.
  2. Wählen Sie im Detailbereich unter Erste Schritteden Assistenten für den Zertifikatstyp aus, den Sie erstellen möchten.
  3. Folgen Sie den Anweisungen auf dem Bildschirm.

Erstellen eines Root-CA-Zertifikats mit der CLI

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>]

Im folgenden Beispiel ist csreq1 der CSR und rsa1 der private Schlüssel, der zuvor erstellt wurde.

Beispiel:

create ssl cert cert1 csreq1 ROOT_CERT -keyFile rsa1 -keyForm PEM -days 365

  Done

Erstellen eines zwischengeschalteten CA-Zertifikats mit der CLI

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey <input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]

Im folgenden Beispiel ist csr1 die zuvor erstellte CSR. Cert1 und rsakey1 sind das Zertifikat und der entsprechende Schlüssel des selbstsignierten Zertifikats (Root-CA), und pvtkey1 ist der private Schlüssel des zwischengeschalteten CA-Zertifikats.

Beispiel:

create ssl cert certsy csr1 INTM_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23
Done

create ssl rsakey pvtkey1 2048 -exponent F4 -keyform PEM
Done

Erstellen eines Root-CA-Zertifikats mit der GUI

Navigieren Sie zu Traffic Management > SSL, und wählen Sie in der Gruppe Erste Schritte den Assistenten für das Root-CA-Zertifikataus, und konfigurieren Sie ein Stammzertifizierungsstellenzertifikat.

Erstellen eines zwischengeschalteten CA-Zertifikats mit der GUI

Navigieren Sie zu Traffic Management > SSL, und wählen Sie in der Gruppe Erste Schritte den Assistenten für zwischengeschaltete CA-Zertifikateaus, und konfigurieren Sie ein Zwischenzertifikat der Zertifizierungsstelle.

Erstellen eines Endbenutzerzertifikats

Ein Endbenutzerzertifikat kann ein Clientzertifikat oder ein Serverzertifikat sein. Um ein Test-Endbenutzerzertifikat zu erstellen, geben Sie das Intermediate CA-Zertifikat oder das selbstsignierte Root-CA-Zertifikat an.

Hinweis:

Um ein Endbenutzerzertifikat für die Produktion zu erstellen, geben Sie ein vertrauenswürdiges Zertifizierungsstellenzertifikat an und senden Sie den CSR an eine Zertifizierungsstelle.

Erstellen eines Test-Endbenutzerzertifikats mit der Befehlszeilenschnittstelle

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days<positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey<input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]

Wenn kein Zwischenzertifikat vorhanden ist, verwenden Sie die Werte des Zertifikats (cert1) und des privaten Schlüssels (rsakey1) des Root-CA-Zertifikats in CaCert und CaKey.

Beispiel:

create ssl cert cert12 csr1 SRVR_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23

Done

Wenn ein Zwischenzertifikat vorhanden ist, verwenden Sie die Werte für das Zertifikat (certsy) und den privaten Schlüssel (pvtkey1) des Zwischenzertifikats in CaCert und CaKey.

Beispiel:

``` create ssl cert cert12 csr1 SRVR_CERT -CAcert certsy -CAkey pvtkey1 -CAserial 23

Done ``