In order to access your Hass.io instance from outside of your network, you will need to enable remote access. This is also a prerequisite for enabling the Google Home integration. More information is available on the Home Assistant website at this link.
If you haven’t already seen my initial Hassio setup guide, please visit this link.
Step 1 – Install DuckDNS
You will need to install the DuckDNS addon with Let’s Encrypt support to obtain a valid SSL certificate and domain name for encrypted traffic. From within Home Assistant, click on the Hass.io page on the left hand side navigation menu and click on the add-on store.
Find DuckDNS and click install.
Step 2 – Create a token and domain name
Click through to DuckDNS website and select a domain name and generate a token
Step 3 – Update the configuration in the DuckDNS addon
Copy the token and domain name generated and update the configuration in the DuckDNS addon. These details should match exactly as was generated in Step 2. Make sure you have changed the accept_terms to ‘true’.
Example Configuration
{
“lets_encrypt”: {
“accept_terms”: true,
“certfile”: “fullchain.pem”,
“keyfile”: “privkey.pem”
},
“token”: “xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,
“domains”: [
“xxxxxxxx.duckdns.org”
],
“seconds”: 300
}
Step 4 – Update the configuration in the configuration.yaml file
Within the configuration.yaml file, uncomment the http: section and add in the details per the example below:
Example configuration
http:
base_url: https://xxxxxxxxxx.duckdns.org:8123
ssl_certificate: /ssl/fullchain.pem
ssl_key: /ssl/privkey.pem
Step 5 – Forward Port 8123 to Home Assistant
Within your router, you will need to forward port 8123 to your home assistant IP. If you haven’t already made your Home Assistant to have a static IP address, check my initial video for details on how to upload the network configuration via a USB memory stick.
Step 6 – Restart the device
Restart your Home Assistant by going to Configuration > General > Restart.
Step 6 – Connect via the external address
Your Home Assistant instance should now be accessible from the external domain specified in the previous steps. e.g. https://xxxxxxx.duckdns.org:8123