diff --git a/atom.xml b/atom.xml index 3cd2b2ce8f..52d5ef41c0 100644 --- a/atom.xml +++ b/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/community/atom.xml b/blog/categories/community/atom.xml index 256d423204..4a2eca8065 100644 --- a/blog/categories/community/atom.xml +++ b/blog/categories/community/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Community | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/device-tracking/atom.xml b/blog/categories/device-tracking/atom.xml index d69489ebac..b9a4e79f36 100644 --- a/blog/categories/device-tracking/atom.xml +++ b/blog/categories/device-tracking/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Device-Tracking | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/esp8266/atom.xml b/blog/categories/esp8266/atom.xml index da5421e4b0..7ecb9122c0 100644 --- a/blog/categories/esp8266/atom.xml +++ b/blog/categories/esp8266/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: ESP8266 | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/how-to/atom.xml b/blog/categories/how-to/atom.xml index 433638652e..477abe2a70 100644 --- a/blog/categories/how-to/atom.xml +++ b/blog/categories/how-to/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: How-To | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/ibeacons/atom.xml b/blog/categories/ibeacons/atom.xml index fea16c6747..a6de694f2c 100644 --- a/blog/categories/ibeacons/atom.xml +++ b/blog/categories/ibeacons/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: iBeacons | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/internet-of-things/atom.xml b/blog/categories/internet-of-things/atom.xml index 90fa55cd9a..a52541d125 100644 --- a/blog/categories/internet-of-things/atom.xml +++ b/blog/categories/internet-of-things/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Internet-of-Things | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/iot-data/atom.xml b/blog/categories/iot-data/atom.xml index 348db5c9e3..02e90a2c85 100644 --- a/blog/categories/iot-data/atom.xml +++ b/blog/categories/iot-data/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: IoT-Data | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/merchandise/atom.xml b/blog/categories/merchandise/atom.xml index 86ef62dabf..36cd4a0f21 100644 --- a/blog/categories/merchandise/atom.xml +++ b/blog/categories/merchandise/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Merchandise | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/micropython/atom.xml b/blog/categories/micropython/atom.xml index adfc7ada94..06eb247b53 100644 --- a/blog/categories/micropython/atom.xml +++ b/blog/categories/micropython/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Micropython | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/mqtt/atom.xml b/blog/categories/mqtt/atom.xml index f81c698178..a2fe5281cf 100644 --- a/blog/categories/mqtt/atom.xml +++ b/blog/categories/mqtt/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: MQTT | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/organisation/atom.xml b/blog/categories/organisation/atom.xml index 6dedd72785..6aa406e1f7 100644 --- a/blog/categories/organisation/atom.xml +++ b/blog/categories/organisation/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Organisation | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/owntracks/atom.xml b/blog/categories/owntracks/atom.xml index 9e53460a21..53c66dd870 100644 --- a/blog/categories/owntracks/atom.xml +++ b/blog/categories/owntracks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: OwnTracks | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/presence-detection/atom.xml b/blog/categories/presence-detection/atom.xml index b0b61c5910..684539096c 100644 --- a/blog/categories/presence-detection/atom.xml +++ b/blog/categories/presence-detection/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Presence-Detection | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/public-service-announcement/atom.xml b/blog/categories/public-service-announcement/atom.xml index 88c99498ec..19015c6854 100644 --- a/blog/categories/public-service-announcement/atom.xml +++ b/blog/categories/public-service-announcement/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Public-Service-Announcement | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/release-notes/atom.xml b/blog/categories/release-notes/atom.xml index 841eef87c7..f70fbe44c5 100644 --- a/blog/categories/release-notes/atom.xml +++ b/blog/categories/release-notes/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Release-Notes | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/survey/atom.xml b/blog/categories/survey/atom.xml index 8134402858..73b69f264d 100644 --- a/blog/categories/survey/atom.xml +++ b/blog/categories/survey/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Survey | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/talks/atom.xml b/blog/categories/talks/atom.xml index 575101dbb3..d9a9d95590 100644 --- a/blog/categories/talks/atom.xml +++ b/blog/categories/talks/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Talks | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/technology/atom.xml b/blog/categories/technology/atom.xml index 63de4b638d..c83229a5d0 100644 --- a/blog/categories/technology/atom.xml +++ b/blog/categories/technology/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Technology | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/user-stories/atom.xml b/blog/categories/user-stories/atom.xml index 2d4091d3de..bf5e5eb5f1 100644 --- a/blog/categories/user-stories/atom.xml +++ b/blog/categories/user-stories/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: User-Stories | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/video/atom.xml b/blog/categories/video/atom.xml index 456e8a8156..2cab7065d7 100644 --- a/blog/categories/video/atom.xml +++ b/blog/categories/video/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Video | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/blog/categories/website/atom.xml b/blog/categories/website/atom.xml index 4038ed5bec..26c43bbd9d 100644 --- a/blog/categories/website/atom.xml +++ b/blog/categories/website/atom.xml @@ -4,7 +4,7 @@ <![CDATA[Category: Website | Home Assistant]]> - 2017-04-12T10:32:38+00:00 + 2017-04-12T20:58:48+00:00 https://home-assistant.io/ diff --git a/docs/configuration/remote/index.html b/docs/configuration/remote/index.html index b841381b08..a07dc1e5f2 100644 --- a/docs/configuration/remote/index.html +++ b/docs/configuration/remote/index.html @@ -70,7 +70,7 @@

