Integración domótica Pi-hole, gratuita y de código abierto

Bloqueador Pi-hole: pausa desde el panel, estadísticas de 24 h, avisos de actualización.
Siga y controle el bloqueo de anuncios de su Pi-hole desde Gladys, en su red local: póngalo en pausa cinco minutos desde el panel cuando un sitio web no funcione, vea lo que ha bloqueado en las últimas 24 horas, y sepa cuándo deja de responder o cuándo sale una actualización.
Desarrollada sin el hardware: sus comentarios son bienvenidos. Esta integración se ha construido y probado con las respuestas documentadas por Pi-hole (la especificación OpenAPI de Pi-hole v6), no con un servidor real. Si algo no funciona como se describe, indíquelo en el foro de Gladys o en las issues.
Lo que necesita
- Gladys Assistant 5.1.0 o posterior (5.2.0 o posterior para el botón Pausa… del widget).
- Pi-hole v6 o posterior, accesible desde Gladys. Pi-hole v5 no es compatible: se detecta y se indica en la pantalla de configuración.
- Una contraseña de aplicación de su Pi-hole (recomendado), o la contraseña de su interfaz web, o nada si su Pi-hole no tiene contraseña.
Para crear una contraseña de aplicación, abra la interfaz web de Pi-hole: Settings → Web interface / API, cambie la página al modo Expert (arriba a la derecha), y luego Configure app password → Enable new app password. Copie la contraseña mostrada: Pi-hole solo la muestra una vez. Una contraseña de aplicación también funciona cuando la autenticación de dos factores está activa, cosa que no permite la contraseña de la interfaz web.
Puesta en marcha
- Instale la integración desde el catálogo de Gladys.
- En Configuración, introduzca la Dirección de su Pi-hole (por ejemplo
192.168.1.2, ohttps://192.168.1.2para HTTPS), su Contraseña de aplicación y, si lo desea, un Nombre. ¿Dos o tres servidores Pi-hole? Rellene también las secciones Segundo Pi-hole y Tercer Pi-hole. - Guarde y haga clic en Probar la conexión: el mensaje bajo el botón indica, para cada servidor, si responde, su versión y el estado de su bloqueo.
- Abra la pestaña Descubrir: un dispositivo por Pi-hole. Haga clic en Añadir, elija una habitación y guarde.
Opciones:
- Aceptar certificados autofirmados: Pi-hole v6 sirve HTTPS con un
certificado firmado por él mismo. Márquela para usar una dirección
https://; déjela sin marcar para las direccioneshttp://. - Intervalo de actualización: con qué frecuencia se leen los servidores, de 15 segundos a 5 minutos (1 minuto por defecto).
- Apagar el interruptor de bloqueo: lo que hace el interruptor del dispositivo al apagarlo: pausar el bloqueo 5 minutos (por defecto), 15, 30 o 60 minutos, o desactivarlo hasta que lo vuelva a encender.
- Idioma de los nombres de funciones: inglés, francés, alemán o español. Los nombres se asignan al añadir un dispositivo (francés por defecto).
El dispositivo de cada Pi-hole
| Función | Qué es |
|---|---|
| Bloqueo de anuncios | Interruptor: encendido, el Pi-hole bloquea; apagado, deja pasar todo |
| Consultas DNS (24 h) | Consultas recibidas en las últimas 24 horas |
| Consultas bloqueadas (24 h) | Consultas bloqueadas en las últimas 24 horas |
| Proporción bloqueada (24 h) | Proporción de consultas bloqueadas, en %, redondeada |
| Clientes activos (24 h) | Dispositivos que han usado el Pi-hole en las últimas 24 horas |
| Dominios en listas de bloqueo | Dominios en las listas de bloqueo del Pi-hole |
| Actualizaciones disponibles | Número de partes de Pi-hole con una versión más reciente (0 si todo está al día) |
Las cifras son las de la página de inicio de Pi-hole: una ventana móvil de las últimas 24 horas, no el día natural. La insignia del dispositivo muestra Local cuando el Pi-hole responde e Inaccesible cuando no.
Panel
Añada el widget Pi-hole a un panel. Por defecto muestra todos sus servidores juntos; elija uno en su configuración para mostrar solo ese. Pausar un solo Pi-hole de dos no cambia nada: sus dispositivos consultan entonces el otro.
El widget muestra las consultas, las consultas bloqueadas y la proporción bloqueada de las últimas 24 horas, el estado de cada servidor (bloqueo activo, en pausa con los minutos restantes, desactivado, inaccesible), los clientes activos, los dominios de las listas de bloqueo y las actualizaciones disponibles. Sus botones:
- Pausa 5 min y Pausa 30 min: pausan el bloqueo de inmediato;
- Pausa…: abre un pequeño formulario para introducir la duración en minutos (Gladys 5.2.0 o posterior; un Gladys más antiguo responde que necesita una actualización);
- Reactivar: vuelve a activar el bloqueo. Lleva una marca de verificación mientras el bloqueo está activo en todas partes.
Escenas
Desencadenantes
- Bloqueo de Pi-hole en pausa: el bloqueo se ha desactivado, desde Gladys o
desde otro lugar (la interfaz de Pi-hole, el comando
pihole disable, otra herramienta). Filtre por Pi-hole y por origen (Desde Gladys o Fuera de Gladys). Las acciones pueden leer el nombre del Pi-hole y la duración de la pausa en minutos (duration_minutes, 0 cuando no tiene fin). - Bloqueo de Pi-hole reactivado: el bloqueo vuelve a estar activo. El
origen indica si la pausa terminó sola (Fin de la pausa), desde Gladys o
desde otro lugar;
paused_minutesindica cuánto duró. - Actualización de Pi-hole disponible: ha salido una nueva versión de
Pi-hole (núcleo, FTL, interfaz web, o la imagen Docker cuando Pi-hole funciona
en Docker). Se anuncia una vez por versión, incluso tras un reinicio.
updatesenumera las nuevas versiones, por ejemploCore v6.1.2, FTL v6.3. - Pi-hole ya no responde: un Pi-hole no ha respondido a dos lecturas
seguidas (la segunda 15 segundos después de la primera). El DNS de su casa
puede estar caído.
errorindica el motivo, en el idioma de la configuración. - Pi-hole vuelve a responder: ha vuelto;
down_minutesindica al cabo de cuánto tiempo.
Una contraseña rechazada no cuenta como «ya no responde»: la pantalla de configuración lo indica.
Acciones
- Pausar el bloqueo de Pi-hole: pausa el bloqueo en un Pi-hole, o en todos si el campo se deja vacío, durante un número de minutos (5 por defecto, 0 hasta reactivar, un día como máximo). Las acciones siguientes pueden leer cuántos servidores se han pausado.
- Reactivar el bloqueo de Pi-hole: vuelve a activar el bloqueo, en un Pi-hole o en todos.
El interruptor Bloqueo de anuncios también se puede usar con la acción estándar de Gladys que controla un dispositivo.
Ideas de escenas
- Red de seguridad: una escena cada tarde a las 20:00 con Reactivar el bloqueo de Pi-hole, para que un interruptor apagado «hasta volver a encenderlo» nunca se quede apagado toda la noche.
- Alerta DNS: Pi-hole ya no responde → enviar un mensaje «Pi-hole {{triggerEvent.data.server}} no responde: {{triggerEvent.data.error}}». Y Pi-hole vuelve a responder → «de vuelta tras {{triggerEvent.data.down_minutes}} min».
- ¿Quién ha pausado el bloqueo?: Bloqueo de Pi-hole en pausa con el origen Fuera de Gladys → enviar un mensaje con la duración de la pausa.
Solución de problemas
- «contraseña rechazada»: compruebe la contraseña de aplicación. Crear una nueva en Pi-hole sustituye a la anterior: copie la nueva en Gladys.
- «la autenticación de dos factores está activa»: la contraseña de la interfaz web pide un código de su teléfono; use en su lugar una contraseña de aplicación.
- «certificado rechazado»: ha introducido una dirección
https://; marque Aceptar certificados autofirmados, o use la direcciónhttp://. - «la dirección redirige»: su Pi-hole envía a los visitantes HTTP a HTTPS;
introduzca la dirección
https://y marque Aceptar certificados autofirmados. - «no queda ninguna sesión de API libre»: Pi-hole acepta un número limitado de sesiones de API a la vez (16 por defecto). La integración solo mantiene una por servidor y la cierra al detenerse; otras herramientas pueden ocupar el resto. Pi-hole libera las sesiones sin uso al cabo de 30 minutos.
- «Pi-hole v5 no es compatible»: actualice Pi-hole a la versión 6
(
pihole -up). - «no responde»: compruebe que
http://<dirección>/adminse abre desde un ordenador de la red de Gladys. Los nombres terminados en.localno suelen funcionar dentro de la integración: use la dirección IP. - Registros: en la página de la integración en Gladys, o
docker logsen el host. Muestran el inicio, cada servidor perdido y recuperado, los problemas (una vez cada uno, no en cada lectura) y sus órdenes de pausa y reanudación. Inicie el contenedor conLOG_LEVEL=debugpara ver cada lectura y cada nuevo intento. Su contraseña y la sesión de API nunca aparecen en los registros.
Limitaciones
- Solo Pi-hole v6. Una integración gestiona hasta tres servidores Pi-hole.
- La integración lee cada servidor una vez por intervalo de actualización (dos pequeñas consultas, más la comprobación de versiones una vez por hora) y mantiene una sola sesión de API por servidor: ninguna cuota de Pi-hole está en riesgo.
- Las cifras cubren las últimas 24 horas tal como las cuenta Pi-hole; no se ponen a cero a medianoche.
- La proporción bloqueada se redondea en el dispositivo (Gladys no tiene sensor de porcentaje decimal); el widget muestra un decimal.
- La integración no gestiona las listas de bloqueo, los dominios permitidos o denegados ni los clientes de Pi-hole: use para ello la interfaz de Pi-hole.
- Desarrollada sin un Pi-hole real: lo que no se ha podido comprobar en un servidor real figura en el README.
Esta integración no está afiliada a Pi-hole LLC.
Parámetros de configuración
Estos son los parámetros que Pi-hole te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Su Pi-hole | section | No | Pi-hole v6 o posterior. En Pi-hole, cree una contraseña de aplicación: Settings, Web interface / API, modo Expert, Configure app password. Hasta tres servidores. |
| Dirección | string | Sí | Dirección IP o nombre del Pi-hole, con https:// para HTTPS y :puerto si no es el estándar. |
| Contraseña de aplicación | secret | No | Una contraseña de aplicación (recomendado) o la de la interfaz web. Vacío si el Pi-hole no tiene. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: «Pi-hole» seguido de la dirección. |
| Segundo Pi-hole (opcional) | section | No | Los mismos campos, para otro Pi-hole de su red. |
| Dirección | string | No | Dirección IP o nombre del Pi-hole, con https:// para HTTPS y :puerto si no es el estándar. |
| Contraseña de aplicación | secret | No | Una contraseña de aplicación (recomendado) o la de la interfaz web. Vacío si el Pi-hole no tiene. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: «Pi-hole» seguido de la dirección. |
| Tercer Pi-hole (opcional) | section | No | Los mismos campos, para otro Pi-hole de su red. |
| Dirección | string | No | Dirección IP o nombre del Pi-hole, con https:// para HTTPS y :puerto si no es el estándar. |
| Contraseña de aplicación | secret | No | Una contraseña de aplicación (recomendado) o la de la interfaz web. Vacío si el Pi-hole no tiene. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: «Pi-hole» seguido de la dirección. |
| Opciones | section | No | |
| Aceptar certificados autofirmados | boolean | No | Para direcciones https://: Pi-hole sirve por defecto un certificado autofirmado. Márquelo solo para sus propios servidores. |
| Intervalo de actualización | select | No | Con qué frecuencia se leen los servidores Pi-hole. |
| Apagar el interruptor de bloqueo | select | No | Pausa el bloqueo durante este tiempo, o hasta que se vuelva a encender el interruptor. |
| Idioma de los nombres de funciones | select | No | Nombres de las funciones al añadir un dispositivo y textos de los eventos de escena. |
Cómo instalar Pi-hole en Gladys
- En Gladys, abre Integraciones: Pi-hole aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/guim31/gladys-pihole:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-pihole.
Pi-hole requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
Pi-hole es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene guim31, no el equipo principal de Gladys.
- Explorar todas las integraciones externas
- Descubrir las integraciones nativas incluidas en Gladys
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación