Tout ce qu’il faut savoir sur la gestion des certificats dans vSphere 6.X

Depuis la version 6.x, VMware a simplifié l’utilisation et la gestion des différents certificats dans l’environnement vSphere. Deux composants principaux y ont été introduits:

  • VMCA (VMware Certificate Authority) qui est l’autorité de certification VMware
  • VECS (VMware Endpoint Certificate Services) stocke les certificats et les clés privées

Ces deux composants se trouvent dans vCenter si le PSC y est imbriqué. Par contre, si le PSC est externe au vCenter, VMCA sera installé dans le PSC et VECS dans le vCenter.

Bien que VMCA soit optionnel, VECS par contre est nécessaire pour le bon fonctionnement de l’environnement vSphere. Il n’est pas possible de se passer du VECS.

 

I. VMCA (VMware Certificate Authority)

Le principal risque associé à l’utilisation de SSL et TLS est le détournement des certificats. Afin de parer ce risque, il importe de se doter d’autorités de certifications destinées à valider ou invalider les certificats.

Pour en savoir plus sur les certificats, je vous recommande de lire l’article Protocole SSL et TLS dont j’ai extrait la citation ci-dessus.

En tant qu’autorité de certification (Root CA), VMCA peut fournir quatre types de certificats.

    • « Machine SSL Certificate » utilisé pour créer des sockets SSLs côté serveur, pour assurer une connexion sécurisée de type HTTPS, LADPS etc. entre clients et les différents nodes (vCenter, PSC externe)
    • « Solution User Certificates » pour l’authentification des différents services au vCenter Single Sign-On (SSO) grâce à l’échange de jetons SAML
    • « ESXi Certificates » sont créés automatiquement sur chaque hôte après installation de ESXi. Par contre, une fois l’hôté ajouté au vCenter, VMCA se chargera de lui fournir de nouveaux certificats
    • « Internal Certificates » qui regroupe « vCenter Single Sign-On Signing Certificate », « VMware Directory Service SSL Certificate » (remplacé par Machine SSL Certificate à partir de vSphere 6.5) et « vSphere Virtual Machine Encryption Certificates »

Il faut savoir que VECS ne stocke pas tous les certificats.

  • Les certificats de l’hôte ESXi se trouvent localement dans /etc/vmware/ssl
  • Les certificats internes (Internal Certificates) se trouvent sur le disque de l’utilisateur
  • Les certificats SSLs de machine (Machine SSL Certificates) sont utilisé comme certificat vmdir (vSphere 6.5)

Selon vos besoin, VMware vous propose quatre options pour gérer vos certificats.

  • VMCA Default, VMCA comme Root CA (option proposée par défaut)
  • VMCA Enterprise, utilise VMCA comme CA intermédiaire (Subordinate CA)
  • Custom, désactive VMCA et utilise des certificats personnalisés. Cette option n’est pas recommendée
  • Hybrid, utilise un certificat externe (créé par la companie ou  par un CA tierce) pour gérer les « Machine SSL ». VMCA s’occupera de fournir les certificats aux « Solution Users » et « ESXis »

Les options recommendées par VMware seraient d’utiliser les certificats VMCA par défaut avec ou sans certificats SSL externes (mode hybride) .

Je voudrai rajouter à cette partie que l’intégration des certificats est tellement profonde qu’un problème même mineur au niveau d’un de ces certificats peut rendre votre environnement totalement inutilisable. Il est donc très important de comprendre les concepts de gestion des certificats dans un environnement vSphere afin de pouvoir régler les problèmes basiques très rapidement.

 

II. VECS (VMware Endpoint Certificate Services)

Nous venons de voir quelles sont les différentes options pour générer des certificats pour votre environnement vSphere. VECS se chargera de les placer dans un « magasin de clés » ainsi que les clés privées et d’autres certificats non forcément générés par VMCA lui même.

Dans le VECS il y a plusieurs « Stores ».

  • Machine Endpoint (MACHINE_SSL_CERT), utilisé par le service de proxy inverse sur chaque nœud vSphere (vCenter, PSC externe), mais aussi par vmdir
  • Root CA (TRUSTED_ROOTS, TRUSTED_ROOT_CRLS) contient les tous certificats racines approuvés
  • Solution User, utilisés pour l’authentification avec vCenter Single Sign-On
  • Backup, permet au VMCA de restaurer les certificats juste avant leurs modifications si nécessaire
  • Other, d’autres Stores peuvent y être ajouté dans VECS