If you’re interested in logging in to Home Assistant while away, you’ll have to make your instance remotely accessible.

The most common approach is to set up port forwarding from your router to port 8123 on the computer that is hosting Home Assistant. General instructions on how to do this can be found by searching <router model> port forwarding instructions.

A problem with making a port accessible is that some Internet Service Providers only offer dynamic IPs. This can cause you to lose access to Home Assistant while away. You can solve this by using a free Dynamic DNS service like DuckDNS.

-

Remember: Just putting a port up is not secure. You should definitely consider encrypting your traffic if you are accessing your Home Assistant installation remotely. For details please check the set up encryption using Let’s Encrypt blog post.

+

Remember: Just putting a port up is not secure. You should definitely consider encrypting your traffic if you are accessing your Home Assistant installation remotely. For details please check the set up encryption using Let’s Encrypt blog post, or this detailed guide to using Let’s Encrypt with HA.

Protect your communication with a self-signed certificate between your client and the Home Assistant instance.

For another way to access your Home Assistant frontend, check out the instructions how to use Tor.

diff --git a/docs/ecosystem/certificates/lets_encrypt/index.html b/docs/ecosystem/certificates/lets_encrypt/index.html index 2868adfc3d..b503641d60 100644 --- a/docs/ecosystem/certificates/lets_encrypt/index.html +++ b/docs/ecosystem/certificates/lets_encrypt/index.html @@ -67,15 +67,15 @@
-

-Before exposing your Home Aassistant instance to the outside world it is ESSENTIAL that you have set a password following the advice on the http page. +

+Before exposing your Home Assistant instance to the outside world it is ESSENTIAL that you have set a password following the advice on the http page.

