Cuando accedemos a Home Assistant desde fuera de nuestra red doméstica, estamos exponiendo un sistema que controla sensores, automatizaciones, cámaras y dispositivos conectados. Si esa comunicación no está cifrada correctamente, un tercero podría interceptar credenciales o manipular comandos.
Por este motivo, habilitar HTTPS mediante certificados SSL/TLS no es una opción, sino una medida básica de seguridad.
Gracias a Let’s Encrypt y a servicios de DNS dinámico gratuitos como DuckDNS o No-IP, es posible proteger Home Assistant sin coste y sin necesidad de infraestructura compleja.
Si todavía no tienes claros los conceptos de certificados y cifrado, te recomendamos leer primero esta guía:
Qué es SSL/TLS y Let’s Encrypt: Cómo Funciona la Seguridad Web
En esta guía aprenderás:
- Qué requisitos necesitas para habilitar HTTPS en Home Assistant.
- Cómo crear un dominio dinámico gratuito.
- Cómo instalar y configurar Let’s Encrypt.
- Cómo verificar que el certificado funciona correctamente.
- Errores habituales y cómo solucionarlos.
Requisitos previos
Antes de comenzar, asegúrate de cumplir estos requisitos:
- Home Assistant OS o Supervised operativo.
- Acceso al panel de Add-ons.
- Puerto 443 redireccionado en el router.
- Cuenta en un proveedor de DNS dinámico.
- IP pública real (sin CG-NAT).
Si tu proveedor utiliza CG-NAT, necesitarás solicitar una IP pública o utilizar un túnel inverso.
Qué es un dominio dinámico y por qué lo necesitas
La mayoría de conexiones domésticas utilizan una IP pública dinámica que cambia periódicamente. Esto impide acceder de forma estable a tu servidor desde Internet.
Un servicio de DNS dinámico (DDNS) permite asociar un nombre de dominio a tu IP actual y actualizarlo automáticamente cuando cambia.
Ejemplos de dominios dinámicos:
- tucasa.duckdns.org
- mihome.ddns.net
En este artículo profundizamos en cómo funcionan estos servicios y cuál elegir:
DNS dinámico gratis: DuckDNS y No-IP
Paso 1 – Crear un dominio en DuckDNS
DuckDNS es uno de los servicios más utilizados con Home Assistant gracias a su integración directa.
- Accede a https://www.duckdns.org.
- Inicia sesión con GitHub, Google o Reddit.
- Crea un subdominio libre.
- Copia tu token de acceso.
Guarda el token, lo necesitarás más adelante.

Paso 2 – Instalar el Add-on DuckDNS
Desde Home Assistant:
- Configuración → Add-ons → Tienda.
- Busca DuckDNS.
- Instálalo.
Configura los campos:
- Domain: tu subdominio completo.
- Token: tu token personal.
- Let’s Encrypt: activado.
Arranca el complemento y verifica en los logs que la IP se actualiza correctamente.

Paso 3 – Generar el certificado Let’s Encrypt
En la mayoría de instalaciones modernas, el propio add-on DuckDNS genera automáticamente el certificado SSL utilizando Let’s Encrypt.
Si utilizas configuración manual, instala el add-on Let’s Encrypt y configura:
- Dominio.
- Email.
- Certfile.
- Keyfile.
Arranca el complemento y revisa que no aparezcan errores.
Paso 4 – Configurar HTTPS en Home Assistant
Edita el archivo configuration.yaml y añade:
http:
ssl_certificate: /ssl/fullchain.pem
ssl_key: /ssl/privkey.pem
Guarda los cambios y reinicia Home Assistant.
Accede mediante:
https://tudominio.duckdns.org:8123
Paso 5 – Verificar el certificado
Comprueba que:
- El navegador muestra el candado HTTPS.
- El certificado pertenece a Let’s Encrypt.
- No existen advertencias de seguridad.

Configuración alternativa: No-IP
No-IP funciona de forma similar, aunque requiere confirmaciones periódicas para mantener el dominio activo.
- Registro de cuenta.
- Creación de hostname gratuito.
- Instalación de cliente de actualización.
- Validación DNS.
Problemas frecuentes
No se genera el certificado: revisa puertos abiertos y logs.
Error de conexión segura: verifica rutas del certificado.
No accede desde fuera: comprueba NAT y CG-NAT.
Conclusión
Configurar HTTPS en Home Assistant es un paso esencial para proteger el acceso remoto y garantizar la privacidad del hogar inteligente. Con DuckDNS y Let’s Encrypt el proceso es gratuito, automático y seguro.