XenServer

Zertifikate für den Workload Balancing

XenServer und Workload Balancing kommunizieren über HTTPS. Während der Workload Balancing-Konfiguration 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 Zertifikatskonfigurationen durchführen, um diese TLS-Verbindung zu erstellen.

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 die Verwendung eines Zertifikats, 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 für die Verwendung konfigurieren.

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

Abhängig von Ihren Sicherheitszielen haben Sie folgende Möglichkeiten:

XenServer überprüft, ob ein bestimmtes Zertifikat vorhanden ist, bevor es der virtuellen Workload Balancing-Appliance erlaubt, sich über TLS mit ihm zu verbinden. In diesem Fall befindet sich das echte Zertifikat (das Zertifikat mit dem privaten Schlüssel) auf dem Workload Balancing-Server. Das Zertifikat, das zum Signieren verwendet wurde, befindet sich auf dem XenServer-Poolkoordinator.

Hinweis:

Die Zertifikatsüberprüfung ist eine Sicherheitsmaßnahme, die unerwünschte Verbindungen verhindern soll. Workload Balancing-Zertifikate müssen strenge Anforderungen erfüllen, sonst ist die Zertifikatü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 erwartet.

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

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

Wichtig:

Um das selbstsignierte XenServer Workload Balancing-Zertifikat zu überprüfen, müssen Sie über den Hostnamen eine Verbindung zu Workload Balancing herstellen. Um den Hostnamen für den Workload Balancing zu finden, führen Sie den Befehl Hostname auf der virtuellen Appliance.

Führen Sie die folgenden Schritte aus, um XenServer so zu konfigurieren, dass das selbstsignierte Zertifikat überprüft wird:

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

      scp root@<wlb-ip>:/etc/ssl/certs/server.pem wlb.pem
    <!--NeedCopy-->
    
  2. Wenn Sie eine Meldung erhalten, dass die Authentizität WLB-IP nicht festgelegt werden kann, Typ ja um fortzufahren.

  3. Geben Sie das Root-Kennwort für die virtuelle Workload Balancing-Appliance ein, wenn Sie dazu aufgefordert werden. Das Zertifikat wird in das aktuelle Verzeichnis kopiert.

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

      xe pool-certificate-install filename=wlb.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 ordnungsgemäß installiert haben, enthält die Ausgabe dieses Befehls das exportierte Stammzertifikat. Wenn Sie diesen Befehl ausführen, werden alle installierten TLS-Zertifikate aufgelistet, einschließlich des von Ihnen installierten Zertifikats.

  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 Sie die pool-zertifikat-synchronisierung auf dem Koordinator synchronisiert die Zertifikat- und Zertifikatsperrlisten auf allen Pool-Hosts mit dem Koordinator. Diese Aktion stellt sicher, dass alle Hosts im Pool dieselben Zertifikate verwenden.

    Es gibt keine Ausgabe von diesem Befehl. 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 mit der 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 Taste Registerkarte -Schlüssel füllt automatisch die UUID des Pools auf.

  8. (Fakultativ) 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 Befehl pool-zertifikat-liste auf diesen Hosts.

    2. Um zu testen, ob XenServer so eingestellt wurde, dass das Zertifikat überprüft wird, führen Sie die pool-param-get mit dem Befehl param-name=wlb-verify-cert-Parameter. Beispiel:

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

Konfigurieren von XenServer zum Überprüfen eines Zertifikats der Zertifizierungsstelle

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

Für Trusted-Authority-Zertifikate benötigt XenServer ein exportiertes Zertifikat oder eine exportierte Zertifikatkette (die Zwischen- und Root-Zertifikate) in .Pem Format, das den öffentlichen Schlüssel enthält.

Wenn Sie möchten, dass der Arbeitslastausgleich ein Zertifikat einer vertrauenswürdigen Zertifizierungsstelle verwendet, führen Sie die folgenden Aufgaben aus:

  1. Abrufen eines signierten Zertifikats von der Zertifizierungsstelle.

  2. Angeben und Anwenden des neuen Zertifikats.

  3. Importieren der Zertifikatkette in den Pool.

Bevor Sie mit diesen Aufgaben beginnen, stellen Sie Folgendes sicher:

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

  • XenServer kann den Hostnamen des Workload Balancing auflösen. (Sie können z. B. versuchen, den Workload Balancing-FQDN von der XenServer-Konsole für den Poolkoordinator zu pingen.)

Abrufen eines signierten Zertifikats von der Zertifizierungsstelle

