/opt/vmware/sddc-support/sos --certificate-healthVMware Cloud Foundation 4.x
VMware Cloud Foundation 5.x
VMware Cloud Foundation 9.x
This issue occurs when the SDDC Manager's machine SSL certificate (vcf_https.crt) has already expired. Because the SDDC Manager UI and automated rotation services rely on a valid secure connection to function, the "Regenerate" button becomes disabled once the certificate is invalid. This creates a circular dependency that requires manual replacement via the CLI to restore service
Note: It is strongly recommended to take a snapshot of the SDDC Manager VM and Management vCenter Server before proceeding with the steps below.
For the scripted method, download the attached script and run it as the root user on the SDDC Manager appliance within the /home/vcf directory.
SSH to the SDDC Manager using the vcf account and elevate to root:
Transfer the renew_sddc_cert_with_vmca.sh script to the /home/vcf directory using WinSCP or a similar tool.
Execute the script:
If the script fails with the error /bin/bash^M: bad interpreter: No such file or directory, perform the following steps to resolve line-ending issues and re-run the script:
Execute the following command to fix the script file:
Re-run the script:
To manually regenerate and replace the SDDC Manager certificate, follow these steps:
SSH to the SDDC Manager as vcf and elevate to root:
Generate the CSR on the SDDC Manager from the /home/vcf directory:
SSH to the Management vCenter and create a temporary directory:
Transfer the sddc-manager.example.com.csr file from the SDDC Manager to the /tmp/certs directory on the Management vCenter Server using WinSCP or a similar tool.
On the Management vCenter Server, create a new configuration file named cert.cfg in /tmp/certs:
<Management_vcenter_FQDN> with the FQDN of the vCenter.<SDDC ip_address> with the IP address of the SDDC Manager.<SDDC FQDN> with the FQDN of the SDDC Manager.Copy and paste the following configuration block into the file. Customize the placeholders within the [ v3_req ] section before saving:
[ req ]
req_extensions = v3_req
[ v3_req ]
extendedKeyUsage = serverAuth, clientAuth
authorityKeyIdentifier=keyid, issuer
authorityInfoAccess = caIssuers;URI:https://<Management_vcenter_FQDN>/afd/vecs/ca
subjectAltName=IP:<SDDC ip_address>, DNS:<SDDC FQDN>Generate the certificate using the cert.cfg file and the CSR:
Create a certificate chain containing the vCenter VMCA root and the newly generated certificate:
On the SDDC Manager, back up the existing key and certificate:
Upload the sddc-manager.example.com.pem chain and the sddc-manager.example.com.key to /home/vcf on the SDDC Manager.
Replace the existing certificate and key with the new files:
Update the permissions for the certificate and key files:
Restart the Nginx service: