Tailscale is nice, you don't even need to open any ports to have your device accessible from anywhere. Works really great, literally (!) takes >10 min to set up (on mobile, dl app, log in with 3rd party identity provider (I choose GitHub), on Server, curl some script (will move to apt or yay or dnf when it detects them), click a link, boom both devices can find each other on unique IP addresses.)
I do open ports, for NextCloud (to be able share stuff) and some websites. But Home Assistant is only accessible from the Tailnet for example, as are my ssh servers.