Um ein Zertifikat von einer Zertifizierungsstelle zu erhalten, müssen Sie eine Zertifikatsignieranforderung (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 allgemeinen Namens

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 in der Adresse im Feld Verbindung zum WLB-Server herstellen Dialogfeld.

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

  • Geben Sie für den allgemeinen Namen des Zertifikats die gleichen Informationen an, die Sie in der Verbindung zum WLB-Server herstellen Dialogfeld.

    Wenn Ihre virtuelle Workload Balancing-Appliance beispielsweise den Namen wlb-vpx.ihreDomainspezifizieren wlb-vpx.ihreDomain im Verbindung zum WLB-Server herstellen Dialog und stellen Sie wlb-vpx.ihreDomain als allgemeiner Name bei der Erstellung der CSR.

  • 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 Subject Alternative Name (SAN). Dieser Ansatz funktioniert jedoch möglicherweise nicht in allen Situationen.

Erstellen einer Datei mit einem privaten Schlüssel

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

  1. Erstellen Sie eine Datei mit dem privaten Schlüssel:

      openssl genrsa -des3 -out privatekey.pem 2048
    <!--NeedCopy-->
    
  2. Entfernen Sie das Passwort:

      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 Fehler in der Benutzeroberfläche vorliegt. Sie können die Meldung ignorieren und den Befehl erneut ausführen, um die Datei mit dem privaten Schlüssel zu erstellen.

Generieren der Zertifikatsignieranforderung

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

  1. Erstellen Sie die Zertifikatsignieranforderung (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 Informationen anzugeben, die zum Generieren der CSR erforderlich sind:

    Ländername. Geben Sie die Ländercodes des TLS-Zertifikats für Ihr Land ein. 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 Bundeslandes oder der Provinz (vollständiger Name). Geben Sie den Bundesstaat oder die Provinz ein, in dem sich der Pool befindet. Beispiel: Massachusetts oder Alberta.

    Name des Ortes. Der Name der Stadt, in der sich das Schwimmbad 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.

    Trivialname. Geben Sie den FQDN Ihres Workload Balancing-Servers ein. Dieser Wert muss mit dem Namen übereinstimmen, den der Pool verwendet, um eine Verbindung mit dem Arbeitslastausgleich herzustellen. 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 Eingabe dieser Informationen zu überspringen.

    Die CSR-Anforderung wird im aktuellen Verzeichnis gespeichert und erhält den Namen csr.

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

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

Angeben und Anwenden des neuen Zertifikats

Gehen Sie wie folgt vor, um anzugeben, dass für den Workload Balancing ein Zertifikat von einer Zertifizierungsstelle verwendet wird. Mit diesem Verfahren werden das Stammzertifikat und (falls verfügbar) das Zwischenzertifikat installiert.

Um ein neues Zertifikat anzugeben, führen Sie die folgenden Schritte aus:

  1. Laden Sie das signierte Zertifikat, das Root-Zertifikat 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 Kopierprogramm.

      Für den Hostnamen können Sie die IP-Adresse eingeben und den Port auf dem Standard belassen. Der Benutzername und das Kennwort lauten in der Regel root und das Kennwort, das Sie während der Konfiguration festgelegt haben.

    • 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 vorhandenen 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 für root lesbar. Verwenden Sie die Schaltfläche chmod Befehl zum Korrigieren von Berechtigungen.

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

      killall stunnel
      stunnel
    <!--NeedCopy-->
    

Importieren der 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 Stammzertifikat auf dem Poolkoordinator:

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

      xe pool-install-ca-certificate filename=intermediate_ca.pem
    <!--NeedCopy-->
    
  4. Überprüfen Sie, ob beide Zertifikate ordnungsgemäß installiert wurden, indem Sie den folgenden Befehl auf dem Poolkoordinator ausführen:

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

    Wenn Sie diesen Befehl ausführen, werden alle installierten TLS-Zertifikate aufgelistet. 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 Sie die pool-zertifikat-synchronisierung auf dem Koordinator synchronisiert die Zertifikate und Zertifikatssperrlisten auf allen Pool-Hosts mit dem Pool-Koordinator. 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 Tab-Taste wird die UUID des Pools automatisch aufgefüllt.

  7. Wenn Sie eine IP-Adresse in der Mit WLB verbinden bevor Sie die Zertifikatsüberprüfung aktiviert haben, werden Sie möglicherweise aufgefordert, den Pool erneut mit dem Arbeitslastausgleich zu verbinden.

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

Problembehandlung

  • Die Zertifikatsüberprüfung ist in Ihrem Pool standardmäßig aktiviert. Deaktivieren Sie die Zertifikatsüberprüfung, wenn Ihr Pool keine Verbindung mit dem Workload Balancing herstellen kann:

    1. Holen Sie sich die Pool-UUID:

        xe pool-list
      <!--NeedCopy-->
      
    2. Deaktivieren Sie die Zertifikatsüberprüfung:

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

    Wenn Ihr Pool eine Verbindung mit dem Workload Balancing herstellen kann, wenn die Zertifikatsüberprüfung deaktiviert ist, liegt das Problem bei Ihrer Zertifikatkonfiguration. Wenn keine Verbindung hergestellt werden kann, liegt das Problem entweder an Ihren Anmeldeinformationen für den Arbeitslastausgleich oder an Ihrer Netzwerkverbindung. Wenden Sie sich an den Support oder sehen Sie sich an Fehlerbehebung beim Workload Balancing für weitere Informationen.

  • Einige kommerzielle Zertifizierungsstellen stellen Tools zur Verfügung, mit denen Sie die korrekte Installation des Zertifikats überprüfen können. Erwägen Sie, diese Tools auszuführen, wenn diese Verfahren nicht dazu beitragen, das Problem zu isolieren. Wenn für diese Tools ein TLS-Port angegeben werden muss, geben Sie Port 8012 oder einen anderen Port an, den Sie bei der Konfiguration des Arbeitslastausgleichs festgelegt haben.

  • Wenn die Option WLB einen Verbindungsfehler anzeigt, besteht möglicherweise ein Konflikt zwischen dem allgemeinen Namen des Zertifikats und dem Namen des virtuellen Workload Balancing-Geräts. 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