Requisitos
Para poder acceder de manera remota a nuestro servidor de Home Assistant se necesita lo siguiente:- Un nombre DNS
- Un certificado firmado
Pasos
- Conseguir nombre DNS de duckdns.org
- Crear certificado digital de Letsencrypt
- Configurar Home Assistant
- Redirigir puerto en el router
Configurar Duckdns
It a Duckdns.org registrarse y crear un nombre de dominio (por ejempo ejemplo.duckdns.org Es importante que después de configurar Duckdns, si queremos acceder en local, creemos una entrada en /etc/hosts con la IP y el nombre DNS ejemplo.duckdns.orgInstalar el certificado de Letsencrypt
Instalar el certificado digital en el servidor de Home Assistant Redirigir puerto 80 Descargar y ejecutar cliente en el servidor$ mkdir certbotQuitar redirección puerto 80 Dar permisos a la carpeta /etc/letsencrypt/
$ cd certbot/
$ wget https://dl.eff.org/certbot-auto
$ chmod a+x certbot-auto
$ ./certbot-auto certonly --standalone \
--standalone-supported-challenges http-01 \
--email your@email.address \
-d hass-example.duckdns.org
chmod 755 /etc/letsencrypt
chmod 755 /etc/letsencrypt/live/
chmod 755 /etc/letsencrypt/archive/
chmod 755 /etc/letsencrypt/archive/MIDOMINIO.duckdns.org/privkey1.pem
Configurar configuration.yaml
http:Reiniciar la configuración
ssl_certificate: /etc/letsencrypt/live/ejemplo.duckdns.org/fullchain.pem
ssl_key: /etc/letsencrypt/live/ejemplo.duckdns.org/privkey.pe
systemctl restart home-assistant.service
Puede ser que cuando arranquemos el servicio hass nos dé un error en el certificado del siguiente tipo:
Failed config
http:
- Invalid config for [http]: not a file for dictionary value @ data['http']['ssl_certificate']. Got '/etc/letsencrypt/live/MYDOMAIN.duckdns.org/fullchain.pem'
not a file for dictionary value @ data['http']['ssl_key']. Got '/etc/letsencrypt/live/MYDOMAIN.duckdns.org/privkey.pem'. (See /home/homeassistant/.homeassistant/configuration.yaml, line 37). Please check the docs at https://home-assistant.io/components/http/
En ese caso, habrá que mirar si el usuario homeassistant tiene los permisos necesarios para leer los ficheros de los certificados con el siguiente comando:
su homeassistant -s /bin/sh -c 'cat /etc/letsencrypt/archive/minombredns.duckdns.org/privkey1.pem'
Deja una respuesta