I rent a free tier oracle vm that does nothing more than tunnel traffic using GOST. Ports 80/443/25 and a control port that my homelab can connect to to establish the tunnel. No ports open at my house, public IP is the cloud VM, and the raw encrypted tcp traffic is tunneled through whatever NAT shenanigans my ISP might have and straight into Caddy within a docker (podman) network. I’m pretty happy with it and it works well!
It’s a single binary and can parse a config file or command line parameters. If I ever switch public VM providers, it’s a single binary download and a systemd service file. Switch my DNS records to the new VM and I’m completely done. And since my homelab establishes the connection to the VM’s port, I don’t have to reconfigure anything if I move buildings, switch providers, get stuck behind NAT, or can’t open ports.






Not sure if this is meant to be sarcastic, but I’m not particularly smart on this matter, just persistent in trying to get things to work. I used to use rathole but came around to GOST as a replacement for several reasons. I don’t think Pangolin was around yet when I made the switch.