Loading

×Sorry to interrupt
Uncaught ReferenceError: addCTracking is not defined
throws at https://kb.vmware.com/resource/KM_TealiumTrackingJS?v=0.5:100:1

Refresh

Cookie Preference Center

General Information on cookies

When you visit our website, we use cookies to ensure that we give you the best experience. This information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies by clicking on the different category headings to find out more and change your settings. However, blocking some types of cookies may impact your experience on the site and the services we are able to offer. Further information can be found in our

Cookie Policy.

Strictly Necessary

Strictly Necessary

Always Active

Strictly Necessary

Strictly necessary cookies are always enabled since they are essential for our website to function. They enable core functionality such as security, network management, and website accessibility. You can set your browser to block or alert you about these cookies, but this may affect how the website functions. For more information please visit www.aboutcookies.org or www.allaboutcookies.org.

Cookie Details‎

Performance

Performance

Performance

Performance cookies are used to analyze the user experience to improve our website by collecting and reporting information on how you use it. They allow us to know which pages are the most and least popular, see how visitors move around the site, optimize our website and make it easier to navigate.

Cookie Details‎

Please confirm your settings by refreshing the page.

Functional

Functional

Functional

Functional cookies help us keep track of your past browsing choices so we can improve usability and customize your experience. These cookies enable the website to remember your preferred settings, language preferences, location and other customizable elements such as font or text size. If you do not allow these cookies, then some or all of these services may not function properly.

Cookie Details‎

Advertising

Advertising

Advertising

Advertising cookies are used to send you relevant advertising and promotional information. They may be set through our site by third parties to build a profile of your interests and show you relevant advertisements on other sites. These cookies do not directly store personal information, but their function is based on uniquely identifying your browser and internet device.

Cookie Details‎

Advertising Cookies

Consent Leg.Interest

Select All Vendors

Select All Vendors

Select All Hosts

Select All

Clear Filters

Information storage and access

Apply

Confirm My Choices Reject All Allow All

My Subscriptions

Loading

Knowledge Base

vSphere Update Manager / Lifecycle Manager fails to download updates due to SSL Interception (74844)

Last Updated: 1/23/2023Categories: How toTotal Views: 21440Language:
Chinese (Simplified)JapaneseEnglish

7 like this article

Subscribe to get an email
newsletter with new updates

7 people found this helpful Please provide article feedback:

Learn how VMware Skyline Advisor and Skyline Health Diagnostics work together to provide proactive intelligence and self-service log analysis.

Use Skyline Advisor to avoid issues before they occur across VCF, vSphere, vSAN, NSX, vROps & Horizon. Skyline Findings are based on top KBs, VMSAs/CVEs and design best practices.

Use Skyline Health Diagnostics to root cause vSphere & vSAN logs when an issue occurs. Skyline Health Diagnostic Findings are based on top KBs and VMSA/CVEs. You can use the Skyline Health Diagnostics tool in online or offline mode.

If you require additional help from technical support, please use Skyline Advisor to initiate a Log Assist to reduce time to upload logs. TSEs can also initiate logs to reduce effort.

Symptoms

Attempting to download patch definitions in the vSphere Web Client or vSphere Client (Flash) fails with the following symptoms:

vSphere Web Client (HTML5):

When looking in Home > Update Manager > [vum-server]  > Manage > Download Settings in vCenter Server 6.5/6.7 or in Home > Lifecycle Manager > Settings > Patch Setup in vCenter Server 7.0.x, the download configured for https://hostupdate.vmware.com appear as "Not Connected"

After clicking the Download Now button, the task fails with a message similar to:

Web sites: https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml; https://hostupdate.vmware.com/software/VUM/PRODUCTION/csco-main/csco-depot-index.xml; hosting the patch definitions and patches cannot be accessed or have no patch data. Check the Internet connectivity

vSphere Client (Flash):

When looking in Home > Update Manager > Settings > Administration Settings > Patch Setup, the download sources configured for https://hostupdate.vmware.com are in the status "Not Connected"

Going to Home > Update Manager > Settings > Administration Settings > Patch Downloads and clicking Download Now will result in a failed task with a message similar to:

Web sites: https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml; hosting the patch definitions and patches cannot be accessed or have no patch data. Check the Internet connectivity

vCenter (BASH) shell:

Attempting to pull down the XML file with curl results in an error:

# curl https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

