4 Ways to Access Your Home Assistant Server Remotely
It’s easy to recommend Home Assistant to anyone who wants a powerful and versatile smart home, but in its default state, the platform operates wholly offline. For many, this is a feature since it means there’s no reliance on the cloud.
But what if you want to access your Home Assistant dashboard while you’re away from home? Thankfully, you’ve got options.
Home Assistant Cloud Makes It Easy
By far the easiest method to add remote access to Home Assistant is to use Home Assistant Cloud, an optional $6.50 monthly subscription. The service comes with a free 31-day trial and offers a discounted annual rate of $65 (which means you get two months free for paying up-front).
The service offers remote access that integrates neatly with Home Assistant’s official apps, easy web access via a custom URL, and off-site cloud backups, all in a single package. Though there are other ways to back up Home Assistant to cloud services, this one is truly seamless. I once nuked my Home Assistant server by mistake, and not having a backup meant starting over from scratch.
The service also includes better integration with Google Assistant and Amazon Alexa, plus access to the project’s private voice processing service Assist. It’s also worth noting that the money you pay helps to financially support the Home Assistant project, funding future development and helping you feel warm and fuzzy by supporting a free and open source project.
Setup is a breeze, simply access your Home Assistant dashboard, then head to Settings > Home Assistant Cloud and click the “Start your free 1-month trial” button to get started. Once you’ve signed up, head back to this screen and ensure the “Remote access” toggle is on. You can now access your smart home anywhere using the custom URL or official iOS and Android apps.
Use a VPN Tunnel
Outside of paying for a Home Assistant Cloud subscription, there are a few other options for accessing your Home Assistant server. One is to use a secure virtual private network (VPN) “tunnel” to bridge the gap between your home and remote connections. By going this route, you’ll be able to access Home Assistant as if you were on the same network.
The upside to this method is that you can do it for free, it’s highly secure thanks to end-to-end encryption, and you have the option of using your own domain name if you want. The bad news is that setup is far more involved, and there’s no single way to accomplish this since there are different VPNs you can use.
You’ll also need to configure things yourself, which can seem a little daunting given the technical nature of setting up a VPN. The good news is that there are guides out there to help you, which you should be able to follow along if you have already set up Home Assistant by yourself. There are a few VPN solutions that the Home Assistant community seems to recommend time and time again, and those are Tailscale, ZeroTier, and WireGuard.
The good news is that all of these can be installed from within Home Assistant as add-ons, which differ from integrations in that they are applications that run alongside Home Assistant (rather than within it). You’ll find both listed under Settings > Add-ons > Add-on store.
Tailscale is relatively simple, billing itself as a “zero config VPN” that claims that you only need to validate authentication to get things working. You’ll need a free Tailscale account in order to use it, which means you’re technically reliant on a third party. The add-on itself has detailed documentation to get you up and running, and the Tailscale blog has even produced a video guide that you can follow along:
ZeroTier One works in much the same way as Tailscale, requiring a free ZeroTier account in order to get a network ID that you can tie to your Home Assistant server for external access. Like Tailscale, this removes the need to worry if your ISP provides you with a dynamically assigned IP address (rather than a static IP that you know won’t change). The add-on walks you through the basic setup and gets you up to speed with the basic terminology.
WireGuard is different in that you don’t need to register for an account, but you’ll need to complete a few extra steps, like setting up an external access URL via a service like DuckDNS, forwarding a port on your router, and exposing the WireGuard directory in order to pair devices. There are detailed instructions on the add-on’s “Documentation” tab that should help you complete the setup.
Set Up Port Forwarding and Dynamic DNS
A VPN is good because it encrypts traffic end to end, and solutions like Tailscale and ZeroTier One even take care of external access domains for you. If this seems like a lot of work, you could simply expose your Home Assistant server to the internet by forwarding the port used by your server on your router (by default, this is 8123).
So if you usually access Home Assistant by heading to http://homeassistant.local:8123, once set up, you’ll be able to access your Home Assistant setup remotely from any internet-connected browser by visiting http:// :8123, where is the address assigned to your network by your service provider.
There are a few issues with this approach. The first is security, since there’s no VPN in use to encrypt traffic. The second is that many ISPs don’t provide static IP addresses, but rather dynamically assign them. This means that your home IP address could change at any time, which would render your Home Assistant server inaccessible.
Thankfully, you can solve these issues by enabling TLS encryption using an add-on like Let’s Encrypt. Use of this service requires that you set up DuckDNS so that you have “ownership” over the domain for which Let’s Encrypt will issue a valid security certificate. That’s good, because a dynamic DNS provider like DuckDNS is also necessary for managing a dynamically changing IP address.
To get started, you’ll need to figure out how to forward ports on your router (which is simple, as long as you have admin access). You’re then strongly encouraged to install the Let’s Encrypt and DuckDNS add-ons under Settings > Add-ons > Add-on store and follow the instructions for setting up each.
Eventually, you’ll get a simple and easy-to-remember domain like http://your-server-name.duckdns.org:8123 that you can use to access your Home Assistant server from anywhere.
Sidestep Home Assistant with Apple Home
The three methods outlined above will give you full access to your Home Assistant dashboard. You’ll be able to manage your entire smart home setup, from turning lights on and checking sensors, to installing integrations, building automations, and making changes to your server’s core configuration. It’s proper remote access.
It also requires a subscription or additional setup that not everyone is going to love. But there is an alternative if you use Apple Home alongside Home Assistant, with a hub device like a HomePod or Apple TV 4K (fourth-generation). By exposing your Home Assistant devices to Apple Home using the HomeKit Bridge integration, you can control your devices within the Apple Home app.
Since Apple Home already includes remote access, you can use this trick to control and access your smart home from anywhere you have access to a device that’s logged in to your Apple Account. This means any iPhone, iPad, or Mac that runs the Home app (but doesn’t include the web or access from non-Apple devices).
To be clear: you’re not managing your Home Assistant setup remotely, you’re merely interacting with it by using Apple Home as a bridge. You won’t get access to your Home Assistant dashboard, so you can’t make changes to your setup. That said, you can expose all manner of items to Apple Home, including switches and lights, sensors, media players, and even toggle things like automations you’ve created within Home Assistant (handy if you have an alarm system automation).
I can vouch for this approach since I use it myself, and it’s one of the main reasons I use Home Assistant as the backbone of my smart home setup. It works for me since I don’t need admin access to my smart home whenever I’m away, it’s just nice to keep an eye on things from a comfortable interface. It also works for other household members who have access to your Apple Home.
Home Assistant is a smart home platform that, for the vast majority of integrations, doesn’t require access to the internet. Its strength lies in its ability to function entirely offline, which means that essential automations and basic access keep working as intended even if your internet connection dies.
With that in mind, there are some valid reasons you might want remote access. For most people, Home Assistant Cloud offers the path of least resistance, and the inclusion of off-site cloud backup adds significant value for only $65 per year. If you use an Apple smart home alongside Home Assistant, remote access should “just work” from the relevant app.
Outside of this, setting up Tailscale or ZeroTier One shouldn’t cause too many headaches. Above all, avoid the cardinal sin of opening a port on your router without securing your server and calling it a day.

