XenServer

Zertifikate für den Workload Balancing

XenServer und Workload Balancing kommunizieren über HTTPS. Während der Konfiguration des Workload Balancing erstellt der Assistent automatisch ein selbstsigniertes Testzertifikat. Mit diesem selbstsignierten Testzertifikat kann Workload Balancing eine TLS-Verbindung zu XenServer herstellen. Standardmäßig erstellt Workload Balancing diese TLS-Verbindung mit XenServer automatisch. Sie müssen während oder nach der Konfiguration für den Workload Balancing keine Zertifikatkonfigurationen durchführen, um diese TLS-Verbindung herzustellen.

Hinweis:

Das selbstsignierte Zertifikat ist ein Platzhalter zur Erleichterung der HTTPS-Kommunikation und stammt nicht von einer vertrauenswürdigen Zertifizierungsstelle. Für zusätzliche Sicherheit empfehlen wir, ein Zertifikat zu verwenden, das von einer vertrauenswürdigen Zertifizierungsstelle signiert wurde.

Um ein Zertifikat von einer anderen Zertifizierungsstelle zu verwenden, z. B. ein signiertes Zertifikat von einer kommerziellen Zertifizierungsstelle, müssen Sie Workload Balancing und XenServer so konfigurieren, dass es verwendet wird.

Standardmäßig überprüft XenServer die Identität des Zertifikats nicht, bevor eine Verbindung zum Workload Balancing hergestellt wird. Um XenServer so zu konfigurieren, dass es nach einem bestimmten Zertifikat sucht, exportieren Sie das Stammzertifikat, das zum Signieren des Zertifikats verwendet wurde. Kopieren Sie das Zertifikat auf XenServer und konfigurieren Sie XenServer so, dass es überprüft, wenn eine Verbindung zu Workload Balancing hergestellt wird. XenServer fungiert in diesem Szenario als Client und Workload Balancing fungiert als Server.

Abhängig von Ihren Sicherheitszielen können Sie entweder:

XenServer überprüft, ob ein bestimmtes Zertifikat vorhanden ist, bevor die virtuelle Workload Balancing-Appliance über TLS eine Verbindung zu diesem Zertifikat herstellen kann. In diesem Fall befindet sich das echte Zertifikat (das Zertifikat mit dem privaten Schlüssel) auf dem Workload Balancing-Server. Das Zertifikat, mit dem es signiert wurde, befindet sich auf dem XenServer-Poolkoordinator.

Hinweis:

Die Zertifikatsüberprüfung ist eine Sicherheitsmaßnahme, um unerwünschte Verbindungen zu verhindern. Workload Balancing-Zertifikate müssen strenge Anforderungen erfüllen, sonst ist die Zertifikatsüberprüfung nicht erfolgreich. Wenn die Zertifikatsüberprüfung fehlschlägt, lässt XenServer die Verbindung nicht zu.

Damit die Zertifikatsüberprüfung erfolgreich ist, müssen Sie die Zertifikate an den spezifischen Speicherorten speichern, an denen XenServer die Zertifikate voraussichtlich findet.

Konfigurieren Sie XenServer, um das selbstsignierte Zertifikat zu überprüfen

Sie können XenServer so konfigurieren, dass überprüft wird, ob das selbstsignierte Zertifikat von XenServer Workload Balancing authentisch ist, bevor XenServer Workload Balancing die Verbindung zulässt.

Wichtig:

Um das selbstsignierte Zertifikat von XenServer Workload Balancing zu überprüfen, müssen Sie mit seinem Hostnamen eine Verbindung zu Workload Balancing herstellen. Führen Sie den Befehl hostname auf der virtuellen Appliance aus, um den Workload Balancing-Hostnamen zu ermitteln.

