WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
    • VMware Cloud Foundation 9.1
    • VMware Cloud Foundation 9.0
  • VKS
  • Homelab
    • Hardware Options
    • Hardware Reviews
    • Lab Deployment Scripts
    • Nested Virtualization
    • Homelab Podcasts
  • VMware Nostalgia
  • Apple
You are here: Home / VMware Cloud Foundation / Using VCF Download Tool (VCFDT) with a Kerberos-Authenticated HTTPS Proxy

Using VCF Download Tool (VCFDT) with a Kerberos-Authenticated HTTPS Proxy

09.21.2026 by William Lam // Leave a Comment

While modern authentication protocols like OAuth 2.0 and mTLS are the de-facto standard these days, Kerberos-based (GSS-API/SPNEGO) authentication is still commonly used within many enterprise organizations. The challenge is that many modern applications and development frameworks do not natively support Kerberos authentication or provide libraries that make integration straightforward, which can make supporting these environments difficult.

The VCF Download Tool (VCFDT) is one such example. While it supports connecting to an HTTPS proxy with basic authentication, it does not natively support Kerberos authentication. This is where Px can help by acting as an intermediary running locally on the same system as VCFDT, enabling it to connect through a Kerberos-authenticated HTTPS proxy.

Here is a quick visual (thanks to ChatGPT) that demonstrates the connection flow from the client system (client.vcf.lab) running VCFDT, which uses an authenticated keytab from the Kerberos server (kdc.vcf.lab) to authenticate with the proxy server (proxy.vcf.lab). Once authenticated, VCFDT can connect to broadcom.com through the proxy to download the required software binaries and metadata.

Step 1 - Install Px and Stunnel, as Px does not natively support connecting to an HTTPS-based upstream proxy. In this setup, stunnel provides the TLS connection between Px and the HTTPS proxy. Install both by running the equivalent commands for your client system:

sudo apt update && sudo apt install stunnel4 python3-pip pipx -y
pipx install px-proxy

Step 2 - Reverse DNS (rDNS) and DNS canonicalization are enabled by default in Kerberos. When a connection is made to 127.0.0.1, or to a local hostname that resolves to 127.0.0.1, Kerberos performs a reverse DNS lookup to construct the Service Principal Name (SPN). If localhost is the primary entry for 127.0.0.1 in /etc/hosts, Kerberos constructs HTTP/*protected email*, causing authentication to fail.

We can workaround this on the client system by updating /etc/hosts to map proxy.vcf.lab ahead of localhost for 127.0.0.1 entry and this ensures the reverse lookup returns proxy.vcf.lab, allowing Kerberos to construct the correct SPN: HTTP/proxy.*protected email*.

Edit /etc/hosts file and ensure the 127.0.0.1 entry has your proxy FQDN ahead of localhost:

127.0.0.1 proxy.vcf.lab localhost

Step 3 - Here is an example of my configured Kerberos Client (/etc/krb5.conf) configuration:

[libdefaults]
    default_realm = VCF.LAB
    dns_lookup_realm = false
    dns_lookup_kdc = false

[realms]
    VCF.LAB = {
        kdc = kdc.vcf.lab:88
        admin_server = kdc.vcf.lab:749
    }

[domain_realm]
    .vcf.lab = VCF.LAB
    vcf.lab = VCF.LAB

Step 4 - Download the trusted Root CA for your proxy server to the client system. Update the stunnel configuration file (/etc/stunnel/squid-tls.conf) with the following configuration, replacing the values as needed for your environment:

pid = /run/stunnel4/squid-tls.pid
client = yes
foreground = no

[squid-https]
accept = 127.0.0.1:3129
connect = proxy.vcf.lab:3128
CAfile = /home/vmware/proxy.crt
verifyPeer = yes
checkHost = proxy.vcf.lab

Step 5 - Enable and restart Stunnel service by running the following commannds:

sudo systemctl enable stunnel4
sudo systemctl restart stunnel4

Step 6 - Launch Px using the following values, where --server specifies the local stunnel endpoint running on port 3129, which forwards the connection to your HTTPS proxy, and --port specifies the local port that Px will listen on for connections from VCFDT.

px --server=http://proxy.vcf.lab:3129 --listen=127.0.0.1 --port=3128

Step 8 - Open a new terminal session and ensure you have a valid Kerberos ticket by authenticating with your username using the kinit command, or use the klist command to confirm that an existing ticket is still valid.

kinit william[at]VCF.LAB

To verify that everything is working correctly, we can perform the following test and confirm that the connection is successful:

curl -s -o /dev/null -v --proxy http://127.0.0.1:3128 https://williamlam.com

Step 9 - Lastly, we can now use the VCF Download Tool to connect to the local Px proxy and verify that it can successfully connect to broadcom.com through our Kerberos-authenticated HTTPS proxy and download a file, as shown in the example below.

vcf-download-tool metadata download --depot-store /tmp --depot-download-activation-code-file activation_code.txt --proxy-server 127.0.0.1:3128


While many modern applications like VCFDT do not natively support Kerberos-based authentication, proxy tools like Px and Stunnel can bridge that gap and enable secure connectivity with traditional enterprise directory-based infrastructure.

Categories // VMware Cloud Foundation Tags // VCF 9.1

Thanks for the comment!Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Using VCF Download Tool (VCFDT) with a Kerberos-Authenticated HTTPS Proxy 09/21/2026
  • VCF 9.1.1 - Connecting Pi Coding Agent to VCF Private AI Services (PAIS) 09/17/2026
  • Quick Tip - Automating vDefend Security Services Platform (SSP) 5.2.0 Installer OVA Deployment 09/16/2026
  • VCF 9.1.1 - Simplified vSphere Kubernetes Service (VKS) using VLAN-Backed VPCs without NSX Tunnel Endpoints (TEPs) 09/15/2026
  • VCF 9.1.1 - Using VCF Private AI Services (PAIS) Models with AI Assistant for VCF 09/11/2026
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.

To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2026

Loading Comments...