aurae icon indicating copy to clipboard operation
aurae copied to clipboard

Strategy for TLS certs/keys in recursive Aurae daemon

Open krisnova opened this issue 3 years ago • 4 comments

The only thing we need to start auraed in a recursive pod is the PKI material.

There are some trade offs for having the container read from the host from a security perspective.

What is our strategy for getting the cert material into the pod?

  • Mount a volume into the pod from /etc/aurae/pki?
  • Copy the cert material at runtime during RunPodSandbox() with whatever material is on disk?
  • Automatically generate new cert material and keys for each pod from the server CA?

Maybe a better question is do we want to enforce strong identity at the Pod level? If so we likely want each Pod to bring their own Server cert and keys signed by the root CA.

CC @taniwha3 who is our resident TLS expert.

taniwha3: e.g. if something is providing network services, it should have a known identity that binds it to that role

krisnova avatar Jan 28 '23 19:01 krisnova

Logs from recursive auraed running with Youki + musl in #308

2023-01-28T19:04:26.285113Z ERROR auraed: Err(Aurae requires a signed TLS certificate to run as a server, but failed to 
                    load: '/etc/aurae/pki/_signed.server.crt'. Please see https://aurae.io/certs/ for information on best 
                    practices to quickly generate one.

Caused by:
    No such file or directory (os error 2))

krisnova avatar Jan 28 '23 19:01 krisnova

Following up on #308, the examples/pod*.ts file can be used to trigger this error against the main branch.

krisnova avatar Jan 28 '23 20:01 krisnova

I'm actually running into this exact same issue with the VMs. We need a strategy for provisioning certificates for auraed instances running as PID 1 on VMs.

JeroenSoeters avatar Mar 10 '23 05:03 JeroenSoeters

cc @taniwha3 again as i believe they will have opinions or at least very useful insights.

dmah42 avatar Jun 21 '24 14:06 dmah42