I have a nextcloud instance being hosted from my home network. The URL associated with it points directly at my home’s IP. I don’t want to host the instance on a VPS because disk space is expensive. So, instead, I want to point the URL at the VPS, and then somehow route the connection to my home’s nextcloud instance without leaking my home’s ip.
How might I go about doing this? Can this be achieved with nginx?
EDIT: Actually, not leaking my home’s IP is not essential. It is acceptable if it is possible to determine the IP with some effort. What I really want is to be able to host multiple websites with my single home IP without those websites being obviously connected, and to avoid automatic bots constantly looking for vulnerabilities in my home network.
I have done this before by setting up a Wireguard VPN link between my home server and a VPS, and then running a reverse proxy (such as Caddy) on the VPS, which basically forwarded web requests to my home server. This works well for most things, although there was a definite performance hit by routing traffic through the extra hop.
By using the VPN connection, you wouldn’t even need to open a port on your home network which is a great starting point for security as well.
Thank you!
Hmm, what do you mean with this? I would need to at least open one port to route the connection to the nextcloud instance in my home network - right?
Only the host acting as the VPN “server” needs to have an open port. In my setup, I made the VPS the server and my home server a client. Thus I had no open ports on my home network, only on the VPS.