Trust The Vaulthalla CA

Install the name-constrained Vaulthalla CA on Macs, iPhones and iPads, Linux, Windows, Android and Firefox, verify it, and remove it.

Trust The Vaulthalla CA

An internal hostname such as vault.home.arpa gets its certificate from the CA that vh setup caddy creates. Each device that opens Vaulthalla has to trust that CA once. Until it does, browsers show a certificate warning: do not click through it, because the warning is the only thing telling you that you reached your own server.

Why It Is Safe To Trust

The Vaulthalla CA's certificate carries critical X.509 name constraints listing only your Vaulthalla hostnames (or the --ca-scope domain). Current operating systems and browsers refuse any certificate it signs for another name. Trusting it lets it vouch for vault.home.arpa, not for your bank.

Check what a CA covers before you install it:

1openssl x509 -in vaulthalla-local-ca.crt -noout -subject -fingerprint -sha2562openssl x509 -in vaulthalla-local-ca.crt -noout -text | grep -A3 'Name Constraints'

Compare the SHA-256 fingerprint with the one vh setup caddy printed on the Mac. Install a certificate only if they match.

Get The Certificate

On the Mac that runs Vaulthalla, the certificate is at:

1/Library/Application Support/Vaulthalla/vaulthalla-local-ca.crt

It is a public certificate (no private key), readable by everyone. Copy it to the device by AirDrop, mail, a USB stick or scp.

Install It

On the Mac running Vaulthalla:

1sudo vh setup caddy --trust

On any other Mac:

1sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain vaulthalla-local-ca.crt

macOS asks for confirmation. Safari, Chrome and most apps use the System keychain.

Name Resolution

Trust is only half of it: the device must also resolve vault.home.arpa to the Mac. Add a DNS record (A or AAAA) for it on your router or local DNS server. On the Mac itself, sudo vh setup caddy --hosts-entry adds a marked /etc/hosts line for testing.

When The CA Changes

vh setup caddy creates a new CA when you configure a hostname outside the current one's constraints, and vh teardown caddy --purge deletes it. Devices then need the new certificate. Plan names up front with --ca-scope (for example --ca-scope home.arpa) to avoid this.

Remove Trust

Remove the CA from devices when you retire the Mac or purge Caddy:

1# macOS (or Keychain Access → System → Certificates): find its SHA-1 hash, then delete by hash2security find-certificate -a -Z -c "Vaulthalla Local CA" /Library/Keychains/System.keychain | grep -E 'SHA-1|"alis"'3sudo security delete-certificate -Z <SHA-1 hash> /Library/Keychains/System.keychain4 5# Debian/Ubuntu6sudo rm /usr/local/share/ca-certificates/vaulthalla-local-ca.crt7sudo update-ca-certificates --fresh

On iPhone and iPad, remove the profile in Settings → General → VPN & Device Management. On Windows, use certmgr.msc → Trusted Root Certification Authorities. The certificate's common name starts with Vaulthalla Local CA, followed by the hostname and the date it was created.