# Reverse-proxy the three sibling admin UIs. Drop into your nginx sites (or the # nginx-panel app) and reload. Assumes the compose publishes each service on # 127.0.0.1:. Add TLS (certbot / your existing cert block) per server. # # NOTE: hexis. previously pointed at the MCP tool — repoint that # elsewhere first (the app now owns hexis.*). # # 10.42.0.1 and 192.168.1.104 below are THIS BOX's WireGuard and LAN # addresses (homesrv) — these admin UIs have no auth of their own, so the # explicit bind + allow/deny below is what keeps them off the open internet. # On a different box, replace both addresses with that box's wg and LAN IPs. # Do NOT "fix" a failed bind by reverting to `listen 80` (all interfaces) — # that removes the only access control these containers have. server { listen 10.42.0.1:80; listen 192.168.1.104:80; server_name nexus.kvmx.ru; allow 10.42.0.0/24; allow 192.168.1.0/24; deny all; location / { proxy_pass http://127.0.0.1:9740; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } server { listen 10.42.0.1:80; listen 192.168.1.104:80; server_name praxis.kvmx.ru; allow 10.42.0.0/24; allow 192.168.1.0/24; deny all; location / { proxy_pass http://127.0.0.1:8989; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } server { listen 10.42.0.1:80; listen 192.168.1.104:80; server_name hexis.kvmx.ru; allow 10.42.0.0/24; allow 192.168.1.0/24; deny all; location / { proxy_pass http://127.0.0.1:9741; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }