enero 30, 2023

Acceda a su servidor Home Assistant de forma remota con DuckDNS y Let’s Encrypt

Si desea acceder de forma segura a su instancia de Home Assistant desde Internet, puede optar por la suscripción en la nube de la plataforma, llamada Nabu Casa. No solo le permite acceder a su hogar inteligente y controlar todos sus dispositivos desde cualquier lugar, sino que también es compatible con los desarrolladores.


Sin embargo, si no desea pagar una tarifa de suscripción mensual, puede usar los complementos DuckDNS y Let’s Encrypt para configurar Home Assistant y acceder a su hogar inteligente de forma segura a través de Internet.


Antes de empezar

Usaremos el método de “reenvío de puertos” para exponer nuestro servidor Home Assistant local a Internet. Si bien el reenvío de puertos le permitirá acceder a su hogar inteligente de forma remota, también podría ser peligroso si no asegura la conexión. Cuando expone un servidor local como Home Assistant a Internet con un método de reenvío de puertos, siempre existe el riesgo de acceso no autorizado. Los actores de amenazas pueden ingresar fácilmente a su red y pueden tener control total sobre sus dispositivos.

Sin embargo, si encripta la conexión con SSL/TLS y sigue algunas de las mejores prácticas mientras expone el servidor al mundo exterior, puede evitar tales instancias y acceder de manera segura al servidor.

Alternativamente, puede usar el complemento de la comunidad de Cloudflared para proteger la instalación de Home Assistant y acceder a ella de forma remota.

Configurar un subdominio de DuckDNS

Vaya a DuckDNS.org e inicie sesión con su cuenta de Google, Reddit, GitHub, Twitter o Persona. Complete el captcha y luego cree un subdominio DuckDNS. El nombre debe ser único y preferiblemente fácil de recordar. Usaremos esta URL para conectarnos de forma remota a nuestra instancia de Home Assistant.

El subdominio, si está disponible, se agregará a su cuenta. Asegúrese de escribir su IP pública en ip actual campo. Puede encontrar su IP pública utilizando la búsqueda de Google; simplemente escriba “cuál es mi IP”.

Además, copie el token de DuckDNS. Mantenga este token seguro ya que es confidencial.

Port Forward a través de la configuración del enrutador

Inicie sesión en su enrutador y configure el reenvío de puertos. Para averiguar cómo habilitar el reenvío de puertos en su modelo de enrutador en particular, use la búsqueda de Google. Alternativamente, puede visitar Port Forward y hacer clic en el fabricante del enrutador, luego en el número de modelo o el nombre para averiguar cómo habilitar el reenvío de puertos en el enrutador. También puede encontrar varias guías de video en YouTube sobre cómo configurar el reenvío de puertos en diferentes enrutadores.

Es necesario configurar dos puertos TCP de reenvío:

  • 8123 para acceder a Home Assistant de forma remota
  • 443 para usar integraciones como Alexa Media Player.

Dado que usamos el enrutador TP-Link A6 V3, hemos explicado los pasos para el mismo a continuación.

  1. Inicie sesión en el enrutador y haga clic en Avanzado. La IP de inicio de sesión suele ser 192.168.0.1 o 192.168.1.1.
  2. Haga clic en Reenvío NAT > Servidores virtuales.
  3. Hacer clic + Añadir.
  4. Escriba un nombre tipo de servicio, por ejemplo, “Asistente doméstico”. Esto le ayudará a reconocer por qué configuró este puerto hacia adelante.
  5. Introduce el valor 443 en puerta exterior Y 8123 en puerta interior. Además, ingrese la dirección IP de su instancia de Home Assistant y elija TCP desde el Protocolo desplegable.
  6. Repita el paso y agregue un nuevo servidor virtual, pero esta vez con un puerto externo y un puerto interno configurados para 8123 con la dirección IP de tu servidor Home Assistant. Asegúrate de elegir TCP desde el Protocolo desplegable.

Configurar el complemento DuckDNS en Home Assistant