Gehen Sie wie folgt vor, um XenServer für die Überprüfung des selbstsignierten Zertifikats zu konfigurieren:

  1. Kopieren Sie das selbstsignierte Zertifikat von der virtuellen Workload Balancing-Appliance in den Poolkoordinator. Das selbstsignierte Zertifikat von XenServer Workload Balancing wird unter gespeichert. /etc/ssl/certs/server.pem Führen Sie den folgenden Befehl auf dem Poolkoordinator aus:

    scp root@<wlb-ip>:/etc/ssl/certs/server.pem .
    <!--NeedCopy-->
    
  2. Wenn Sie eine Meldung erhalten, dass die Echtheit von wlb-ip nicht festgestellt werden kann, geben Sie yes ein, um fortzufahren.

  3. Geben Sie das Stammkennwort der virtuellen Workload Balancing-Appliance Das Zertifikat wird in das aktuelle Verzeichnis kopiert.

  4. Installieren Sie das Zertifikat. Führen Sie den folgenden Befehl in dem Verzeichnis aus, in das Sie das Zertifikat kopiert haben:

    xe pool-certificate-install filename=server.pem
    <!--NeedCopy-->
    
  5. Überprüfen Sie, ob das Zertifikat ordnungsgemäß installiert wurde, indem Sie den folgenden Befehl auf dem Poolkoordinator ausführen:

    xe pool-certificate-list
    <!--NeedCopy-->
    

    Wenn Sie das Zertifikat korrekt installiert haben, enthält die Ausgabe dieses Befehls das exportierte Stammzertifikat. Durch Ausführen dieses Befehls werden alle installierten TLS-Zertifikate einschließlich des von Ihnen installierten Zertifikats aufgeführt.

  6. Um das Zertifikat vom Koordinator mit allen Hosts im Pool zu synchronisieren, führen Sie den folgenden Befehl auf dem Poolkoordinator aus:

    xe pool-certificate-sync
    <!--NeedCopy-->
    

    Wenn pool-certificate-sync Sie den Befehl auf dem Koordinator ausführen, werden die Zertifikat- und Zertifikatssperrlisten auf allen Pool-Hosts mit dem Koordinator synchronisiert. Diese Aktion stellt sicher, dass alle Hosts im Pool dieselben Zertifikate verwenden.

    Dieser Befehl liefert keine Ausgabe. Der nächste Schritt funktioniert jedoch nicht, wenn dieser nicht erfolgreich funktioniert hat.

  7. Weisen Sie XenServer an, das Zertifikat zu überprüfen, bevor Sie eine Verbindung zur virtuellen Workload Balancing-Appliance herstellen. Führen Sie den folgenden Befehl auf dem Poolkoordinator aus:

    xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool
    <!--NeedCopy-->
    

    Tipp:

    Durch Drücken der Tabulatortaste wird automatisch die UUID des Pools aufgefüllt.

  8. (Optional) Führen Sie die folgenden Schritte aus, um zu überprüfen, ob dieses Verfahren erfolgreich funktioniert hat:

    1. Um zu testen, ob das Zertifikat mit den anderen Hosts im Pool synchronisiert wurde, führen Sie den pool-certificate-list Befehl auf diesen Hosts aus.

    2. Um zu testen, ob XenServer für die Überprüfung des Zertifikats eingerichtet wurde, führen Sie den pool-param-get Befehl mit dem Parameter param-name=wlb-verify-cert aus. Beispiel:

      xe pool-param-get param-name=wlb-verify-cert uuid=uuid_of_pool
      <!--NeedCopy-->
      

Konfigurieren Sie XenServer zur Überprüfung eines Zertifizierungsstellenzertifikats

Sie können XenServer so konfigurieren, dass ein Zertifikat überprüft wird, das von einer vertrauenswürdigen Zertifizierungsstelle signiert wurde.

Für vertrauenswürdige Autoritätszertifikate benötigt XenServer ein exportiertes Zertifikat oder eine exportierte Zertifikatskette (die Zwischen- und Stammzertifikate) in einem .pem Format, das den öffentlichen Schlüssel enthält.

Wenn der Workload Balancing ein Zertifikat einer vertrauenswürdigen Behörde verwenden soll, führen Sie die folgenden Aufgaben aus:

  1. Beziehen Sie ein signiertes Zertifikat von der Zertifizierungsstelle.

  2. Spezifizieren und wenden Sie das neue Zertifikatan.

  3. Importieren Sie die Zertifikatkette in den Pool.

Bevor Sie mit diesen Aufgaben beginnen, stellen Sie sicher:

  • Sie kennen die IP-Adresse für den XenServer-Poolkoordinator.

  • XenServer kann den Hostnamen für den Workload Balancing auflösen. (Sie können beispielsweise versuchen, den Workload Balancing-FQDN von der XenServer-Konsole für den Poolkoordinator aus anzupingen.)

