posted in Selfhosted

Issues setting my first Home lab as a total total beginner (no programming, coding, etc. related knowledge)

For context: I have 0 programming, coding, etc. related knowledge.

For some months I’ve been dedicating time into setting up a Homelab that hosts music, movies, maybe home security (Frigate, I suppose), minecraft servers (or maybe other games too) and maaaaybe local AIs (if I get a better system), in that order, from more to less important. Some of the caractheristics that I prioritize are: privacy first, Zero third-party exposure, disk data encryption, self-hosting, FOSS priority perspective, trying not to compromise in any way my home network-using devices through all the process. Since, as I said, I have 0 programing or even Linux experience, I’ve done all this process guided by a local ran AI (Qwen 3.6), YouTube videos and forums (not the perfect formula for a cybersecurity safe environment, I know).

In an old laptop (Acer Aspire ES15-… with AMD A6-6310 / 16GB RAM) I’ve installed Linux Debian Trixie 13 (GNOME) with Docker and CasaOS with Jellyfin (for movies, it worked), Navidrome (for music, also worked) and recently Netbird, this one to connect into the local network from outside my home net, which kinda worked, but not as I expected it to work.

And this is where I feel I’m stuck. My main absolute priority the whole time setting this all up was being able to stream music from my homelab in my phone from everywhere in the world as long as I had internet connection, but when I managed to achieve that connection after soooo many hours and even stream music from my phone only with mobile data, it needed like 1 minute to load 3 seconds of a song, so it’s not enough at all. After seeing this, I’ve reseted all netbird data so I can do a clean install.

I need help with the process of setting this (I believe it’s a VPN) up in a way that it is Self-hosted, secure and fast enough so I can make it all achieve my expectations. Any video, forum thread or personal recomendation that you can give me will be so much appreciated.

Summarizing it a little, this is what I was trying to achieve:

CasaOS Architecture: Netbird (FOSS WireGuard mesh) + (maybe) Caddy Reverse Proxy + (maybe) Internal PKI + (maybe) LUKS Encryption Security Model: Zero port forwarding, outbound-only private tunnels, device-by-device approval, end-to-end HTTPS, full data-at-rest encryption.

Let me know if I’m missing any important information and I will do my best to share it.

Thank you so so much in advance!!

Replying to @⁨Well1@lemmy.world⁩

Maybe a really stupid question these days but…what upload speed do you have? Depending on the encoding of the music (e.g. FLAC) it might just be too much for your internet connection 😅

It would help to know how you setup the Netbird ports to be available on the internet too.

You could - for debugging - use the Netbird SaaS server (I believe there’s a free tier and Netbird being a German startup, I would at least assume, data privacy for the debugging shouldn’t be a big concern 😅 Germans don’t tell their granny their own name if they’re not legally allowed to 😂).

Replying to @⁨icb4dc0de@programming.dev⁩

Yesterday I checked and the best I got was: “Ping: 152.186 ms Download: 9.35 Mbit/s Upload: 18.69 Mbit/s”

It’s weird because with this connection (that seems to me it is heavily slow) I can easily stream FLAC files, some of them with sizes like 140.000 KB instantly, even faster than the music streaming apps I have used for quite some time (Spotify and now Tidal). All this obviously when being inside my home network, no VPNs.

When you say “use the Netbird SaaS server” I understand you are suggesting I try using NetBird servers instead of using my own selfhosted NetBird system to see if there’s any difference, am I right?

Thanks!! :D

Replying to @⁨Well1@lemmy.world⁩

Generally speaking, ~19Mbit/s should be enough for a FLAC stream. But as the mathematicians like to joke “assuming, chickens are spherical and live in a vacuum” 😅😂 as others mentioned, there’s likely much more going on than only this upload so the upload / download rates might be an issue.

I would try to eliminate possible issues by isolating them as good as possible and then verifying if they are actually a problem or not.

That could mean:

  • try to verify the speed between some outside device and your Netbird instance without any music streaming, buffering, … involved. For instance download the same FLAC file 10 times to your outside device, measure the rates and do this at a time where as few as possible devices / other people are active, if possible, store FLAC file somewhere on the Netbird server, to really be sure it’s not something else
  • try to measure the speed between your Netbird and your Jellyfin instance as good as possible, again, ideally without any streaming involved but any kind of simple download would be best and again, best at a time with low traffic
  • then possibly measure speeds between external device and Jellyfin with some downloads

If the speeds look alright you’d have to check for protocol issues, STUN problems, Wireguard issues, port forwarding limitations (?) we’d need some more details for better advice here.

And yes, I meant trying the official Netbird servers instead your local one. Same idea, basically, if everything works fine with their server, it might be some weird problem between your external device and your Netbird server for instance 🤷‍♂️

Let us know how it goes and have fun 😁

en