I have been hosting a few websites from my home server and it has taught me a lot. I have recently had major issues with the electrical storms, Kogan NBN support (Australia), and the NBN network in general. I know 4g is not fast, but I would like to use it so that in the event of a network outage, im not at the mercy of NBN. On to the question!

I run pfsense in hyper v with a 4 port nic which passes through those ports to pfsense.

I realized that 4g ip addresses are not public, which stops me from hosting the websites.

Reading into wireguard and vpn services my plan is to: Set up a VPS ✅ Set up wireguard on the VPS ✅ Create a wireguard connection on my windows server, and pass that in as an interface to pfsense, so that hopefully, I wont need to change to much on my internal infrastructure.

Does this sound like an OK plan? I’m open to any other ideas where I can achieve the following:

web app >> nginx >> pfsense >> vpn tunnel >> VPS with Public IP (can be dynamic)

Thanks!

  • sgh@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Have you looked into Cloudflare Tunnel? It’s a turnkey solution that does exactly what you want. No idea what the cost is though.

  • nis@feddit.dk
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    I’m using Headscale for something similar. I have a VPS and a server at home. Both are on the same Headscale network. On the home server I set up a Matrix server. On the VPS I set up Caddy as a reverse proxy for the home server with its Headscale IP. It works nicely.

    I’m not on 4G, though.

  • RedFox@infosec.pub
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    You’re on the right track. As long as wiregurd on the VPS will allow an incoming connection from you home 4g, which will probably be CGNAT, it’ll work. Did you look into running the NGINX reverse on the VPS? I like terminating external stuff on cloud side, then only bring filtered or desired traffic over the tunnel.

  • forwardvoid@feddit.nl
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    If you’re hosting websites and not applications, perhaps you can use SSGs like Hugo/Gatsby. You could deploy your site in a bucket and put cloudflare in front. They can also be used on your own server of course. If you are hosting applications and want to keep them on 4g, you could put a CDN (CloudFlare or …) in frint of it. That would cache all static resources and greatly improve response times.

  • forwardvoid@feddit.nl
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    If you’re hosting websites and not applications, perhaps you can use SSGs like Hugo/Gatsby. You could deploy your site in a bucket and put cloudflare in front. They can also be used on your own server of course. If you are hosting applications and want to keep them on 4g, you could put a CDN (CloudFlare or …) in frint of it. That would cache all static resources and greatly improve response times.