Beziehen Sie ein signiertes Zertifikat von der Zertifizierungsstelle

Um ein Zertifikat von einer Zertifizierungsstelle zu erhalten, müssen Sie eine Certificate Signing Request (CSR) generieren. Erstellen Sie auf der virtuellen Workload Balancing-Appliance einen privaten Schlüssel und verwenden Sie diesen privaten Schlüssel, um die CSR zu generieren.

Richtlinien für die Angabe des Common Name

Der Common Name (CN), den Sie beim Erstellen einer CSR angeben, muss genau mit dem FQDN Ihrer virtuellen Workload Balancing-Appliance übereinstimmen. Er muss auch mit dem FQDN oder der IP-Adresse übereinstimmen, die Sie im Feld Adresse des Dialogfelds Mit WLB Server verbinden angegeben haben.

Um sicherzustellen, dass der Name übereinstimmt, geben Sie den Common Name mithilfe einer der folgenden Richtlinien an:

  • Geben Sie für den allgemeinen Namen des Zertifikats dieselben Informationen an, die Sie im Dialogfeld Mit WLB Server verbinden angegeben haben.

    Wenn Ihre virtuelle Workload Balancing-Appliance beispielsweise wlb-vpx.yourdomain benannt ist, geben Sie wlb-vpx.yourdomain im Dialogfeld Mit WLB-Server verbinden an und geben Sie beim Erstellen der CSR wlb-vpx.yourdomain als allgemeinen Namen an.

  • Wenn Sie Ihren Pool über die IP-Adresse mit dem Workload Balancing verbunden haben, verwenden Sie den FQDN als allgemeinen Namen und die IP-Adresse als alternativen Subjektnamen (SAN). Dieser Ansatz funktioniert jedoch möglicherweise nicht in allen Situationen.

Erstellen Sie eine private Schlüsseldatei

Führen Sie auf der virtuellen Workload Balancing-Appliance die folgenden Schritte aus:

  1. Erstellen Sie eine private Schlüsseldatei:

    openssl genrsa -des3 -out privatekey.pem 2048
    <!--NeedCopy-->
    
  2. Entferne das Kennwort:

    openssl rsa -in privatekey.pem -out privatekey.nop.pem
    <!--NeedCopy-->
    

Hinweis:

Wenn Sie das Kennwort falsch oder inkonsistent eingeben, erhalten Sie möglicherweise einige Meldungen, die darauf hinweisen, dass ein Benutzeroberflächenfehler vorliegt. Sie können die Nachricht ignorieren und den Befehl erneut ausführen, um die private Schlüsseldatei zu erstellen.

Generieren der Zertifikatssignierungsanfrage

Führen Sie auf der virtuellen Workload Balancing-Appliance die folgenden Schritte aus:

  1. Erstellen Sie die Certificate Signing Request (CSR) mit dem privaten Schlüssel:

    openssl req -new -key privatekey.nop.pem -out csr
    <!--NeedCopy-->
    
  2. Befolgen Sie die Anweisungen, um die für die Generierung der CSR erforderlichen Informationen anzugeben:

    Name des Landes. Geben Sie die Ländercodes des TLS-Zertifikats für Ihr Land ein. Zum Beispiel CA für Kanada oder JM für Jamaika. Eine Liste der Ländercodes für TLS-Zertifikate finden Sie im Internet.

    Name des Bundesstaates oder der Provinz (vollständiger Name). Geben Sie den Bundesstaat oder die Provinz an, in der sich der Pool befindet. Zum Beispiel Massachusetts oder Alberta.

    Name der Lokalität. Der Name der Stadt, in der sich der Pool befindet.

    Name der Organisation. Der Name Ihres Unternehmens oder Ihrer Organisation.

    Name der Organisationseinheit. Geben Sie den Namen der Abteilung ein. Das Feld ist optional.

    Common Name: Geben Sie den FQDN Ihres Workload Balancing-Servers ein. Dieser Wert muss mit dem Namen übereinstimmen, den der Pool für die Verbindung mit dem Workload Balancing verwendet. Weitere Informationen finden Sie unter Richtlinien für die Angabe des allgemeinen Namens.

    E-Mail-Adresse: Diese E-Mail-Adresse ist im Zertifikat enthalten, wenn Sie es generieren.

  3. Geben Sie optionale Attribute an, oder klicken Sie auf die Eingabetaste, um die

    Die CSR-Anfrage wird im aktuellen Verzeichnis gespeichert und hat den Namen csr.

  4. Zeigen Sie die CSR im Konsolenfenster an, indem Sie die folgenden Befehle in der Workload Balancing-Appliance-Konsole ausführen:

    cat csr
    <!--NeedCopy-->
    
  5. Kopieren Sie die gesamte CSR und verwenden Sie sie, um das Zertifikat von der Zertifizierungsstelle anzufordern.

