For instance how can I use my *.domain.com SSL certs and NPM to route containers to a subdomain without exposing them? The main domain is exposed.

7 points

You need a DNS service that works with Let’s encrypt

permalink
report
reply
1 point

NPM is in my post…

permalink
report
parent
reply
5 points
*

I don’t get it. Npm is a package manager. It doesn’t handle certificates.

You need a DNS service like route 53 (AWS) or similar where let’s encrypt connects via an API and creates the DNS token.

permalink
report
parent
reply
2 points

OP isn’t referring to the package manager. They’re talking about Nginx Proxy Manager

permalink
report
parent
reply
1 point

Then you’re all set, issue certs over DNS-01 challenge in NPM, and create records in your local DNS server that point to the NPM IP for each domain you want to use.

permalink
report
parent
reply
1 point
*

I do exactly this with traefik.

ie: Seafile.domain.com

Vaultwarden.local.domain.com

I followed this guide: https://youtu.be/liV3c9m_OX8

permalink
report
reply
4 points

I recommend this one instead: https://youtu.be/n1vOfdz5Nm8

Same guy, just fresh version of Traefik 😁

permalink
report
parent
reply
5 points

I have that setup, my domain is hosted by OVh and they have an API that you can use to get a wildcard certificate with.

At home I run pihole and that has some sites in as local IPs, but if you look the same site up from OVH you would get an internet IP

permalink
report
reply
16 points

Split DNS on your LAN?

Only records permitted to be access on your LAN are responded by a local DNS server. While public DNS still available for your public facing services.

Your wildcard cert will work for both situations as the browser only cares the sni matches the Url in your address bar.

permalink
report
reply
2 points

I’m using this right now but I’m switching to having all my services under one domain and blocking non internal ips. Technically someone can access your site by providing the host manually, althought it’s unlikely since they would need to know it

permalink
report
parent
reply
2 points

Would you expanding in this concern? I’m not sure I understand but I’d like to.

permalink
report
parent
reply
3 points

How we’ve done it recently:

  1. Put domain on cloudflare or another registrar that supports an API. Generate a token with the right privs.
  2. Use certbot with the cloudflare plugin, and that token, and generate whatever certs you need within that domain using the DNS01 method.

No need to have port 80 open to the world, no need for a reverse proxy, no need for NAT rules to point it to the right machine, no need to even have DNS set up for the hostname. All of that BS is removed.

The token proves your authentication and LetsEncrypt will generate the certs.

permalink
report
reply

Selfhosted

!selfhosted@lemmy.world

Create post

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!

Community stats

  • 3.6K

    Monthly active users

  • 2K

    Posts

  • 23K

    Comments