This guide was added by mf_social on 16/03/2017 and was valid at the time of writing. This guide makes the following assumptions:

  • You can access your Home Assistant instance across your local network, and access the device that it is on via SSH from your local network.
  • You know the internal IP address of your router and can access your router’s configuration pages.
  • You have already set up a password for your Home Assistant instance, following the advice on this page: http
  • -
  • You want to access your Home Assistant instance when you are away from home (ie, not connected to your local network) and secure it with an TLS/SSL certificate.
  • +
  • You want to access your Home Assistant instance when you are away from home (ie, not connected to your local network) and secure it with a TLS/SSL certificate.
  • You have a basic understanding of the phrases I have used so far.
  • You are not currently running anything on port 80 on your network (you’d know if you were).
  • If you are not using Home Assistant on a Debian/Raspian/Hassbian system you will be able to convert any of the terminology I use in to the correct syntax for your system.
  • @@ -100,7 +100,7 @@ Before exposing your Home Aassistant instance to the outside world it is ESSENTI

    So, if an IP address is like a phone number, a port number is like an extension number. An analogy would be if you phone your local doctors on 192-1680-200 and the receptionist answers, you ask to speak to Dr. Smith and she will put you through to extension 8123, which is the phone Dr. Smith is sitting at. The doctors surgery is the device your Home Assistant is running on, Dr. Smith is your Home Assistant. Thusly, your Home Assistant instance is ‘waiting for your call’ on port 8123, at the device IP 192.168.0.200 .

    Now, to speak to the outside world your connection goes through a router. Your router will have two IP addresses. One is the internal network number, most likely 192.168.0.1 in my example, and an external IP address that incoming traffic is sent to. In the example of calling the doctors, the external IP is your telephone number’s area code.

    So, when we want to connect to our Home Assistant instance from outside our network we will need to call the correct extension number, at the correct phone number, in the correct area code.

    -

    We will be looking for a system to run like this (in this example I will pretend our exernal IP is 12.12.12.12):

    +

    We will be looking for a system to run like this (in this example I will pretend our external IP is 12.12.12.12):

    Outside world -> 12.12.12.12:8123 -> your router -> 192.168.0.200:8123
     
    @@ -112,7 +112,7 @@ Before exposing your Home Aassistant instance to the outside world it is ESSENTI

    To get around the issue of changing IP addresses we must remember that there are two IP addresses affected. Your external one (which we will ‘call’ to get on to your network from the internet) and your internal one (192.168.0.200 in the example I am currently using).

    So, we can use a static IP to ensure that whenever our device running Home Assistant connects to our router it always uses the same address. This way our internal IP never changes. This is covered in step 1 below.

    We then have no control over our external IP, as our Service Provider will give us a new one at random intervals. To fix this we will use a service called DuckDNS which will give us a name for our connection (something like examplehome.duckdns.org) and behind the scenes will continue to update your external IP. So no matter how many times the IP address changes, typing examplehome.duckdns.org in to our browser will convert to the correct, up-to-date, IP address. This is covered in step 3 below.

    -

    To get around the issue of not being able to chain the IP addresses together (I can’t say I want to call 12:12:12:12 and be put through to 192.168.0.200, and then be put through to extension 8123) we use port forwarding. Port forwarding is the process of telling your router which device to allow the outside connection to speak to. In the doctors surgery example, port forwarding is the receptionist. This takes a call from outside, and forwards it to the correct extension number inside. It is important to note that port forwarding can forward an incoming request for one port to a different port on your internal network if you so choose, and we will be doing this later on. The end result being that when we have our SSL certificate our incoming call will be requesting port 443 (because that is the SSL port, like the SSH port is always 22), but our port forwarding rule will forward this to our HA instance on port 8123. When this guide is completed we will run something like this:

    +

    To get around the issue of not being able to chain the IP addresses together (I can’t say I want to call 12:12:12:12 and be put through to 192.168.0.200, and then be put through to extension 8123) we use port forwarding. Port forwarding is the process of telling your router which device to allow the outside connection to speak to. In the doctors surgery example, port forwarding is the receptionist. This takes a call from outside, and forwards it to the correct extension number inside. It is important to note that port forwarding can forward an incoming request for one port to a different port on your internal network if you so choose, and we will be doing this later on. The end result being that when we have our TSL/SSL certificate our incoming call will be requesting port 443 (because that is the SSL port, like the SSH port is always 22), but our port forwarding rule will forward this to our HA instance on port 8123. When this guide is completed we will run something like this:

    Outside world -> https://examplehome.duckdns.org -> 12.12.12.12:443 -> your router -> 192.168.0.200:8123
     
    @@ -125,7 +125,10 @@ Before exposing your Home Aassistant instance to the outside world it is ESSENTI

    You will receive an ouput similar to the image below:

    -

    alt tag

    +

    + + Screenshot +

    Make a note of the interface name and the IP address you are currently on. In the picture it is the wireless connection that is highlighted, but with your setup it may be the wired one (eth0 or similar), make sure you get the correct information.

    Then type the following command to open the text file that controls your network connection:

    $ sudo nano /etc/dhcpcd.conf
    @@ -155,12 +158,12 @@ HA IP: 192.175.96.200
     

    When it comes back up check that you can SSH in to it again on the IP address you wrote down.

    -

    Make sure Home Assisstant is running and access it via the local network by typing the IP address and port number in to the browser:

    +

    Make sure Home Assistant is running and access it via the local network by typing the IP address and port number in to the browser:

    http://192.168.0.200:8123.
     

    All working? Hooray! You now have a static IP. This will now always be your internal IP address for your Home Assistant device. This will be known as YOUR-HA-IP for the rest of this guide.

    -

    2 - Set up port forwarding without SSL and test connection

    +

    2 - Set up port forwarding without TLS/SSL and test connection

    Log in to your router’s configuration pages and find the port forwarding options. This bit is hard to write a guide for because each router has a different way of presenting these options. Searching google for “port forwarding” and the name of your router may help. When you find it you will likely have options similar to:

    Service name - Port Range - Local IP - Local Port - Protocol

    You may also have other options (like ‘source IP’), these can usually be left blank or in their default state.

    @@ -178,11 +181,11 @@ Protocol - Both

    This will tell you your current external IP address

    -

    Type the external IP address in to the url bar with http:// in front and :8123 after like so (12.12.12.12 is my example!):

    +

    Type the external IP address in to the URL bar with http:// in front and :8123 after like so (12.12.12.12 is my example!):

    http://12.12.12.12:8123
     
    -

    Can you see your Home Assisstant instance? If not, your router may not support ‘loopback’ - try the next step anyway and if that works, and this one still doesn’t, just remember that you cannot use loopback, so will have to use internal addresses when you’re on your home network. More on this later on if it’s relevant to you.

    +

    Can you see your Home Assistant instance? If not, your router may not support ‘loopback’ - try the next step anyway and if that works, and this one still doesn’t, just remember that you cannot use loopback, so will have to use internal addresses when you’re on your home network. More on this later on if it’s relevant to you.

    Just to verify this isn’t some kind of witchcraft that is actually using your internal network, pick up your phone, disconnect it from your wifi so that you are on your mobile data and not connected to the home network, put the same URL in the browser on your phone.

    Can you see it now, from a device that is definitely not connected to your local network? Excellent! You now have a remotely accesible Home Assistant instance.

    But what if your external IP changes? Plus, remembering all those numbers is pretty hard, isn’t it? Read on to get yourself set up with a word-based URL at DuckDNS that will track any changes to your IP address so you don’t have to stress anymore.

    @@ -191,7 +194,7 @@ Protocol - Both

    Sign in and create an account using one of the id validation options in the top right corner.

    In the domains section pick a name for your subdomain, this can be anything you like, and click add domain.

    The URL you will be using later to access your Home Assistant instance from outside will be the subdomain you picked, followed by duckdns.org . For our example we will say our URL is examplehome.duckdns.org

    -

    On the top left of duckdns.org select the install option. Then pick your operating system from the list. In our example we will use a Raspberry Pi. In the dropdown box select the url you just created.

    +

    On the top left of duckdns.org select the install option. Then pick your operating system from the list. In our example we will use a Raspberry Pi. In the dropdown box select the URL you just created.

    Duckdns.org will now generate personalised instructions for you to follow so that your device can update their website every time your IP address changes. Carefully follow the instructions given on duckdns.org to set up your device.

    At the end of the instructions DuckDNS will suggest you set up port forwarding. No need, we have already done this in step 2.

    What you have now done is set up DuckDNS so that whenever you type examplehome.duckdns.org in to your browser it will convert that to your router’s external IP address. Your external IP address will always be up to date because your device running Home Assistant will update DuckDNS every time it changes.

    @@ -201,14 +204,14 @@ Protocol - Both

    What now happens behind the scenes is this:

      -
    • DuckDNS receives the request and forwards the request to your router’s external IP address (which has been kept up to date by your device running Home Assisstant)
    • +
    • DuckDNS receives the request and forwards the request to your router’s external IP address (which has been kept up to date by your device running Home Assistant)
    • Your router receives the request on port 8123 and checks the port forwarding rules
    • It finds the rule you created in step 2 and forwards the request to your HA instance
    • -
    • Your browser displays your Home Assisstant instance frontend.
    • +
    • Your browser displays your Home Assistant instance frontend.

    Did it work? Super!

    -

    You now have a remotely accesible Home Assistant instance that has a text-based URL and will not drop out if your service provider changes your IP. But, it is only as secure as the password you set, which can be snooped during your session by a malicious hacker with relative ease. So we need to set up some encryption with SSL, read on to find out how.

    -

    4 - Obtain an TLS/SSL certificate from Let’s Encrypt

    +

    You now have a remotely accesible Home Assistant instance that has a text-based URL and will not drop out if your service provider changes your IP. But, it is only as secure as the password you set, which can be snooped during your session by a malicious hacker with relative ease. So we need to set up some encryption with TLS/SSL, read on to find out how.

    +

    4 - Obtain a TLS/SSL certificate from Let’s Encrypt

    First we need to set up another port forward like we did in step 2. Set your new rule to:

    Service name - ha_letsencrypt
     Port Range - 80
    @@ -224,7 +227,7 @@ In cases where your ISP blocks port 80 you will need to change the port forward
     

    Now SSH in to the device your Home Assistant is running on.

    If you’re running the ‘standard’ setup on a Raspberry Pi the chances are you just logged in as the ‘pi’ user. If not, you may have logged in as the Home Assistant user. There are commands below that require the Home Assistant user to be on the sudoers list. If you are not using the ‘standard’ pi setup it is presumed you will know how to get your Home Assistant user on the sudoers list before continuing. If you are running the ‘standard’ pi setup, from your ‘pi’ user issue the following command (where hass is the Home Assistant user): -bash + $ sudo adduser hass sudo

    @@ -243,7 +246,7 @@ $ wget https://dl.eff.org/certbot-auto $ chmod a+x certbot-auto
    -

    Now we will run the certbot program to get our ssl certificate. You will need to include your email address and your DuckDNS url in the appropriate places:

    +

    Now we will run the certbot program to get our ssl certificate. You will need to include your email address and your DuckDNS URL in the appropriate places:

    $ ./certbot-auto certonly --standalone --preferred-challenges http-01 --email your@email.address -d examplehome.duckdns.org
     
    @@ -252,7 +255,7 @@ $ chmod a+x certbot-auto
    $ ls /etc/letsencrypt/live/
     
    -

    This should show a folder named exactly after your DuckDNS url.

    +

    This should show a folder named exactly after your DuckDNS URL.

    Our Home Assistant user needs access to files within the letsencrypt folder, so issue the following commands to change the permissions.

    $ sudo chmod 755 /etc/letsencrypt/live/
     $ sudo chmod 755 /etc/letsencrypt/archive/
    @@ -262,7 +265,7 @@ $ chmod a+x certbot-auto
     

    5 - Check the incoming conection

    Following on from Step 4 your SSH will still be in the certbot folder. If you edit your configuration files over SSH you will need to change to your homeassistant folder: -bash + $ cd ~/.homeassistant If you use samba shares to edit your files you can exit your SSH now. @@ -291,7 +294,7 @@ Protocol - Both

    https://examplehome.duckdns.org
     
    -

    Note the S after http, and that no port number is added. This is because https will use port 443 automatically, and we have already set up our port forward to redirect this request to our Home Assistant instance on port 8123.

    +

    Note the S after http, and that no port number is added. This is because https will use port 443 automatically, and we have already set up our port forward to redirect this request to our Home Assistant instance on port 8123.

    You should now be able to see your Home Assistant instance via your DuckDNS URL, and importantly note that your browser shows the connection as secure.

    You will now NO LONGER be able to access your Home Assistant via your old internal IP address in the way you previously have. Your default way to access your Home Assistant instance, even from inside your house, is to use your DuckDNS URL.

    In cases where you need to access via the local network only (which should be few and far between) you can access it with the following URL (note the added S after http):

    @@ -299,7 +302,7 @@ Protocol - Both

    …and accepting the browsers warning that you are connecting to an insecure site. This warning occurs because your certificate expects your incoming connection to come via your DuckDNS URL. It does not mean that your device has suddenly become insecure.

    -

    Some cases such as this are where your router does not allow ‘loopback’ or where there is a problem with incoming connections due to technical failure. In these cases you can still use your internal connection and ignore the warnings.

    +

    Some cases such as this are where your router does not allow ‘loopback’ or where there is a problem with incoming connections due to technical failure. In these cases you can still use your internal connection and safely ignore the warnings.

    If you were previously using a webapp on your phone/tablet to access your Home Assistant you should delete the old one and create a new one with the new address. The old one will no longer work as it is not keyed to your new, secure URL. Instructions for creating your new webapp can be found here:

    https://home-assistant.io/docs/frontend/mobile/
     
    @@ -425,7 +428,7 @@ Protocol - Both

    You can set an automation in Home Assistant to run the certbot renewal script.

    Add the following sections to your configuration.yaml

    shell_command: 
    -  renew_ssl: ./certbot/certbot-auto renew --quiet --no-self-upgrade --standalone --preferred-challenges http-01
    +  renew_ssl: ~/certbot/certbot-auto renew --quiet --no-self-upgrade --standalone --preferred-challenges http-01
       
     automation:
       - alias: 'Auto Renew SSL Cert'
    diff --git a/sitemap.xml b/sitemap.xml
    index ed1120a0cd..9cff7f6e49 100644
    --- a/sitemap.xml
    +++ b/sitemap.xml
    @@ -3114,62 +3114,62 @@
     
     
     https://home-assistant.io/demo/frontend.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/index.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-dev-event.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-dev-info.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-dev-service.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-dev-state.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-dev-template.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-history.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-iframe.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-logbook.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/demo/panels/ha-panel-map.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/googlef4f3693c209fe788.html
    -2017-04-12T10:31:54+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/static/fonts/roboto/DESCRIPTION.en_us.html
    -2017-04-12T10:31:55+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/static/fonts/robotomono/DESCRIPTION.en_us.html
    -2017-04-12T10:31:55+00:00
    +2017-04-12T20:57:43+00:00
     
     
     https://home-assistant.io/static/mdi-demo.html
    -2017-04-12T10:31:55+00:00
    +2017-04-12T20:57:43+00:00