I’ve been a Software Engineering Student for 2 years now. I understand networks and whatnot at a theoretical level to some degree.

I’ve developed applications and hosted them through docker on Google Cloud for school projects.

I’ve tinkered with my router, port forwarded video game servers and hosted Discord bots for a few years (familiar with Websockets and IP/NAT/WAN and whatnot)

Yet I’ve been trying to improve my setup now that my old laptop has become my homelab and everything I try to do is so daunting.

Reverse proxy, VPN, Cloudfare bullshit, and so many more things get thrown around so much in this sub and other resources, yet I can barely find info on HOW to set up this things. Most blogs and articles I find are about what they are which I already know. And the few that actually explain how to set it up are just throwing so many more concepts at me that I can’t keep up.

Why is self-hosting so daunting? I feel like even though I understand how many of these things work I can’t get anything actually running!

  • elingenieroB
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    You don’t have to do it, 99.9999%^([citation needed]) of the population don’t. If it doesn’t interest or excite you then it’s not worth it.

  • FuriousRageSEB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Most blogs and articles I find are about what they are which I already know.

    Exactly… I neither want “what z is” nor all the history behind z, the Z inventors life, his grand parents lives etc. I just want a solution to the problem im having…

    • Ieris19OPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Honestly, I get they’re trying to be educational for beginners way more clueless than me. But after two years of an IT degree I know some stuff, and the sheer amount of internet text I’ve read just to find absolutely nothing new and no solution even though the title is exactly my problem is unreal

  • offspec@lemmy.nicknakin.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    For VPN home labbing you should check out wireguard, it’s stupid simple and very powerful. Reverse proxy stuff I handle through nginx, mostly because I’m using it for web hosting anyways and I’m comfortable with the workflow. I don’t bother with cloudflare much because I host a jellyfin instance and I believe that’s against their TOS, but just take it one step at a time and you’ll figure it out in no time.

    • offspec@lemmy.nicknakin.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Also I can’t stress enough the ease of use of docker compose files for managing and quickly spinning up new apps.

  • Woke_killaB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I implement everything with the help of chatgpt without problems. Of course, as the service on github has a lot of issues I skip it.

  • Qxt78B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    As with everything in life you need to crawl before you run. And as someone mentioned before skills issue. You can assume most people who self host are Linux engineers / Devops engineers. So they do these kind of setups daily. This is why these channels exist. So we can assist or guide. So you can learn as well.

  • d-centB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I am right there with you. I am a Mechanical Engineer and if we tried putting out a product with the limited documentation that these come out with, we would be taken off the project. ME projects have documentation meant to guide a 10 year old through the process and details. The documentation would fill a 3" 3ring binder.

    Yet these network products are released with 1 page of upper level description of the product. Yeah I already know what the product already does, that’s why I got it, how about the actual documentation?

  • PTwolfyB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I feel like Self-hosting is like playing the game of life on the hardest mode possible.

    The easiest is always to pay for services or let others have the responsibility. That’s the Easy Mode.

    When Self-hosting, mind blowing fucked up things will happen, your head will sometimes explode because you will doubt everything you learned, things that always worked will stop working for no apparent logical reason.

    Maybe you’ll understand that some data was corrupted, maybe you backed your servers up, maybe you didn’t, maybe you can recover data, maybe you can’t.

    Sometimes you will feel amazing for your achievements, sometimes things just stop working even for things you won’t control. ( Energy and Internet Suppliers ).

    Most people even with high curriculum and studies opt for the easy mode. And that’s okay.

    Others enjoy the struggle and the amount of knowledge that comes with that.

    Choose your path, and stick with it.

    Pros of Self-hosting: self enlightenment, joy of achieving great things, freedom, saving money, power.

    Cons of Self-hosting: Time consuming, stress, dangerous if not done with responsibility, requires patience and perseverance, may be actually more expensive on your personal and professional time, if your time can be indeed valuable. You may be able to actually sell more, or be more profitable if you don’t lose time thinking about the hosting itself.

  • RealestasteB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Enjoy it man! All your problems can be solved with enough effort. THis is the best part, the part where you are forced to learn a bunch of new stuff to move up in your skills :)

    Best of luck! I love this shit!

  • lestrenchedB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Do you have a purpose to host whatever you happened to name here?

    There is a reason to host reverse-proxies, however, one can do without them in a self-hosted environments. First, one needs to understand the point behind reverse-proxies (this is an example btw, you might very well know the how and why behind them), and only then would the instructions to set it up start to make sense.

    • Ieris19OPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I don’t have a need but I do have a goal for the things I want to setup.

      I got downvoted to oblivion for saying I didn’t even find what kind of software I could use to make an internal authoritative DNS service for example, where I want to create a custom internal TLD for my VPN.

      But apparently people took offense I’d never heard of bind and assumed PiHole was proprietary…

      • lestrenchedB
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        assumed PiHole was proprietary

        Did it look proprietary on their website?

        Personally, I wouldn’t even run bind in my homelab. I don’t see the point. dnsmasq is good enough for me. But if you’d like to run it, go ahead!

        Creating a new TLD for a VPN with an authoritative DNS for your local network isn’t the hardest thing, I’m sure you’ll find documentation on how to do so BIND’s website. If you don’t understand something just ask your search engine or ChatGPT/Bing (do not rely on LLMs for factual information, but they’re good at summarising information, from Wikipedia for example). Maybe get in the habit to RTFM, it does help.

        BTW here’s a good list of internal TLDs one might want to use: https://serverfault.com/questions/17255/top-level-domain-domain-suffix-for-private-network

  • junialterB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I strongly suggest to not only read articles on the internet but get decent books and read them carefully. It will fill in plenty of gaps you have now and in a blink of an eye self-hosting will become a smooth and fun experience.

    I have been self hosting for like 20 years and I must say it has never been easier to bring up a service and make it secure as well.

    Good network understanding is key, forget about IPv4 it’s dead. If you engineer new stuff, concentrate on IPv6. Also a good book or two about Linux, it’s the platform to go for the next decade. If you’re still hungry dive into containers and container orchestration.

    Most importantly, keep experimenting. I’d say 80%+ of my empirical data comes from my own experience.

    • Ieris19OPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I’ve always struggled to find good books. And as a broke student in college, the ones I find are either too expensive or unavailable in my region.

      It’s also highly illegal and actually prosecuted to do piracy where I live, so I don’t want to do that…

  • -SHINSTER007B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    just chip away at it, I’m slowly learning SWAG/reverse proxy. Its complicated for me but its rewarding and eventually becomes easy. Such is the way with linux from my experience

  • kitanokikoriB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    If you don’t want to deal with these things and it’s just you or maybe a few others, here’s the easy way:

    • Define the services for each host (i.e. physical + virtual machine) in a single Docker Compose file. You can even put all of these docker-compose files in a single Git repo

    • Install Tailscale on all your machines - this is really easy and will let you securely access everything without having to forward ports or worry about the attack surface of the public web

    • Set up something like Heimdall or https://github.com/tailscale/golink to have easy to use shortcuts for your services

    This gets you out of SSO signin, certificates, reverse proxy setups, all the things that are (understandably!) complex and annoying to set up

  • PovilasIDB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I got hooked by Youtube videos from TechnoTim Christian Lempa and others. Videos include screen capture what they are doing so it bridges some things that may be missing from text guide because it may be ‘obvious’ if you are doing it all the time.

    I keep to principal that I have two ‘sections’ in my lab ‘production’ and ‘testing’ Testing I am mucking about testing stuff it works and production has some stuff that I rely on.

  • TropaiaB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Well, I can somehow understand you, but I didn’t have so many problems until now. Especially reverse proxy is in my opinion pretty well documented. I got everything running what I wanted, except LDAP. I can’t seem to understand this shit and there aren’t any good guides either :D.