XenServer

Certificats pour l’équilibrage de la charge de travail

XenServer et Workload Balancing communiquent via HTTPS. Lors de la configuration de l’équilibrage de charge de travail, l’assistant crée automatiquement un certificat de test auto-signé. Ce certificat de test auto-signé permet à Workload Balancing d’établir une connexion TLS avec XenServer. Par défaut, Workload Balancing crée automatiquement cette connexion TLS avec XenServer. Vous n’avez pas besoin d’effectuer de configuration de certificat pendant ou après la configuration pour l’équilibrage de charge de travail pour créer cette connexion TLS.

Remarque :

Le certificat auto-signé est un espace réservé destiné à faciliter la communication HTTPS et ne provient pas d’une autorité de certification de confiance. Pour plus de sécurité, nous vous recommandons d’utiliser un certificat signé par une autorité de certification approuvée.

Pour utiliser un certificat provenant d’une autre autorité de certification, tel qu’un certificat signé par une autorité commerciale, vous devez configurer Workload Balancing et XenServer pour l’utiliser.

Par défaut, XenServer ne valide pas l’identité du certificat avant d’établir une connexion à Workload Balancing. Pour configurer XenServer afin de vérifier la présence d’un certificat spécifique, exportez le certificat racine utilisé pour signer le certificat. Copiez le certificat sur XenServer et configurez XenServer pour qu’il le vérifie lorsqu’une connexion à Workload Balancing est établie. XenServer agit en tant que client dans ce scénario et Workload Balancing agit en tant que serveur.

En fonction de vos objectifs de sécurité, vous pouvez :

XenServer vérifie la présence d'un certificat spécifique avant de permettre à l'appliance virtuelle Workload Balancing de s'y connecter via TLS. Dans ce cas, le certificat réel (le certificat avec la clé privée) se trouve sur le serveur d'équilibrage de charge de travail. Le certificat utilisé pour le signer se trouve sur le coordinateur du pool XenServer.

Remarque :

La vérification des certificats est une mesure de sécurité conçue pour empêcher les connexions indésirables. Les certificats d’équilibrage de charge de travail doivent répondre à des exigences strictes, sinon la vérification du certificat échoue. Lorsque la vérification du certificat échoue, XenServer n’autorise pas la connexion.

Pour que la vérification des certificats réussisse, vous devez stocker les certificats dans les emplacements spécifiques où XenServer s’attend à les trouver.

Configurer XenServer pour vérifier le certificat auto-signé

Vous pouvez configurer XenServer pour vérifier que le certificat auto-signé XenServer Workload Balancing est authentique avant que XenServer n’autorise la connexion de Workload Balancing.

Important :

Pour vérifier le certificat auto-signé XenServer Workload Balancing, vous devez vous connecter à Workload Balancing en utilisant son nom d’hôte. Pour trouver le nom d’hôte d’équilibrage de charge de travail, exécutez la commande hostname sur le dispositif virtuel.