Spezifizieren und wenden Sie das neue Zertifikat an

Gehen Sie wie folgt vor, um anzugeben, dass der Arbeitslastausgleich ein Zertifikat einer Zertifizierungsstelle verwendet. Bei diesem Verfahren werden die Stammzertifikate und (falls verfügbar) Zwischenzertifikate installiert.

Führen Sie die folgenden Schritte aus, um ein neues Zertifikat anzugeben:

  1. Laden Sie das signierte Zertifikat, das Stammzertifikat und, falls die Zertifizierungsstelle über eines verfügt, das Zwischenzertifikat von der Zertifizierungsstelle herunter.

  2. Wenn Sie die Zertifikate nicht direkt auf die virtuelle Workload Balancing-Appliance heruntergeladen haben, kopieren Sie sie mit einer der folgenden Methoden:

    • Verwenden Sie auf einem Windows-Computer WinSCP oder ein anderes Kopierdienstprogramm.

      Für den Hostnamen können Sie die IP-Adresse eingeben und den Port auf dem Standardport belassen. Der Benutzername und das Kennwort sind normalerweise root und das Kennwort, das Sie während der Konfiguration festlegen.

    • Verwenden Sie von einem Linux-Computer zur Workload Balancing-Appliance SCP oder ein anderes Kopierdienstprogramm. Beispiel:

       scp root_ca.pem root@wlb-ip:/path_on_your_WLB
       <!--NeedCopy-->
      
  3. Führen Sie auf der virtuellen Workload Balancing-Appliance den Inhalt aller Zertifikate (Stammzertifikat, Zwischenzertifikat - falls vorhanden und signiertes Zertifikat) in einer Datei zusammen. Sie können den folgenden Befehl verwenden:

    cat signed_cert.pem intermediate_ca.pem root_ca.pem > server.pem
    <!--NeedCopy-->
    
  4. Benennen Sie das vorhandene Zertifikat und den Schlüssel mit dem Befehl move um:

    mv /etc/ssl/certs/server.pem /etc/ssl/certs/server.pem_orig
    mv /etc/ssl/certs/server.key /etc/ssl/certs/server.key_orig
    <!--NeedCopy-->
    
  5. Kopieren Sie das zusammengeführte Zertifikat:

    mv server.pem /etc/ssl/certs/server.pem
    <!--NeedCopy-->
    
  6. Kopieren Sie den zuvor erstellten privaten Schlüssel:

    mv privatekey.nop.pem /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  7. Machen Sie den privaten Schlüssel nur von root lesbar. Verwenden Sie den Befehl chmod, um Berechtigungen zu korrigieren.

    chmod 600 /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  8. Neustart stunnel:

    killall stunnel
    stunnel
    <!--NeedCopy-->
    

Importieren Sie die Zertifikatkette in den Pool

