vRealize Automation : Certificates vRA 6.x

vRealize Automation : Certificates vRA 6.x


Le but de cet article est montrer comment créer des certificats signés par une autorité (ROOT CA) pour un environnement vRA 6.x

Commencez par remplir un fichier de config dont voici le template

[ 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, nonRepudiation
extendedKeyUsage = serverAuth, clientAuth
subjectAltName = DNS:sso, DNS:vra, DNS:sso.lab.local, DNS:vra.lab.local, IP:10.10.10.1, IP:10.10.10.2
[ req_distinguished_name ]
countryName = FR
stateOrProvinceName = FRANCE
localityName = PARIS
0.organizationName = VINCEPTION
organizationalUnitName = IT
commonName = vra.lab.local

Vous avez en encadré rouge les points à changer selon votre environnement.
Au niveau du subjetAltName, on renseigne le nom court, le nom long et l’adresse IP. Dans notre cas de figure, on utilise le même certificat pour le SSO et vRA. Bien évidemment, il est possible d’utiliser des certificats uniques pour chacun des services.
IMPORTANT: Notez que le commonName doit être égal au FQDN de votre service (portail vRA).

Templates

Certification Authority (Local) > Certificate Templates > Manage

Server Web > Duplicate Template

Donnez un nom à votre Template
Définissez une période de validité du certificat

Cliquez sur Extensions > Key Usage > Edit

Cochez “Signature is proof of origin” (nonrepudiation)

Cliquez sur Extensions > Application Policies > Edit

Cliquez sur Add

Ajoutez Client Authentification

Cliquez sur Request Handling
Cochez “Allow private key to be exported”

Cliquez sur Certificate Template > New Certificate Template to Issue


Sélectionnez votre nouveau Template créé

Pour la suite, et notamment pour la création du certificat, il vous faut télécharger OpenSSL
OpenSSL : http://slproweb.com/products/Win32OpenSSL.html

 

1) Créer une demande de certificat et convertir la clé privée au format RSA
On commence par créer une demande de certificat rui.csr avec sa clé privée rui-orig.key depuis le fichier de config vcac
Ensuite on convertit la clé privée rui-orig.key en clé RSA rui.key

openssl req -new -nodes -out rui.csr -keyout rui-orig.key -config vcac.cfg
openssl rsa -in rui-orig.key –out rui.key

Voici la liste des fichiers que vous devriez avoir après ces étapes

 

2) Soumettre la demande de certificat
La prochaine étape est de soumettre la demande de certificat à l’aide du fichier rui.csr auprès de l’autorité de certification

URL Services de certificats : http://autorite-certification/certsrv
Cliquez sur Demander un certificat > demande avancée

Copier/Coller le contenu du fichier Request rui.csr
Sélectionnez le modèle de certificat crée en début d’article vCAC-Template

Cochez Codé en base 64
Sauvegardez le certificat rui.crt

 

3) Télécharger le certificat racine rootca de l’autorité de certification

Accéder de nouveau à l’URL de votre autorité de certification
Cliquez sur télécharger un certificat d’autorité de certification

Cochez Base 64
Cliquez sur “Télécharger la chaîne de certificats d’autorité de certification
Enregistrez le certificat rootca

Une fois téléchargé, double-cliquez sur le rootca
La fenêtre suivante s’ouvre.

Sélectionnez le certificat root > All tasks > Export

Cochez Base-64 encoded X.509 (.CER)

Sauvegardez le certificat cachain

Voici la liste de fichiers que vous devriez avoir après toutes ces étapes.

 

4) Convertir le certificat au format PEM

Il est nécessaire de regrouper les les fichiers rui.crt, rui.key, cachain.cer dans un une archive PKCS12 rui.pfx afin de pouvoir extraire le certificat au format PEM.
L’intérêt de créer une archive PKCS12 est que celle-ci est sécurisée par mot de passe et vous n’avez plus à vous soucier de tous vos fichiers, tout se retrouve danns l’archive PKCS12.

Création de l’archive PKCS12 regroupant les fichiers rui.crt, rui.key, cachain.cer.
On va ensuite extraire le certificat rui.pem depuis l’archive rui.pfx.

L’extraction demande le mot de passe renseigné à l’étape d’au-dessus.

openssl pkcs12 –export -in rui.crt -inkey rui.key – certfile cachain.cer -name “rui” -passout pass:VMware1! -out rui.pfx
openssl pkcs12 -in rui.pfx -clcerts -nokeys -out rui.pem

Voici la liste des fichiers que vous devriez avoir après toutes les étapes.

Contenu de la Private key : rui.key

Contenu du Certificat Chain : rui.pem


Configuration du certificat sur vRA

Au niveau de SSL Configuration, cliquez sur Import
RSA private key : copier/coller le contenu de rui.key
Certificate Chain : copier/coller le contenu de rui.pem

IMPORTANT : le hostname vRA doit être le même que le commonName renseigné dans le fichier de configuration pour le certificat

Et voilà 🙂
Notre certificat est importé.

Récapitulatif des commandes

openssl req -new -nodes -out rui.csr -keyout rui-orig.key -config vcac.cfg
openssl rsa -in rui-orig.key –out rui.key

Submit Certs > Download based64 > rui.crt
Download CAChain > Export CAChain based64 X509 CER > Root64.cer

openssl pkcs12 –export -in rui.crt -inkey rui.key – certfile cachain.cer -name “rui” -passout pass:VMware1! -out rui.pfx
openssl pkcs12 -in rui.pfx -clcerts -nokeys -out rui.pem

Leave a Reply

Your email address will not be published. Required fields are marked *