this post was submitted on 06 Oct 2024
50 points (98.1% liked)

Selfhosted

40183 readers
1133 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

How do you manage the distribution of internal TLS network certificates? I'm using cert-manager to generate them, but the root self-signed certificate expires monthly which makes distribution to devices outside of K8s a challenge. It's a PITA to keep doing this for the tablet, laptop and phones. I can bump the root cert to a year, but I'm concerned that the date will sneak up on me. Are there any automated solutions?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 6 points 1 month ago (2 children)

I looked into this recently.

There's a DNS challenge designed for this exact scenario called (from memory) DNS01, but it's more of a faff than I'm willing to get involved with.

Basically you push proof that you own the domain into a DNS record instead of to a file on a web server. It requires a DNS provider that has an API and a client that speaks that API.

It also leaks private DNS stuff into the public domain.

I'd love it if someone devised an easier way. Maybe there is an easier way?

[–] [email protected] 6 points 1 month ago (2 children)

I do the dns challenge with letsencrypt too but to not leak local dns names into the public I just run a pihole locally that can resolve those domains

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago) (1 children)

The DNS server is only one thing you tell the domain, the other is the certificate authority. And those publish all issued certificates as part of certificate transparency. https://en.m.wikipedia.org/wiki/Certificate_Transparency

To mitigate the amount of published information, you can request wildcard certs to keep the subdomains private.

You can also use a wildcard cname entry to capture all subdomains and leave out the pihole faff, given that you use a reverse proxy that forwards to respective services by subdomain.

[–] [email protected] 1 points 1 month ago

Yep I also run wildcard domains for simplicity

[–] [email protected] 1 points 1 month ago

This is the way.

[–] [email protected] 1 points 1 month ago

This is me.

In public dns, configure *.home.example.com as an A record pointing to the local IP for my traefik container.

Traefik then manages all certificates. It sets a TXT record with my dns providers API like privatesercice.home.lebowheatcroft.com, requests the cert from letsencrypt, then deletes that TXT record.

Yes the local IP of my server is leaked, but names of services are not.