Vous pouvez gérer les certificats VMCA (VMware Certificate Authority), VECS (VMware Endpoint Certificate Store), VMware Directory Service (vmdir) et Security Token Service (STS) à l'aide d'un groupe d'interfaces de ligne de commande. L'utilitaire vSphere Certificate Manager gère également de nombreuses tâches associées, mais les interfaces de ligne de commande sont indispensables pour la gestion manuelle des certificats et d'autres services.

Vous accédez normalement aux outils d'interface de ligne de commande affectés à la gestion des certificats et des services associés via une connexion SSH au Shell du dispositif. Pour plus d'informations, consultez l'article de la base de connaissances VMware à l'adresse https://kb.vmware.com/s/article/2100508.

La section Remplacement manuel des certificats vSphere fournit des exemples de remplacement de certificats à l'aide des commandes CLI.

Tableau 1. Outils CLI vSphere de gestion des certificats et des services associés
CLI Description Reportez-vous au
certool Génère et gère les certificats et les clés. S'exécute dans le cadre de VMCAD, le service de gestion de certificats de VMware.

Référence des commandes d'initialisation de certool

vecs-cli Gère les contenus des instances de VMware Certificate Store. Partie du démon VMAFD (VMware Authentication Framework Daemon) Référence des commandes vecs-cli
dir-cli Crée et met à jour les certificats dans le Vmware Directory Service. Fait partie de VMAFD. Référence des commandes dir-cli
sso-config.sh Gère les certificats STS. Aide relative à la ligne de commande. La saisie de sso-config.sh sans options affiche l'aide relative à la ligne de commande.
service-control Démarrez ou arrêtez les services, par exemple faisant partie d'un workflow de remplacement de certificat.

Exécutez cette commande pour arrêter les services avant d'exécuter d'autres commandes d'interface de ligne de commande.

Emplacements des CLI vSphere

Par défaut, les emplacements des interfaces de ligne de commande sont les suivants.

/usr/lib/vmware-vmafd/bin/vecs-cli
/usr/lib/vmware-vmafd/bin/dir-cli
/usr/lib/vmware-vmca/bin/certool
/opt/vmware/bin/sso-config.sh
Note : La commande service-control ne requiert pas de spécifier le chemin.

Privilèges requis pour l'exécution des CLI vSphere

Les privilèges requis varient selon l'interface de ligne de commande utilisée et la commande à exécuter. Par exemple, pour la plupart des opérations de gestion de certificats, vous devez être administrateur du domaine vCenter Single Sign-On local (vsphere.local par défaut). Certaines commandes sont disponibles pour tous les utilisateurs.

dir-cli
Vous devez être membre du groupe d'administrateurs du domaine local (vsphere.local par défaut) pour exécuter les commandes dir-cli. Si vous ne spécifiez pas de nom d'utilisateur et de mot de passe, vous êtes invité à saisir le mot de passe de l'administrateur du domaine vCenter Single Sign-On local, [email protected] par défaut.
vecs-cli
Dans un premier temps, seuls le propriétaire du magasin et les utilisateurs possédant des privilèges d'accès généraux peuvent accéder au magasin. Les utilisateurs du groupe Administrateurs disposent de privilèges d'accès permanents.
Les magasins MACHINE_SSL_CERT et TRUSTED_ROOTS sont particuliers. Seul l'utilisateur racine ou l'utilisateur administrateur, selon le type d'installation, dispose d'un accès total à ces magasins.
certool
La plupart des commandes certool nécessitent que l'utilisateur soit membre du groupe d'administrateurs. Tous les utilisateurs peuvent exécuter les commandes suivantes.
  • genselfcacert
  • initscr
  • getdc
  • waitVMDIR
  • waitVMCA
  • genkey
  • viewcert

Modification des options de configuration de certool

Lorsque vous exécutez certool --gencert ou d'autres commandes d'initialisation ou de gestion de certificats, la commande lit toutes les valeurs dans un fichier de configuration. Vous pouvez modifier le fichier existant, remplacer le fichier de configuration par défaut avec l'option -–config=<file name> ou remplacer des valeurs sur la ligne de commande.

Le fichier de configuration, certool.cfg, se trouve dans le répertoire /usr/lib/VMware-Vmca/share/config/ par défaut.

Le fichier comporte plusieurs champs possédant les valeurs par défaut suivantes :

Country = US
Name= Acme
Organization = AcmeOrg
OrgUnit = AcmeOrg Engineering
State = California 
Locality = Palo Alto
IPAddress = 127.0.0.1	
Email = [email protected]
Hostname = server.acme.com
Note : Le champ OU (organizationalUnitName) n'est plus obligatoire.
Vous pouvez modifier les valeurs en spécifiant un fichier modifié sur la ligne de commande ou en remplaçant les valeurs individuelles sur la ligne de commande de la façon suivante.
  • Créez une copie du fichier de configuration, puis modifiez-le. Utilisez l'option de ligne de commande --config pour spécifier le fichier. Spécifiez le chemin d'accès complet pour éviter les problèmes de nom de chemin d'accès.
  • /usr/lib/vmware-vmca/bin/certool -–gencert --config /tmp/myconfig.cfg
  • Remplacez les valeurs individuelles sur la ligne de commande. Par exemple, pour remplacer Locality, exécutez la commande suivante :
    /usr/lib/vmware-vmca/bin/certool -–gencert -–privkey=private.key –-Locality="Mountain View" 
Spécifiez --Name pour remplacer le champ CN du nom de sujet du certificat.
  • Pour les certificats d'utilisateurs de solutions, le nom est <nom_utilisateur_solution>@<domaine> par convention, mais vous pouvez le modifier si une autre convention est utilisée dans votre environnement.
  • Pour les certificats SSL de la machine, le nom de domaine complet de la machine est utilisé.

    VMCA autorise un seul nom DNS (dans le champ Hostname) et aucune autre option d'alias. Si l'adresse IP est spécifiée par l'utilisateur, elle est stockée également dans SubAltName.

Utilisez le paramètre --Hostname pour spécifier le nom DNS d'un SubAltName d'un certificat.