Mise en place d’un certificat personnalisé pour vRealize Operations Manager 6

Voyons aujourd’hui comment installer un certificat personnalisé sur notre appliance vROps flambant neuve !

On trouve chez VMware des informations à propos du type de certificat requis (version courte : format PEM uniquement, chaîne de certification complète requise), ainsi qu’une procédure basique que nous allons développer un tout petit peu. Nous nous appuierons ici, comme dans les articles précédents, sur une PKI Microsoft intégrée à AD.

Préparation

Comme d’habitude, nous allons nous appuyer sur les outils installés pour certifier notre plateforme vCenter. Si vous n’avez pas cela sous la main, installez OpenSSL et vous pourrez démarrer !

Dans un dossier qui stockera vos certificats, créez un fichier texte mon-server-vrops.cfg avec le contenu suivant (éditez le contenu en gras) :

[ req ]
default_bits = 2048
default_keyfile = rui.key
distinguished_name = req_distinguished_name
encrypt_key = no
prompt = no
string_mask = nombstr
req_extensions = v3_req

[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth, clientAuth
subjectAltName = DNS: serveur-vrops, IP: 192.168.1.123, DNS: serveur-vrops.domaine.corp
 
[ req_distinguished_name ]
countryName = FR
stateOrProvinceName = MaRégion
localityName = MaVille
0.organizationName = MaSociété
organizationalUnitName = vRealize Operations Manager
commonName = serveur-vrops.domaine.corp

Maintenant, il nous faut télécharger la chaîne de certificats de l’autorité de certification. Pour cela, accédez à https://ma-ca.mon-domaine/certsrv (si ça ne marche pas, essayez en http ; si ça ne marche pas, la suite ne marchera pas non plus, arrêtez-vous ici et résolvez ce problème !) et choisissez de télécharger la chaîne de certificats.16.DownloadCAchain-1Puis sélectionnez l’encodage Base64 et téléchargez la chaîne de certificats.17.DownloadCAchain-2Enregistrez ce fichier en tant que cachain.p7b dans le même dossier que là où vous avez mis votre fichier mon-serveur-vrops.cfg.01.Files-FRIl nous faut maintenant extraire les certificats de l’autorité racine et des éventuelles autorités intermédiaires. Ouvrez le fichier cachain.p7b (double-clic) et développez le certificat jusqu’à voir à droite les certificats contenus dans la chaîne. Pour chaque certificat, exportez vers un fichier.02.CertExport-FRDans l’assistant d’exportation, sélectionnez le format Base-64, puis terminez l’assistant en enregistrant le fichier dans le dossier du fichier mon-serveur-vrops.cfg.03.CertExport-FRA la fin de l’opération, vous aurez un fichier .cer pour chaque niveau d’autorité de certification. Dans mon cas, une racine et une intermédiaire.04.Files-FRNous pouvons démarrer !

Création du certificat

Première étape, génération de la clé privée :

C:\OpenSSL\bin\OpenSSL.exe genrsa -out "d:\certificates\vROps\mon-serveur-vrops.key" 2048

Puis, création du .csr (fichier de requête de certificat).

C:\OpenSSL\bin\OpenSSL.exe req -new -key "d:\certificates\vROps\mon-serveur-vrops.key" -out "d:\certificates\vROps\mon-serveur-vrops.csr" -config "d:\certificates\vROps\mon-serveur-vrops.cfg"

Vous allez maintenant pouvoir soumettre votre .csr à votre autorité de certification pour obtenir un certificat. Nous procédons ici en ligne de commande.

certreq -submit -attrib CertificateTemplate:VMware-Certificate -config "mon-serveur-CA\mon-autorité" mon-serveur-vrops.csr mon-serveur-vrops.crt

Nous utilisons un modèle de certificat créé pour le vCenter, qui conviendra très bien ici. Pour plus d’informations, vous pouvez consulter l’article qui détaille la création de ce modèle ici.

A ce stade, nous avons dans le dossier tous les fichiers nécessaires à la création du certificat requis par vROps: un certificat pour vROps (fichier mon-serveur-vrops.crt), une clé privée (fichier mon-serveur-vrops.key), un certificat pour l’autorité racine (root.cer) et un certificat pour chaque intermédiaire (interX.cer). Créons maintenant le certificat .pem complet :

type mon-serveur-vrops.crt mon-serveur-vrops.key inter1.cer root.cer > mon-serveur-vrops.pem

Dans cet ordre, et en ajoutant bien sûr autant d’autorités intermédiaires qu’il faut. Notre fichier .pem est maintenant prêt !

Installation du certificat

Si vous êtes très prévoyant, vous avez réalisé toutes ces étapes avant d’installer votre appliance vROps. Du coup, il n’y a qu’à pointer vers votre certificat à l’installation. Mais si vous êtes comme moi, vous avez installé d’abord, et préparé après :). Pour modifier le certificat après coup, il est tentant d’aller dans la partie administration, Licensing… Mais ce n’est pas là !

Il faut se connecter au petit site d’administration (https://mon-vrops/admin) et aller chercher la minuscule icône en haut à droite (mieux caché, c’était possible ?), puis choisir Install new Certificate.05.UploadCert-FRChoisissez Browse for Certificate et allez chercher votre fichier mon-serveur-vrops.pem. Si tout est bon, vous aurez des informations à propos du certificat dans la zone du dessous.06.UploadCert-FRIl ne reste plus qu’à cliquer Install ! Vous allez alors être déconnecté, puis reconnecté, mais cela ne rafraichit pas le certificat vu du client (du moins pas avec Chrome). Fermez votre onglet puis rouvrez-le pour voir si le nouveau certificat a bien été pris en compte.07.Cert-okC’est bon ! Il n’y pas besoin de redémarrer quoi que ce soit après l’opération, le nouveau certificat est appliqué immédiatement. On peut reprendre la découverte de vROps ! 🙂