Prototype KubeClaw is a learning project exploring what a secure, scalable Kubernetes environment for AI agents looks like. It is not production ready and not beta. Expect breaking changes and unreviewed assumptions. Read the project status.

Password Management

Which credentials exist, where they live, and how to keep terraform.tfvars safe.

Which credentials exist?

CredentialPurposeStorage
Hetzner API TokenCreate infrastructureterraform.tfvars
Root passwordEmergency web consoleterraform.tfvars
SSH private keysServer access~/.ssh/ or password manager
Cloudflare Tunnel tokenTunnel authCloudflare Dashboard
πŸ“ K8s Cluster
β”œβ”€β”€ πŸ” Hetzner API Token
β”‚   └── Token: xxx
β”œβ”€β”€ πŸ” Root Password
β”‚   └── Password: xxx
β”œβ”€β”€ πŸ“ SSH Keys (Secure Note)
β”‚   β”œβ”€β”€ Control Node Private Key: ...
β”‚   β”œβ”€β”€ Control Node Public Key: ...
β”‚   β”œβ”€β”€ Worker Node Private Key: ...
β”‚   └── Worker Node Public Key: ...
└── πŸ” Cloudflare Tunnel Token
    └── Token: xxx

Securing terraform.tfvars

terraform.tfvars contains sensitive data. Options:

  1. Do not commit: exclude via .gitignore (default)
  2. Encrypt: with git-crypt or sops
  3. Use environment variables instead of tfvars:
    export TF_VAR_hcloud_token="xxx"
    export TF_VAR_root_password="xxx"