Pour configurer XenServer afin de vérifier le certificat auto-signé, procédez comme suit :

  1. Copiez le certificat auto-signé de l’appliance virtuelle d’équilibrage de la charge de travail de la charge de travail vers le coordinateur de pool. Le certificat auto-signé XenServer Workload Balancing est stocké à l’adresse. /etc/ssl/certs/server.pem Exécutez la commande suivante sur le coordinateur de pool :

    scp root@<wlb-ip>:/etc/ssl/certs/server.pem .
    <!--NeedCopy-->
    
  2. Si vous recevez un message indiquant que l’authenticité de wlb-ip ne peut pas être établie, tapez yes pour continuer.

  3. Entrez le mot de passe racine du dispositif virtuel d’équilibrage de charge de travail lorsque Le certificat est copié dans le répertoire en cours.

  4. Installez le certificat. Exécutez la commande suivante dans le répertoire où vous avez copié le certificat :

    xe pool-certificate-install filename=server.pem
    <!--NeedCopy-->
    
  5. Vérifiez que le certificat a été correctement installé en exécutant la commande suivante sur le coordinateur de pool :

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

    Si vous avez correctement installé le certificat, la sortie de cette commande inclut le certificat racine exporté. L’exécution de cette commande répertorie tous les certificats TLS installés, y compris le certificat que vous avez installé.

  6. Pour synchroniser le certificat du coordinateur avec tous les hôtes du pool, exécutez la commande suivante sur le coordinateur du pool :

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

    L’exécution de la pool-certificate-sync commande sur le coordinateur synchronise les listes de certificats et de révocation de certificats sur tous les hôtes du pool avec le coordinateur. Cette action garantit que tous les hôtes du pool utilisent les mêmes certificats.

    Il n’y a pas de sortie de cette commande. Cependant, l’étape suivante ne fonctionne pas si celle-ci n’a pas fonctionné correctement.

  7. Demandez à XenServer de vérifier le certificat avant de se connecter au dispositif virtuel Workload Balancing. Exécutez la commande suivante sur le coordinateur de pool :

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

    Conseil :

    Appuyez sur la touche Tab pour renseigner automatiquement l’UUID du pool.

  8. (Facultatif) Pour vérifier que cette procédure a bien fonctionné, effectuez les opérations suivantes :

    1. Pour vérifier si le certificat est synchronisé avec les autres hôtes du pool, exécutez la pool-certificate-list commande sur ces hôtes.

    2. Pour tester si XenServer a été configuré pour vérifier le certificat, exécutez la pool-param-get commande avec le paramètre param-name=wlb-verify-cert. Par exemple :

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

Configurer XenServer pour vérifier un certificat d’autorité de certification

Vous pouvez configurer XenServer pour vérifier un certificat signé par une autorité de certification fiable.

Pour les certificats d’autorité de confiance, XenServer nécessite un certificat exporté ou une chaîne de certificats (les certificats intermédiaires et racines) au .pem format contenant la clé publique.

Si vous souhaitez que l’équilibrage de la charge de travail utilise un certificat d’autorité de confiance, effectuez les tâches suivantes :

  1. Obtenez un certificat signé auprès de l’autorité de certification.

  2. Spécifiez et appliquez le nouveau certificat.

  3. Importez la chaîne de certificats dans le pool.

Avant de commencer ces tâches, assurez-vous :

  • Vous connaissez l’adresse IP du coordinateur du pool XenServer.

  • XenServer peut résoudre le nom d’hôte Workload Balancing. (Par exemple, vous pouvez essayer d’envoyer un ping au FQDN de Workload Balancing depuis la console XenServer pour le coordinateur du pool.)

Obtenir un certificat signé auprès de l’autorité de certification

Pour obtenir un certificat auprès d’une autorité de certification, vous devez générer une demande de signature de certificat (CSR). Sur l’appliance virtuelle d’équilibrage de charge de travail, créez une clé privée et utilisez cette clé privée pour générer le CSR.

Directives pour spécifier le nom commun

Le nom commun (CN) que vous spécifiez lors de la création d’un CSR doit correspondre exactement au nom de domaine complet de votre dispositif virtuel d’équilibrage de charge de travail. Il doit également correspondre au nom de domaine complet ou à l’adresse IP que vous avez spécifié dans la zone Adresse de la boîte de dialogue Connexion au serveur WLB .

Pour vous assurer que le nom correspond, spécifiez le nom commun à l’aide de l’une des instructions suivantes :

  • Spécifiez les mêmes informations pour le nom commun du certificat que celles que vous avez spécifiées dans la boîte de dialogue Connexion au serveur WLB .

    Par exemple, si votre dispositif virtuel d’équilibrage de charge de travail est nommé wlb-vpx.yourdomain, spécifiez wlb-vpx.yourdomain dans la boîte de dialogue Connexion au serveur WLB et indiquez wlb-vpx.yourdomain comme nom commun lors de la création de la demande de signature de certificat.

  • Si vous avez connecté votre pool à l’équilibrage de charge de travail par adresse IP, utilisez le nom de domaine complet comme nom commun et l’adresse IP comme autre nom de l’objet (SAN). Cependant, cette approche peut ne pas fonctionner dans toutes les situations.

Création d’un fichier de clé privée