Je vous invite à lire l’article « Présentation du magasin de certificats VMware Endpoint » pour en savoir un peu plus sur le sujet.

En ce qui concerne les Solution Users, il faut retenir qu’il y en a quatre quand le PSC est intégré au vCenter.

  • machine
  • vsphere-webclient
  • vpxd
  • vpxd-extension

Quand le PSC n’est pas intégré au vCenter, ce dernier présente toujours quatre Solution Users. Par contre le PS ne présentera que 2.

  • machine
  • vsphere-webclient

Aussi il faut savoir que VPXD est le service de vCenter. VPXD a son propre Store. Dans VPXD-EXTENSION est inclu le reste des services de l’environnement vSphere (Auto Deploy, Inventory Service etc.).

 

III. Gestion des services et des certificats en ligne de commande

VMCA est aussi l’un des trois composant du service d’identité de base VMware et qui sont,

  • Service d’annuaire VMware (VMDIR)
  • Autorité de certification VMware (VMCA)
  • Démon VMware Authentication Framework (VMAFD)

 

1. VMCA

Par défaut, VMCA s’occupe de signer les certificats générés par l’outil CERTOOL du PSC qui se trouve à l’emplacement /usr/lib/vmware-vmca/bin/certool. Cet outil sert particulièrement à effectuer des opérations de gestion de certificats en mode CLI (ligne de commande).

Un autre outil beaucoup plus facile à manipuler pour la gestion des certificats, CERTIFICATE-MANAGER se trouve dans /usr/lib/vmware-vmca/bin/certificate-manager.

 

2. VMAFD

Pour la gestion des certificats dans VECS, vous pouvez utiliser l’outil VECS-CLI du PSC à l’emplacement /usr/lib/vmware-vmafd/bin/vecs-cli.

Pour afficher la liste des Store en ligne de commande, taper

/usr/lib/vmware-vmafd/bin/vecs-cli store list

Si la commande pour gérer le VECS se trouve dans le sous dossier de vmware-vmafd, ce n’est pas un hasard puisque le VECS dépend du démon VMAFD (VMware Authentication Framework Daemon).

 

Un autre outil, DIR-CLI nous permet de gérer les certificats et les mots de passe dans stocké dans vmdir (VMware Directory Service). Le chemin d’accès pour lancer dir-cli se trouve dans /usr/lib/vmware-vmafd/bin/dir-cli.

Pour précision, dir-cli ne fait pas que gérer les certificats. Pour la liste des options, je vous renvoie au «  Référence des commandes dir-cli« .

 

3. VMDIR

Vmdir est un service d’annuaire LDAP de VMware. Non seulement il stocke les informations relatives à l’authentification des utilisateurs et des différents services, mais vmdir est également utilisé pour la gestion des certificats, entre autre ceux utilisés pour autoriser la connection entre plusieurs PSCs.

De ce fait, dans un environnement avec plusieurs PSCs, les connections entre plusieurs nœuds (vCenter et PSCs externe ou non) se fait grâce à l’authentification de chacun de ces nœuds  via des certificats instaurés dans vmdir.

 

4. Résumé sur les outils de gestion des certificats VMware en ligne de commande

Dans /usr/lib/vmware-vmca/bin/

certool, gère les certificats VMware
certificate-manager; Gère les certificats des serveurs PSC et vCenter

Dans /usr/lib/vmware-vmafd/bin/

vecs-cli, gèrer le magasin de certificats VMware (VECS)
dir-cli, gère les Solution Users, les certificats et les mots de passe stockés dans vmdir

 

Références

Protocole SSL et TLS
Where vSphere Uses Certificates
Everything You Should Know About Certificate Management in vSphere 6
Configure and manage VMware Endpoint Certificate Store
VMware Certificate Authority overview and using VMCA Root Certificates in a browser
Qu’est-ce que l’authentification basée sur les certificats ? Pourquoi l’utiliser ?

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s