I’m running my own HA locally, in my house, but I would like to be able to access it also when I’m not home. So I’ve put it on my Zerotier One VPN, which works fine. Except for two things:

  1. HA no longer knows when I’m home - it thinks I’m always home;

  2. Other people in my household would also like to have remote access, but it’s unrealistic to have them install and use the VPN.

So - can I just open it up, and rely on long, complex passeords? Or is that a complete no-go?

  • Decq@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 days ago

    I’ve got it accessible from the internet through a reverse proxy… My default https drops all connections, so you need to access the right subdomain, which are not advertised on dns or certificates (I use a wildcard). Probably not perfect though but it helps a bit. I also have geo-blocking enabled on my pfSense router, so basically everything outside my country gets blocked by the firewall anyway.

    It will always be a risk vs benefit consideration.

  • Lka1988@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 day ago

    My HA instance is publicly accessible (with 2FA) through Nabu Casa’s cloud service. Happily paying the subscription price of a whole $7/mo for that feature and to support them.

    I can quickly switch it to my own reverse proxy if necessary.

  • tofu@lemmy.nocturnal.garden
    link
    fedilink
    English
    arrow-up
    21
    arrow-down
    1
    ·
    3 days ago

    It’s generally fine to open it up, if your somewhat know what you’re doing. I wouldn’t do it without some protection measures like fail2ban and making sure HA is always up to date.

    Nabu Casa, the manufacturer of HA, has a paid option where they take care of publicly accessing your local HA instance. I think that’s a good solution as well. It includes backups on their servers.

    • ropatrick@lemmy.world
      link
      fedilink
      English
      arrow-up
      17
      arrow-down
      1
      ·
      3 days ago

      Nabu Casa is the way. Built by Home Assistant for Home Assistant, and utterly seamless and reliable (in my experience).

      Most importantly it supports the developers who have created this amazing piece if software! Do it! 👍🏼🙏🏼

  • QueenMidna@lemmy.ca
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 days ago

    Why not a presence sensor of and kind? Check your router’s WiFi client list for your phone MAC or something

  • dislabled@lemmy.ml
    link
    fedilink
    English
    arrow-up
    12
    ·
    3 days ago

    I don’t really see why you shouldn’t… I have mine behind a reverse proxy, which puts SSL on the public endpoint. The biggest “issue” today, is the isp rotating my ipv4 address to often.

      • dislabled@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 days ago

        My ISP only have static ipv4 available for businesses. The price increase is quite a lot. I have been experimenting with ipv6, though I will loose connection when I am at someone else’s WiFi with no ipv6… It’s there as a fallback for now.

        • batshit@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          2 days ago

          That kind of blows, I’m blessed with an ISP who doesn’t discriminate against power users and I get it gor relatively cheap (~$15 per month)

      • dislabled@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 days ago

        Yeah, I just made a quick script that queries my public IP every 5 minutes, then changes the a-records via the registrar’s API, if it detects a change.

          • dislabled@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            1 day ago

            Yeah I know, i have turned down 2 potential ISPs already, because they use cgnat. Too bad, because they are cheaper. Just wish ipv6 would really catch on soon.

  • hendrik@palaver.p3x.de
    link
    fedilink
    English
    arrow-up
    7
    ·
    3 days ago

    Mine is open to the internet, via a nginx reverse proxy. I made it ban people who try to brute-force my password. It’s been fine like that for years now:

    http:  
      trusted_proxies:  
        - w.x.y.z  
      use_x_forwarded_for: true  
      ip_ban_enabled: true  
      login_attempts_threshold: 10  
    
  • CameronDev@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    3 days ago

    Mine is on the internet. The real risk is a zero day auth bypass, password cracking won’t really work when the HA interface sends notifications on authentication failures.

  • Archer@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    3 days ago

    What I personally do is have it accessible over WireGuard. Open TCP ports to the Internet is a bad idea. This does mean you have to launch WireGuard every time, but it’s way more secure

  • JustEnoughDucks@slrpnk.net
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 days ago

    If you are hosting other things with it, then a reverse proxy like Caddy or Traefik + crowdsec is pretty much as good as you are going to get and you can add region blocking on your router (if that feature is available) or if you use cloudflare as a proxy.

    If you want to go really crazy, you can put authelia/Authentik in front of it, depending on what else you host.

  • spaghettiwestern@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    2 days ago

    So - can I just open it up, and rely on long, complex passeords? Or is that a complete no-go?

    Install Fail2Ban on a free cloud VM and watch it for a couple of days. Seeing the never-ending intrusion attempts from around the world was a real eye-opener. There is no way I’d expose HA (or anything else except Wireguard) to the Internet. (Open WG ports appear closed unless they receive the correct key.)

    In your situation I’d just pay for Home Assistant Cloud. It’s not expensive and will do exactly what you want to do.

    For a zero cost solution I use Tasker to automatically enable a Wireguard tunnel whenever we’re not on home wifi. It allows direct access to everything on our local lan, and as a bonus prevents our wireless carrier from monitoring our Internet activities. A combination of the OpenWRT Ubus integration and a BLE integration (using inexpensive Shelly switch modules) detect when we’re home with 100% accuracy.

  • SkunkWorkz@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    2
    ·
    2 days ago

    I just use a Cloudflare tunnel using the Cloudflared plugin and a custom domain name. So no need to open ports. I use long passwords for the users. Not sure how unsafe it is but in HA you get a notification when a failed login happened.