Sur le dispositif virtuel d’équilibrage de charge de travail, procédez comme suit :

  1. Créer un fichier de clé privée :

    openssl genrsa -des3 -out privatekey.pem 2048
    <!--NeedCopy-->
    
  2. Supprimer le mot de passe :

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

Remarque :

Si vous saisissez le mot de passe de manière incorrecte ou incohérente, vous pouvez recevoir des messages indiquant qu’il y a une erreur d’interface utilisateur. Vous pouvez ignorer le message et réexécuter la commande pour créer le fichier de clé privée.

Générer la demande de signature de certificat

Sur le dispositif virtuel d’équilibrage de charge de travail, procédez comme suit :

  1. Créez la demande de signature de certificat (CSR) à l’aide de la clé privée :

    openssl req -new -key privatekey.nop.pem -out csr
    <!--NeedCopy-->
    
  2. Suivez les instructions pour fournir les informations nécessaires à la génération de la CSR :

    Nom du pays. Entrez les codes pays du certificat TLS de votre pays. Par exemple, CA pour le Canada ou JM pour la Jamaïque. Vous pouvez trouver une liste des codes pays du certificat TLS sur le Web.

    Nom del’État ou de la province (nom complet). Entrez l’État ou la province où se trouve le pool. Par exemple, le Massachusetts ou l’Alberta.

    Nom de la localité. Le nom de la ville où se trouve le pool.

    Nom de l’organisation. Le nom de votre entreprise ou organisation.

    Nom de l’unité organisationnelle. Saisissez le nom du département. Ce champ est facultatif.

    Nom commun. Entrez le nom de domaine complet de votre serveur d’équilibrage de charge de travail. Cette valeur doit correspondre au nom que le pool utilise pour se connecter à l’équilibrage de la charge de travail. Pour plus d’informations, consultez la section Instructions relatives à la spécification du nom commun.

    Adresse e-mail. Cette adresse e-mail est incluse dans le certificat lorsque vous le générez.

  3. Fournissez des attributs facultatifs ou cliquez sur Entrée pour ne pas fournir ces informations.

    La demande CSR est enregistrée dans le répertoire actuel et est nommée csr.

  4. Affichez le CSR dans la fenêtre de la console en exécutant les commandes suivantes dans la console du dispositif d’équilibrage de la charge de travail :

    cat csr
    <!--NeedCopy-->
    
  5. Copiez l’intégralité du CSR et utilisez-le pour demander le certificat à l’autorité de certification.

Spécifiez et appliquez le nouveau certificat

Utilisez cette procédure pour spécifier l’équilibrage de la charge de travail utiliser un certificat provenant d’une autorité de certification. Cette procédure installe les certificats racine et (si disponible) intermédiaires.

Pour spécifier un nouveau certificat, procédez comme suit :

  1. Téléchargez le certificat signé, le certificat racine et, si l’autorité de certification en possède un, le certificat intermédiaire de l’autorité de certification.

  2. Si vous n’avez pas téléchargé les certificats directement sur le dispositif virtuel d’équilibrage de charge de travail, copiez-les en utilisant l’une des méthodes suivantes :

    • À partir d’un ordinateur Windows, utilisez WinSCP ou un autre utilitaire de copie.

      Pour le nom d’hôte, vous pouvez entrer l’adresse IP et laisser le port à la valeur par défaut. Le nom d’utilisateur et le mot de passe sont généralement root et quel que soit le mot de passe que vous avez défini lors de la configuration.

    • À partir d’un ordinateur Linux vers l’appliance d’équilibrage de charge de travail, utilisez SCP ou un autre utilitaire de copie. Par exemple :

       scp root_ca.pem root@wlb-ip:/path_on_your_WLB
       <!--NeedCopy-->
      
  3. Sur le dispositif virtuel d’équilibrage de charge de travail, fusionnez le contenu de tous les certificats (certificat racine, certificat intermédiaire, s’il existe, et certificat signé) dans un seul fichier. Vous pouvez utiliser la commande suivante :

    cat signed_cert.pem intermediate_ca.pem root_ca.pem > server.pem
    <!--NeedCopy-->
    
  4. Renommez le certificat et la clé existants à l’aide de la commande de déplacement :

    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. Copier le certificat fusionné :

    mv server.pem /etc/ssl/certs/server.pem
    <!--NeedCopy-->
    
  6. Copiez la clé privée créée précédemment :

    mv privatekey.nop.pem /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  7. Rendre la clé privée lisible uniquement par root. Utilisez la commande chmod pour corriger les autorisations.

    chmod 600 /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  8. Redémarrerstunnel :

    killall stunnel
    stunnel
    <!--NeedCopy-->
    

