this post was submitted on 07 Sep 2024
79 points (80.2% liked)

Selfhosted

40218 readers
1130 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
 

This is a decent writeup on applying "Zero Tust" principles to a home lab using mostly open source tools. I'm not the author, but thought it was worth sharing.

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

Zero trust, but you have to use Amazon AWS, Cloudflare, and make your own Telegram bot? And have the domain itself managed by Cloudflare.

Sounds like a lot of trust right there... Would love to be proven wrong.

[–] [email protected] 64 points 2 months ago* (last edited 2 months ago) (1 children)

ZeroTrust is a specific type of network security where every network device has its access to other devices validated and controlled, not a statement on the trustworthiness of vendors.

Instead of every device on a LAN seeing every other device, or even every device on a VLAN seeing other devices on a VLAN, each device can only connect with the other devices it needs to work, and those connections need to be encrypted. These connectioms are all monitored, logged and alerted on to make sure the system is working as intended.

You do need to trust or validate the tooling that does the above, regardless of what you're using.

[–] [email protected] 3 points 2 months ago (1 children)

That sounds awfully complicated for home use.

[–] [email protected] 2 points 2 months ago* (last edited 2 months ago)

Yes and no. The auditing is likely the harder part. You can use something like tailscale or nebula vpn to get the always on vpn/ACLs. With a dozen or two devices, it should be doable at a home scale.

If you want clientless zerotrust then you're talking heavier duty things like Palo alto gear and the like.

[–] [email protected] 8 points 2 months ago (1 children)

I've been researching zero-trust for my homelab recently and I'm considering OpenZiti instead of Cloudflare since I think it can all be self-hosted. The BrowZer from OpenZiti is especially interesting to me. The fact that I'm behind CGNAT is a hurdle though.

[–] [email protected] 2 points 2 months ago

I haven't looked terribly far into it but zrok (SP?) is based on openziti

[–] [email protected] 3 points 2 months ago

You can trust zero of it. Is that not the same?

[–] [email protected] 2 points 2 months ago* (last edited 2 months ago)

Yeah, I practice some ZeroTrust principles w/o using any of the above. I use Docker networks to associate services and their data and restrict them from accessing services/data they don't need. I use HAProxy at the edge to route requests to specific nodes in my network, and all of that operates over my own WireGuard VPN. I'm working on creating VLANs for my network to further segment things, so I can dictate which devices can access which resources. For continuous monitoring and alerting, any separate device connected to my VPN would work (haven't yet configured that); I personally don't bother because my SO/kids will tell me if something they use goes down, and knowing a few minutes earlier wouldn't matter.

You really don't need AWS, Cloudflare, or Telegram for any of this. That said, it is interesting to read through when crafting your own solution, if only to check which parts you have and what parts you may have forgotten.