Instale y configure el complemento DuckDNS en Home Assistant siguiendo estos pasos:

  1. Abre Home Assistant y ve a Ajustes > Componentes adicionales.
  2. Haga clic en el tienda adicional y busque el complemento DuckDNS.
  3. Selecciona el patoDNS complemento de los resultados de búsqueda y luego haga clic en Instalar botón.
  4. Después de la instalación, vaya a Configuración y haga clic en los tres puntos en la parte superior. Elegir Editar en YAML.
  5. En el editor YAML, pegue el siguiente código. Asegúrese de reemplazar el token de dominio y la URL con su token y URL de subdominio de DuckDNS.
    domains:
    - casadesmart.duckdns.org
    token: a269c73b-b185-44e3-87ea-77ca759bc9c4
    aliases: []
    lets_encrypt:
    accept_terms: true
    algo: secp384r1
    certfile: fullchain.pem
    keyfile: privkey.pem
    seconds: 300
  6. Hacer clic Ahorrar.
  7. Además, habilite bota sobre bota Y Perro guardián opciones en el complemento DuckDNS.
  8. Hacer clic comienzo para iniciar el complemento DuckDNS y haga clic en Tronco de arbol.
  9. Sigue presionando el Recargar botón hasta que veas Creación de fullchain.pem…. + ¡Listo!

Actualizar configuración.yaml

Abre el configuración.yaml archivo usando el editor de archivos o Código de estudio visual add-on y agregue las siguientes líneas para indicarle al asistente doméstico dónde se almacenan el certificado SSL y la clave para la conexión HTTPS.

http:
ssl_certificate: /ssl/fullchain.pem
ssl_key: /ssl/privkey.pem

Hacer clic Ahorrar y luego ir a Herramientas de desarrollo > Compruebe la configuración. Comprueba si Home Assistant se iniciará o no. En caso afirmativo, haga clic en Reiniciar para que los cambios surtan efecto.

Después de reiniciar, puede recibir una advertencia de certificado al acceder a Home Assistant a través de la IP local. Esta advertencia se puede ignorar. En su lugar, utilice el nombre de host para iniciar sesión en el asistente doméstico en la red local. En este punto, debería poder iniciar sesión y acceder a su Home Assistant a través de la URL de DuckDNS.

Configurar la aplicación complementaria

Si usa su teléfono inteligente para acceder y controlar dispositivos inteligentes a través de la aplicación complementaria Home Assistant, debe actualizar la URL externa para acceder a su Home Assistant desde fuera de la red a través de la aplicación complementaria. Para eso, sigue estos pasos:

  • Abra la aplicación complementaria Home Assistant en su dispositivo. Asegúrese de que el dispositivo esté conectado a la red local.
  • Ir Ajustes > aplicación complementaria opción.
  • Toque su cuenta de usuario en la parte superior y luego toque URL externa.
  • Escriba la URL de DuckDNS que comienza con HTTPS.
  • Grifo Ahorrar.

Reinicie la aplicación para que los cambios surtan efecto. Ahora puede desconectarse de la red local y conectarse a la red móvil. Abra la aplicación; la interfaz de usuario de Home Assistant debe ser accesible a través de Internet en su teléfono inteligente.

Configurar Alexa para alertas de voz inteligentes

Después de conectar y exponer el servidor de Home Assistant a Internet, puede configurar la integración de Alexa Media Player. Requiere autorización, que solo es posible cuando el servidor de Home Assistant está expuesto de forma segura (HTTPS) a Internet. La integración le permite reproducir voz y controlar dispositivos Echo y Fire TV. Puede usar el servicio Text-to-Speech para reproducir alertas a través de dispositivos Echo. Por ejemplo, hemos configurado alertas de voz cuando el tanque de agua está lleno, medio o vacío. Puede reproducir estas alertas desde un solo dispositivo Echo o desde todos ellos al mismo tiempo. Puede encontrar esta integración en HACS.

Acceso gratuito y seguro a Home Assistant

Con DuckDNS y Let’s Encrypt configurados en la instancia de Home Assistant, ahora puede acceder de forma segura a su hogar inteligente desde cualquier lugar a través de Internet utilizando su teléfono inteligente o cualquier otro dispositivo capaz de ejecutar un navegador web. Después de exponer el asistente doméstico a Internet, es importante habilitar la autenticación multifactor (MFA), usando Google Authenticator, Authy, etc., para proteger su hogar inteligente de todo tipo de bots, ataques de phishing y ataques dirigidos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *