Securely hosting admin panels

Hey, I just want to ask, how are admin panels hosted in production? I have no real company experience because I am too young (sadly 😦 ). Let's take for example admin tools like grafana (or even prometheus), portainer, custom admin websites, how developers access them once they are on prod? I've read quite a bit about techniques to do that, but I'm left confused. SSH tunneling doesn't sound good considering I'd want to host dev k8s (docker compose) locally and SSH would bind local ports. Domains don't sound cool neither - everyone could know what tools we host if it was grafana.example.com etc. VPNs - I don't know what's bad about them, but people seem to not enjoy them (I think because one credential would leak entire host).
Also what if I'd want to access prod database? Or that's a bad idea and I shouldn't expose database in any scenario?
Oh and I'm not using AWS, GCP or any of the clouds, rather on-premise VPS server 🙂

I've asked same question on official Go server, but after some talking they redirected me here.
Was this page helpful?