Comment on Reverse proxy

lemmyvore@feddit.nl ⁨6⁩ ⁨months⁩ ago

I should also add something that lots of beginners miss.

The reverse proxy does not care what the domains that you define in it actually resolve to. It receives the domain name as a HTTP header which is completely at the whim of the client. As long as that domain name matches one of the domains defined in the proxy, it’s all good.

You can successfully connect to a proxy with a domain name defined in the domain owner’s DNS, or you can make up your own DNS that says whatever you want, or you can define any domain->IP association you want in your hosts file, or you can simply use curl or wget to connect directly to the proxy IP and lie about the domain in the HTTP headers without having it resolve in any DNS.

This means that yes, the proxy will happily serve your “private” *.local.example.com services to someone connecting from outside your LAN. All they have to do is figure out (or guess) your subdomain names. You need to add IP restrictions in the proxy (default deny from all + lan ip mask explicit exception) if you really want those services to be restricted to the LAN.

DNS is not security, it’s a public service that maps domains to IPs.

TLS is only security in the sense it protects the connection en route from eavesdropping, but it doesn’t restrict access.

source
Sort:hotnewtop