Hi, this is my first post on this subreddit. I’ve been self-hosting various applications (Syncthing, Pi-hole, Navidrome, Jellyfin, Actual…) for almost two years now, and I want to take a step forward by accessing my resources from the public Internet.

I’ve been researching for one year about topics like port forwarding, reverse proxying, setting up VPN, and moving to a VPS; and I recently started trying Microsoft Azure’s Standard B1s VM. However, I can’t devise an acceptable and satisfactory solution.

These are some of my concerns:

  • I don’t want to apply for static IP and port forward from my router to my modem to the public Internet.
  • I need a sustainable solution since most VPS providers are too pricey for me.

I’m open to every type of suggestion; you can criticize my concerns, too :)

  • NRoach44@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The typical way involves something outside your network acting as a proxy. Your home network VPNs to this proxy, then the proxy sends requests down to your homelab.

    I used a VPS and a VPN, I would connect to the VPN endpoint on the VPS, and then route all traffic back down to home.

    You can also run a reverse proxy on the VPS, so it does TLS for clients, and speaks to the servers direct over the VPN.

    Another option is things like Cloudflare tunnels, which means cloudflare does the “VPS and VPN” part of the above, but the tradeoff is that your have to trust cloudflare, rather than yourself (may be a positive or not depending on your perspective).

    Lastly you could use something like tinc (which needs something on the outside to act as a negotiator) to form a mesh between NAT’d devices.