Integration of VMware vSAN
This section lists the steps to integrate VMware vSphere with CipherTrust Manager.
Prerequisites
This section provides the prerequisites for integration of VMware vSAN with CipherTrust Manager.
Ensure that the CipherTrust Manager is installed and configured. For more details, refer to the CipherTrust Manager Documentation.
VMware vSAN communicates with the CipherTrust Manager using the KMIP interface. Ensure that the KMIP interface is configured on the CipherTrust Manager.
IP address of the CipherTrust Manager and port of the KMIP interface must be accessible from the VMware vSAN system.
CipherTrust Manager recognizes only registered KMIP clients. Ensure that each node of the VMware vSAN cluster is registered as a KMIP client on the CipherTrust Manager. Refer to KMIP Client Registration for more details.
Configuration on CipherTrust Manager
To configure the CipherTrust Manager, you need to perform the following steps:
Creating a Domain (Optional)
Perform the following steps to be performed on CipherTrust Manager:
Navigate to Admin Settings > Domains.
Click Add Domain. The Add Domain page appears.
Specify the following information:
Name - Enter the domain name.
Admins - Select the admins (one or more) from the list available in the drop down. For example, admin.
Parent CA - Select parent CA as root CA.
Allow Subdomain User Management - Select this check box if you want to enable the sub-domain user management through this domain.
Click Save.
Switch to the newly created domain by clicking the top right on the current Domain Name.
Creating a User
To create a user, perform the following steps:
Log on to the CipherTrust Manager GUI.
Open the Keys & Access Management application.
On the left pane, click Users. The Users page is displayed.
On the Users page, click Create New User.
On the Create a New User screen provide the following details:
Enter Username.
Enter Password.
Click Create. The newly created user is listed on the Users page.
Note
To create a user in sub-domain, you must enable Allow Subdomain User management.
To create a user, perform the following steps:
Log on to the CipherTrust Manager GUI with the User you created within the sub-domain.
Open the Keys & Access Management application.
On the left pane, click Users. The Users page is displayed.
On the Users page, click Create New User.
On the Create a New User screen provide the following details:
Enter Username.
Enter Password.
Click Create. The newly created user is listed on the Users page.
Assigning User to a Group
Perform the following steps to add user to a group:
Click the ellipsis button (...) corresponding to the user that you created in the previous step.
Click Edit.
Click Group Memberships > Add Group.
In the search bar, type Key Admins and select the check box corresponding to it .
Click Add Group.
Creating or Adding a CA (Optional)
To create/add a Self-signed local CA, perform the following steps:
Navigate to CA > Local. Select Add Local CA, the Add Local CA page appears.
Provide the required information and click Add Local CA. The created Local CA will appear under Pending CAs section.
Click the ellipsis against the Local CA that you created and select the option Self-sign.
Select a valid duration for the Local CA. Click Save.
To add an external CA, perform the following steps:
Navigate to CA > External. Select Add External CA, the Add External Certificate page appears.
Provide the required information.
If you want to upload the external CA, select the File Upload option and click Upload Certificate. Browse and select the required External CA.
OR
Select Text and paste the contents of External Certificate
Click Add External CA.
Registering a KMIP Client
You can register a KMIP client on the CipherTrust Manager through:
Auto Registration
Manual Registration
Create a Registration Token using the following steps:
Log on to the CipherTrust Manager in root domain.
Go to Access Management > Registration Tokens.
Click Create New Registration Token.
Copy the
Registration Token
once it is created.Turn ON Auto Registration using the following steps:
Go to Admin Settings > Interfaces.
Click the ellipsis button (...) corresponding to the kmip interface.
Click Edit.
Under Configure KMIP window, select Auto Registration.
Paste the
Registration Token
.Select the mode as TLS, verify client cert, user name taken from client cert, auth request is optional.
Click Update.
Log on to the CipherTrust Manager.
Go to Products > KMIP.
Create Client Profile using the following steps:
Go to Client Profile and click Add Profile.
Add a Profile Name.
Select CN in Username Location in Certificate.
Click Certificate Details.
Paste the content of
client.csr
.Click Save.
Create Registration Token using the following steps:
Go to Registration Token and click New Registration Token > Begin.
Add a Name Prefix.
Specify a Token Lifetime value along with the Client Capacity for the token.
Click Select CA.
Select the CA type as Local/External depending on what you are using.
Select the appropriate CA from the dropdown menu and click Select Profile.
Select the Client Profile from the dropdown which you have created in the above step.
Click Create Token.
Copy the value of the Token created and click Done.
If you are using External CA then you can select the external CA which was created using openssl and uploaded on the CipherTrust Manager.
Go to Registered Clients and click Add Client.
Specify client name and paste the Registration Token generated in the above step.
If you are using external CA then you need to paste the signed client certificate in the Client Certificate field.
Click Save to save the client certificate.
You can register a KMIP client on the CipherTrust Manager through:
Auto Registration
Manual Registration
Create a Registration Token in the sub-domain using the following steps:
Log on to the CipherTrust Manager in your specified sub-domain.
Go to Access Management > Registration Tokens.
Click Add Registration Token > Begin.
Add a Name Prefix.
Specify a Token Lifetime value along with the Client Capacity for the token.
Copy the value of the Registration Token once it is created.
Switch to Root Domain.
Turn ON Auto Registration using the following steps:
Log on to the CipherTrust Manager in the root domain.
Go to Admin Settings > Interfaces.
Click the ellipsis button (...) corresponding to the kmip interface.
Click Edit.
Under Configure KMIP window, select Auto Registration.
Paste the
Registration Token
.Select the mode as TLS, verify client cert, user name taken from client cert, auth request is optional.
Click Update.
Log on to the CipherTrust Manager into your domain.
Go to Products > KMIP.
Create Client Profile using the following steps:
Go to Client Profile and click Add Profile.
Add a Profile Name.
Select CN in Username Location in Certificate.
Expand the Certificate Details section.
You can either paste the content of a generated client.csr or you can create one, by filling in the details.
For domain, the format to enter the Common Name field of the cert is always:
domainName||domainUser
Click Save.
Create a Registration Token using the following steps:
Go to Registration Token and click New Registration Token > Begin.
Add a Name Prefix.
Specify a Token Lifetime value along with the Client Capacity for the token.
Click Select CA.
Select the CA type as Local/External depending on what you are using.
Select the appropriate CA from the dropdown menu and click Select Profile.
Select the Client Profile from the dropdown which you have created in the above step.
Click Create Token.
Copy the value of the Token created and click Done.
If you are using External CA then you can select the external CA which was created using openssl and uploaded on the CipherTrust Manager.
Go to Registered Clients and click Add Client.
Specify client name and paste the Registration Token generated in the above step.
If you are using external CA then you need to paste the signed client certificate in the Client Certificate field.
Click Save to save the client certificate.
Configuring the KMIP Interface
The KMIP interface can be configured through:
Go to Admin Settings > Interfaces.
On the KMIP Interface, click the ellipsis button (...) and then click View/Edit.
Select the Auto Registration checkbox if you auto-registered your KMIP client and paste the value of the registration token that you created.
Note
By default, the Auto Registration is disabled.
Select the mode as TLS, verify client cert, user name taken from client cert, auth request is optional.
Specify selections for Local CA for Automatic Server Certificate Generation as desired.
Local CA for Automatic Server Certificate Generation should be set to Turn off auto generation from Local CA in case of External CA.
Select the CA according to your preference:
If you are using External CA then select the CA under External Trusted CAs
If you are using Local CA then select the CA under Local Trusted CAs
If you are using an External CA, expand the Upload Certificate section:
In the Certificate field, paste the contents of Server Certificate, CA, and Server Key file in the same order. Do not introduce any space or character or symbol between the contents of these files.
Select certificate Format as PEM.
Password field is optional and can be skipped.
Click Update.
Switch to Root Domain.
Go to Admin Settings > Interfaces.
On the KMIP Interface, click the ellipsis button (...) and then click View/Edit.
Select the Auto Registration checkbox if you auto-registered your KMIP client and paste the value of the registration token that you created.
Note
By default, the Auto Registration is disabled.
Select the mode as TLS, verify client cert, user name taken from client cert, auth request is optional.
Specify selections for Local CA for Automatic Server Certificate Generation as desired.
Local CA for Automatic Server Certificate Generation should be set to Turn off auto generation from Local CA in case of External CA.
Select the CA according to your preference.
Login to your sub-domain. Go to CA > Local. Click the ellipsis (...) and copy the contents of your CA Certificate.
Logout of your sub-domain and now login to the root domain.
Go to CA > External > Add External CA.
Enter a name for this Domain CA and select the text radio button and paste the certificate contents.
Click Add External CA.
Go to Admin Settings > Interfaces.
Click the Add icon to add the External CA.
Click Update.
Note
If you are using an External CA in the root Domain, you need to add the CA as an External CA in both the root domain as well as the sub-domain and modify the interface accordingly.
Go to Admin Settings > Interfaces.
Click the Add icon to add the External CA.
Click Update.
On the KMIP interface, click the ellipsis (...) > Certificate Options > Upload New Certificate > Ok.
Select the Certificate Chain option and click Build Certificate Chain.
Click on Text and paste the contents of Server Certificate, CA, and Server Key file in the same order. Do not introduce any space, character or symbol between the contents of these files.
Select certificate Format as PEM.
Click on Upload Certificate.
Further, You need to perform the following configuration on CipherTrust Manager specific to VMware:
Creating a Client Certificate
Note
This section is applicable to KMIP clients registered using Auto Registration.
Log on to the CipherTrust Manager.
Navigate to the CA > Local CA and click on the name of the CA certificate you need to issue the certificate from.
Click on Issue Certificate.
Enter the Display Name, followed by Common Name.
Note
The common Name of the certificate should be the same as the name of the user you created on CipherTrust Manager. Refer to Creating a User section.
For more information on the format of common name of the certificate, refer to LDAP and Multi-Domain Client Usernames in KMIP Certificates.Select the Algorithm and Size, and click Issue Certificate.
Save the Private Key and the CSR.
Select the Certificate Purpose as client, specify the validity of the certificate in days, and click Issue Certificate.
Download a copy of this certificate by clicking the ellipsis next to the certificate name.
Creating a Local CA
Log on to the CipherTrust Manager.
Navigate to the CA > Local CA > Add Local CA.
Fill in the certificate name, common name, and the algorithm
Click on Add Local CA.
From the list of Pending CAs, click on the ellipsis (...) corresponding to the cert that you just created.
From the pop-up, select Self-sign.
Configuring NTP Server (optional)
Based on your deployment strategy, you may need to configure an NTP (Network Time Protocol) server. Use either of the following commands to add an NTP server:
Command 1:
ksctl ntp servers add --host time.nist.gov
Command 2:
ksctl ntp servers add --host ntp-b.nist.gov --key secret
Configuration on VMware
Add KMS to the vCenter Server
To add KMS, perform the following steps on the vCenter UI.
Log in to the vCenter Server.
Browse the inventory list and select the vCenter Server instance.
Click Configure and under Security, click Key Providers.
Click Add Standard Key Provider, enter key provider information, and click Add Key Provider. You can click Add KMS to add more Key Management Servers.
Click Trust. vCenter Server adds the key provider and displays the status as Connected.
Uploading Client Certificate and Private Key onto vSphere
Perform the following steps to upload Client Certificate and Private Key:
Log in to the vSphere Web Client, and select a vCenter Server system.
Click Configure and select Key Management Servers.
Select the KMS instance with which you want to establish a trusted connection.
Select Upload a File and upload copies of the client certificate and private key and click Establish Trust.
Alternatively, you can paste the certificate that you received from the KMS vendor into the top text box or click Upload File to upload the certificate file. Paste the key file into the bottom text box or click Upload File to upload the key file.
Click OK.
You can enable the following encryptions:
To enable vSAN encryption:
Navigate to the KMS cluster created in vCenter.
Right-click the cluster and select Settings. The Configure tab is displayed.
Expand the vSAN section and click General.
Click Edit. Edit vSan Settings window is displayed.
Enable Encryption and select the previously created KMS cluster.
Click OK.
VMWare has added a new feature named vSphere Trust Authority in 7.0 release onwards and CipherTrust Manager supports this feature. To configure vSphere Trust Authority, refer to the VMWare documentation.
To connect Key Provider Service to KMS, you need to configure the trust setup.
Example:
Set-TrustAuthorityKeyProviderClientCertificate -KeyProvider $kp8 -CertificateFilePath <path/to/certfile.pem> -PrivateKeyFilePath <path/to/privatekey.pem>
Connect to vCenter Server by using the vSphere Client.
Right-click the virtual machine that you want to encrypt and select VM Policies > Edit VM Storage Policies.
Select the storage policy.
To encrypt the VM and its hard disks, select an encryption storage policy and click OK.
To encrypt the VM but not the virtual disks, toggle on Configure per disk, select the encryption storage policy for VM Home and other storage policies for the virtual disks, and click OK.
If you prefer, you can encrypt the virtual machine, or both virtual machine and disks, from the Edit Settings menu in the vSphere Client.
Right-click the virtual machine and select Edit Settings.
Select the VM Options tab, and open Encryption. Choose an encryption policy. If you deselect all disks, only the VM home is encrypted.
Click OK.
The integration is now complete and you are ready to encrypt virtual machines.
Once the integration is successful, you will be able to view the keys on the CipherTrust Manager.