DEPLOY CUSTOM SSL CERTIFICATE FOR CMS
VSP provides default SSL certificates utilized for communication among various components. During CMS deployment, an option is provided to utilize custom SSL certificates instead of the VSP-provided default ones. Follow the steps below:
-
Identify the CMS Client Container ID and Dashboard Settings MFE Client Container ID using the below commands:
-
Containers: Make a note of the container IDs for further steps
docker ps | grep cms-client
-
VMs: Make a note of the container IDs for further steps
docker ps | grep client
docker ps | grep dashboard-settings
-
-
Enable Shared Volume Mounts for Client Service
-
Copy the custom certificates, key files and rootCA in the volume mount directory on the Master Node
-
For Kubernetes, copy on Master node directory: /home/virsec/customer-certs
-
For VMs, copy on CMS VM directory: /var/lib/customer-certs
-
-
-
Create the properties file vsp-cms-certs.properties in the root directory of the associated mount folder with the below content format:
ssl_certificate_file_path=<PATH_TO_SSL_CERTIFICATE_FILE_AND_NAME>
ssl_certificate_key_file_path=<PATH_TO_SSL_CERTIFICATE_KEY_FILE_AND_NAME>
ssl_client_certificate_file_path=<PATH_TO_SSL_CLIENT_CERTIFICATE_FILE_AND_NAME>
http_proxy_rootCA=<CERTIFICATE_FILENAME>
http_ldaps_rootCA=<LDAPS_CERTIFICATE_FILENAME>
NOTE:
The property ssl_certificate_file_path is optional. But when it is used, ensure that the two properties ssl_certificate_file_path and ssl_certificate_key_file_path are used together
The property http_proxy_rootCA is optional. Utilize it when proxy server is applied for outbound call in the respective service
-
After the property file creation, copy the files on the mount folder as mentioned in the properties file
-
For Containers, execute the below command to apply the custom certificates
-
- kubectl -n virsec create configmap cms-certs --from-file=./customer-certs/ --dry-run=client -o yaml | kubectl -n virsec apply -f -
-
-
Restart the CMS containers: CMS Client and Dashboard Settings MFE Client using the below command:
-
docker restart <container_id>
-
During restart, the CMS UI may be affected momentarily without any effect on other VSP features
-
-
Verification
-
After the container restart, log in to the CMS UI using valid credentials using a browser
-
Verify the certificate in use
NOTE:
Since the changes are made to a running container, if that container instance is restarted, the above configurations must be performed again
-
-
(If required) For containers, execute the command below to delete the applied custom certificates:
-
kubectl delete configmap cms-certs -n virsec
-
kubectl -n virsec create configmap cms-certs
-