In /var/log/vmware/vmware-updatemgr/vum-server/vmware-vum-server-log4cpp.log you find the following entries:

[2019-09-20 21:00:11:185 'httpDownload' 140052601693952 ERROR]  [httpDownloadPosix, 649] curl_easy_perform() failed: cURL Error: Peer certificate cannot be authenticated with given CA certificates, SSL certificate problem: unable to get local issuer certificate
[2019-09-20 21:00:11:185 'DownloadMgr' 140052601693952 ERROR]  [downloadMgr, 629] Executing download job {140052105550256} throws error: curl_easy_perform() failed: cURL Error: Peer certificate cannot be authenticated with given CA certificates, SSL certificate problem: unable to get local issuer certificate

When reading the certificate from https://hostupdate.vmware.com, you see it is not signed by a public Certificate Authority:

# echo | openssl s_client -connect hostupdate.vmware.com:443 2>/dev/null -showcerts | sed -n '/^-----BEGIN CERTIFICATE-----/,/^-----END CERTIFICATE-----/p' | openssl crl2pkcs7 -nocrl -certfile /dev/stdin | openssl pkcs7 -print_certs -noout

subject=/C=US/ST=California/L=Palo Alto/O=VMware, Inc./OU=IT Operations/CN=*.vmware.com
issuer=/C=US/O=acme/OU=Lab/CN=proxy.acme.com

subject=/C=US//O=acme/OU=Lab/CN=proxy.acme.com
issuer=/DC=com/DC=acme/DC=ad/CN=CA-INTERM1

subject=/DC=com/DC=acme/DC=ad/CN=CA-INTERM1
issuer=/CN=CA-ROOT

Cause

This can happen if there is a transparent proxy performing SSL Interception for outgoing HTTPS traffic. The certificate is being replaced by one that is signed by a Certificate Authority that is not trusted by the appliance.

Resolution

To prevent this issue, ensure that communication between the vCenter Server and https://hostupdate.vmware.com is not decrypted and re-encrypted by the SSL introspection software, but can instead pass untouched.
Should this not be an option, the issue can be worked around by applying the steps in the section "Workaround" below.

Workaround

To work around this problem, please apply the following steps:

Download the certificate chain as presented by the proxy, and split them into individual files:

# echo | openssl s_client -connect hostupdate.vmware.com:443 2>/dev/null -showcerts | sed -n '/^-----BEGIN CERTIFICATE-----/,/^-----END CERTIFICATE-----/p' | csplit -z -f /tmp/proxy-cert- -b%02d.crt /dev/stdin "/-----BEGIN CERTIFICATE-----/" "{*}"

Note: If the proxy does not present the full CA chain, you will need to engage your PKI administration team to obtain the Certificate Authority certs that signed this certificate.

Add the CA certificates to a file:

# for file in $(ls /tmp/proxy-cert-* | grep -v proxy-cert-00); do cat $file >> /tmp/proxy-cas.pem; done

Publish the CA certificates to VMware Directory and refresh the TRUSTED_ROOTS store in VECS (certificates in the TRUSTED_ROOTS store are also saved to /etc/ssl/certs):

# /usr/lib/vmware-vmafd/bin/dir-cli trustedcert publish --chain --cert /tmp/proxy-cas.pem
# /usr/lib/vmware-vmafd/bin/vecs-cli force-refresh

If the vCenter is 7.0 U1c or later, the CA certificates will also need to be added to the PEM file that python references:

# cp /usr/lib/python3.7/site-packages/certifi/cacert.pem /usr/lib/python3.7/site-packages/certifi/cacert.pem.backup
# cat /tmp/proxy-cas.pem >> /usr/lib/python3.7/site-packages/certifi/cacert.pem

Restart the vSphere Update Manager service:

# service-control --restart vmware-updatemgr

Detectable by VMware SkylineTM

Actions

Copy

link to clipboard
copied!

Print

Language:
Chinese (Simplified)JapaneseEnglish

Attachments

Additional Resources

No results for undefined

Ask The Community

Get answers quickly from VMware experts in the community

Post Subject

CONTINUE IN COMMUNITIES

Related Products:

VMware vCenter Server Appliance

VMware vCenter Server

Related Versions:

VMware vCenter Server Appliance 6.7.x

VMware vCenter Server Appliance 6.5.x

VMware vCenter Server 7.0.x

Take Our Survey

Support Assistant