Nachdem Sie die Zertifikate erhalten haben, importieren Sie sie in den XenServer-Poolkoordinator. Synchronisieren Sie die Hosts im Pool, um diese Zertifikate zu verwenden. Anschließend können Sie XenServer so konfigurieren, dass die Identität und Gültigkeit des Zertifikats jedes Mal überprüft wird, wenn Workload Balancing eine Verbindung zu einem Host herstellt.

  1. Kopieren Sie das signierte Zertifikat, das Stammzertifikat und, falls die Zertifizierungsstelle über eines verfügt, das Zwischenzertifikat von der Zertifizierungsstelle auf den XenServer-Poolkoordinator.

  2. Installieren Sie das Rootzertifikat auf dem Poolkoordinator:

    xe pool-install-ca-certificate filename=root_ca.pem
    <!--NeedCopy-->
    
  3. Installieren Sie gegebenenfalls das Zwischenzertifikat auf dem Poolkoordinator:

    xe pool-install-ca-certificate filename=intermediate_ca.pem
    <!--NeedCopy-->
    
  4. Überprüfen Sie, ob beide Zertifikate korrekt installiert sind, indem Sie diesen Befehl auf dem Poolkoordinator ausführen:

    xe pool-certificate-list
    <!--NeedCopy-->
    

    Durch Ausführen dieses Befehls werden alle installierten TLS-Zertifikate aufgeführt. Wenn die Zertifikate erfolgreich installiert wurden, werden sie in dieser Liste angezeigt.

  5. Synchronisieren Sie das Zertifikat auf dem Poolkoordinator mit allen Hosts im Pool:

    xe pool-certificate-sync
    <!--NeedCopy-->
    

    Wenn pool-certificate-sync Sie den Befehl auf dem Koordinator ausführen, werden die Zertifikate und Zertifikatssperrlisten auf allen Poolhosts mit dem Poolkoordinator synchronisiert. Diese Aktion stellt sicher, dass alle Hosts im Pool dieselben Zertifikate verwenden.

  6. Weisen Sie XenServer an, ein Zertifikat zu überprüfen, bevor Sie eine Verbindung zur virtuellen Workload Balancing-Appliance herstellen. Führen Sie den folgenden Befehl auf dem Poolkoordinator aus:

    xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool
    <!--NeedCopy-->
    

    Tipp:

    Durch Drücken der Tabulatortaste wird automatisch die UUID des Pools aufgefüllt.

  7. Wenn Sie im Dialogfeld Mit WLB verbinden eine IP-Adresse angegeben haben, bevor Sie die Zertifikatsüberprüfung aktiviert haben, werden Sie möglicherweise aufgefordert, den Pool erneut mit dem Workload Balancing zu verbinden.

    Geben Sie den FQDN für die Workload Balancing-Appliance in Adresse im Dialogfeld Mit WLB verbinden genau so an, wie er im allgemeinen Namen des Zertifikats angezeigt wird. Geben Sie den FQDN ein, um sicherzustellen, dass der Common Name mit dem Namen übereinstimmt, den XenServer für die Verbindung verwendet.

Problembehandlung

  • Wenn der Pool nach dem Konfigurieren der Zertifikatsüberprüfung keine Verbindung zum Workload Balancing herstellen kann, überprüfen Sie, ob der Pool eine Verbindung herstellen kann, wenn Sie die Zertifikatsüberprüfung ausschalten Sie können den Befehl xe pool-param-set wlb-verify-cert=false uuid=uuid_of_pool verwenden, um die Zertifikatsüberprüfung zu deaktivieren. Wenn eine Verbindung mit ausgeschalteter Überprüfung hergestellt werden kann, liegt das Problem in Ihrer Zertifikatkonfiguration. Wenn keine Verbindung hergestellt werden kann, liegt das Problem entweder in Ihren Workload Balancing-Anmeldeinformationen oder in Ihrer Netzwerkverbindung.

  • Einige kommerzielle Zertifizierungsstellen stellen Tools zur Verfügung, um zu überprüfen, ob das Zertifikat korrekt installiert wurde Erwägen Sie, diese Tools auszuführen, wenn diese Verfahren das Problem nicht isolieren können. Wenn diese Tools die Angabe eines TLS-Ports erfordern, geben Sie Port 8012 oder einen anderen Port an, den Sie während der Konfiguration des Arbeitslastausgleichs festlegen

  • Wenn auf der Registerkarte WLB ein Verbindungsfehler angezeigt wird, liegt möglicherweise ein Konflikt zwischen dem allgemeinen Namen des Zertifikats und dem Namen der virtuellen Workload Balancing-Appliance vor. Der Name der virtuellen Workload Balancing-Appliance und der allgemeine Name des Zertifikats müssen genau übereinstimmen.

Weitere Informationen finden Sie unter Problembehandlung.

Zertifikate für den Workload Balancing