Prerequisites
Use this checklist before running remote setup.
- A local machine with Go 1.26.4 or newer.
- A fresh Ubuntu 22.04 or newer VPS. Ubuntu 24.04 is the default for provisioning.
- An ED25519 SSH key pair for administrative access.
- If provisioning: an SSH public key already registered with Hetzner or DigitalOcean.
- If deploying the proxy: a domain you control and an email address for Let's Encrypt.
- DNS access for the apex domain and wildcard subdomains.
Local Checks
Section titled “Local Checks”Run the doctor command when you want a quick preflight without opening the TUI:
bin/servestead doctorbootstrap, harden, network, and keygen do not require local Ansible, OpenSSH, or ssh-keygen binaries. Remote setup still assumes standard Ubuntu tools such as apt, sudo, systemctl, curl, gpg, and iptables.
SSH Key
Section titled “SSH Key”Servestead can generate a provider login keypair:
bin/servestead keygenThe default private key path is:
$HOME/.ssh/servestead_ed25519Add the printed public key to your cloud provider before provisioning or use an existing key pair for an existing VPS.
DNS Records
Section titled “DNS Records”Before the proxy can issue certificates and expose services, point these records at the VPS:
| Hostname | Type | Value |
|---|---|---|
example.com |
A |
VPS public IPv4 |
*.example.com |
A |
VPS public IPv4 |
Replace example.com with your real domain.