Importez la chaîne de certificats dans le pool

Une fois que vous avez obtenu les certificats, importez-les dans le coordinateur du pool XenServer. Synchronisez les hôtes du pool pour utiliser ces certificats. Vous pouvez ensuite configurer XenServer pour vérifier l’identité et la validité du certificat chaque fois que Workload Balancing se connecte à un hôte.

  1. Copiez le certificat signé, le certificat racine et, si l’autorité de certification en possède un, le certificat intermédiaire de l’autorité de certification sur le coordinateur du pool XenServer.

  2. Installez le certificat racine sur le coordinateur de pool :

    xe pool-install-ca-certificate filename=root_ca.pem
    <!--NeedCopy-->
    
  3. Le cas échéant, installez le certificat intermédiaire sur le coordinateur de pool :

    xe pool-install-ca-certificate filename=intermediate_ca.pem
    <!--NeedCopy-->
    
  4. Vérifiez que les deux certificats sont correctement installés en exécutant cette commande sur le coordinateur de pool :

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

    L’exécution de cette commande répertorie tous les certificats TLS installés. Si les certificats ont été installés avec succès, ils apparaissent dans cette liste.

  5. Synchronisez le certificat sur le coordinateur du pool avec tous les hôtes du pool :

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

    L’exécution de la pool-certificate-sync commande sur le coordinateur synchronise les certificats et les listes de révocation de certificats sur tous les hôtes du pool avec le coordinateur du pool. Cette action garantit que tous les hôtes du pool utilisent les mêmes certificats.

  6. Demandez à XenServer de vérifier un certificat avant de se connecter au dispositif virtuel Workload Balancing. Exécutez la commande suivante sur le coordinateur de pool :

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

    Conseil :

    Appuyez sur la touche Tab pour renseigner automatiquement l’UUID du pool.

  7. Si vous avez spécifié une adresse IP dans la boîte de dialogue Connexion à WLB avant d’activer la vérification du certificat, vous serez peut-être invité à reconnecter le pool à l’équilibrage de la charge de travail.

    Spécifiez le nom de domaine complet du dispositif d’équilibrage de charge de travail dans Adresse dans la boîte de dialogue Connexion à WLB exactement tel qu’il apparaît dans le nom commun du certificat. Entrez le nom de domaine complet pour vous assurer que le nom commun correspond au nom que XenServer utilise pour se connecter.

Dépannage

  • Si le pool ne peut pas se connecter à l’équilibrage de la charge de travail après avoir configuré la vérification du certificat, vérifiez si le pool peut se connecter si vous désactivez la vérification des certificats. Vous pouvez utiliser la commande xe pool-param-set wlb-verify-cert=false uuid=uuid_of_pool pour désactiver la vérification des certificats. S’il peut se connecter avec vérification désactivée, le problème est dans la configuration de votre certificat. S’il ne peut pas se connecter, le problème provient de vos informations d’identification d’équilibrage de la charge de travail de travail ou de votre connexion réseau.

  • Certaines autorités de certification commerciales fournissent des outils permettant de vérifier que le certificat est correctement installé. Envisagez d’exécuter ces outils si ces procédures ne permettent pas d’isoler le problème. Si ces outils nécessitent de spécifier un port TLS, spécifiez le port 8012 ou le port que vous avez défini lors de la configuration de l’équilibrage de la charge de travail.

  • Si l’onglet WLB affiche une erreur de connexion, il peut y avoir un conflit entre le nom commun du certificat et le nom du dispositif virtuel d’équilibrage de charge de travail. Le nom du dispositif virtuel d’équilibrage de charge de travail et le nom commun du certificat doivent correspondre exactement.

Pour plus d’informations, consultez Dépannage.

Certificats pour l’équilibrage de la charge de travail