TecnoHN · Tecnología práctica

Instalar y usar Pi-hole en Ubuntu

Ubuntu · Redes · Pi-hole

Convierte un equipo con Ubuntu en el servidor DNS de tu red para bloquear dominios de publicidad y rastreo sin instalar extensiones en cada dispositivo.

Actualizado: 12 de noviembre de 2026Nivel: básico/intermedioTiempo aproximado: 20–30 min
Al terminar tendrás:
  • Pi-hole instalado directamente en Ubuntu.
  • Una dirección IP estable para el servidor.
  • El router entregando Pi-hole como servidor DNS.
  • Acceso al panel web y estadísticas de consultas.

Paso 1

Antes de comenzar

Pi-hole es un DNS sinkhole: recibe las consultas DNS de tus dispositivos y bloquea los dominios incluidos en sus listas antes de que la conexión llegue a realizarse.

No necesitas una Raspberry Pi. Ubuntu está entre los sistemas oficialmente compatibles y Pi-hole requiere pocos recursos: la documentación oficial indica al menos 512 MB de RAM y 2 GB de espacio libre, aunque recomienda 4 GB de almacenamiento disponible.

Importante

El equipo que ejecutará Pi-hole debe permanecer encendido mientras quieras utilizarlo como DNS de la red.

Necesitas

  • Ubuntu en una versión con soporte vigente.
  • Acceso con permisos sudo.
  • Conexión a Internet.
  • Acceso a la configuración de tu router.
  • Una IP fija o una reserva DHCP para el equipo.

Paso 2

Preparar una IP estable

Pi-hole debe conservar la misma dirección IP. Si la dirección cambia, los dispositivos de la red seguirán intentando consultar la dirección antigua y perderán resolución DNS.

Primero identifica la IP actual:

ip -br address

Busca la interfaz que estás utilizando, normalmente algo como enp... para Ethernet o wlp... para Wi-Fi.

La opción que recomendamos para la mayoría de hogares es crear una reserva DHCP en el router. Así el router siempre asignará la misma IP al equipo sin tener que modificar manualmente Netplan.

Ejemplo

Si tu servidor recibe 192.168.1.50, reserva esa dirección para la dirección MAC de ese equipo. En los pasos siguientes usaremos 192.168.1.50 únicamente como ejemplo.

Paso 3

Instalar Pi-hole

El proyecto ofrece un instalador automatizado. Antes de ejecutarlo, actualiza los índices de paquetes:

sudo apt update

Luego inicia el instalador oficial:

curl -sSL https://install.pi-hole.net | bash
¿No quieres ejecutar directamente un script descargado?

La propia documentación de Pi-hole reconoce esta preocupación. También puedes descargar el instalador primero para revisarlo y ejecutarlo después:

wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh

El instalador abrirá una interfaz en la terminal y comprobará dependencias, red y configuración del sistema.

Paso 4

Completar el asistente de instalación

Las pantallas pueden variar ligeramente entre versiones, pero los conceptos principales son los mismos.

  1. Interfaz de red: selecciona la interfaz conectada a tu red local.
  2. Dirección IP: confirma la IP que reservaste en el router.
  3. DNS upstream: selecciona el proveedor al que Pi-hole reenviará las consultas que no estén bloqueadas.
  4. Listas de bloqueo: conserva la configuración inicial para empezar. Después podrás añadir o quitar listas.
  5. Interfaz web: mantenla habilitada para administrar Pi-hole desde el navegador.

Cuando finalice, comprueba el estado:

pihole status

También puedes revisar la versión instalada:

pihole version
Panel web

Después de terminar el asistente, entra desde un equipo de la misma red en http://192.168.3.113/admin/. En otra instalación sustituye la dirección por la IP reservada: http://IP-DEL-PIHOLE/admin/. Desde esta interfaz puedes ver estadísticas, revisar consultas, identificar dominios bloqueados, desactivar temporalmente el bloqueo y administrar la allowlist y la blocklist.

Dashboard real de Pi-hole con estadísticas de consultas, porcentaje bloqueado y accesos de administración
Dashboard de Pi-hole: resume la actividad, las consultas bloqueadas y el estado del servicio. La captura procede de la instalación usada para verificar este tutorial.

Paso 5

Configurar el router para que la red use Pi-hole

Instalar Pi-hole no cambia automáticamente el DNS de tus otros dispositivos. Debes indicar al servidor DHCP de tu router que entregue la IP de Pi-hole como DNS.

Busca en el router una sección similar a:

  • LAN
  • DHCP Server
  • DNS Server
  • Local Network

Como DNS primario coloca la IP del servidor:

192.168.1.50
No pongas un DNS público como DNS secundario si quieres que todo pase por Pi-hole.

Muchos dispositivos pueden utilizar el DNS secundario directamente, evitando el filtrado. Para redundancia real se recomienda un segundo servidor Pi-hole.

Después de guardar los cambios, renueva la conexión de los dispositivos o espera a que reciban una nueva concesión DHCP.

Paso 6

Comprobar que Pi-hole está funcionando

Desde un equipo cliente comprueba qué DNS está utilizando. En Ubuntu:

resolvectl status

La dirección de Pi-hole debería aparecer como servidor DNS de la interfaz activa.

También puedes hacer una consulta explícita:

dig example.com

Mientras navegas por varios sitios, abre el panel web de Pi-hole. El número de consultas debería aumentar y comenzarás a ver clientes, dominios permitidos y dominios bloqueados.

Señal de que todo está bien

Si el panel muestra consultas procedentes de tus dispositivos y la navegación sigue funcionando, Pi-hole ya está actuando como DNS de la red.

Paso 7

Usar Pi-hole en el día a día

Administrar desde el panel web

Abre http://192.168.3.113/admin/ o, en general, http://IP-DEL-PIHOLE/admin/. El Dashboard permite ver estadísticas; en Query Log puedes revisar consultas e identificar dominios bloqueados. También puedes desactivar el bloqueo durante unos segundos o minutos y administrar dominios permitidos y bloqueados desde Domains (allowlist y blocklist).

Registro de consultas real de Pi-hole con columnas de dominio, cliente y acciones de bloqueo
Query Log muestra qué dominio consultó cada cliente y permite investigar rápidamente qué petición conviene permitir o bloquear.

Ver el estado

pihole status

Actualizar Pi-hole

pihole -up

Desactivar temporalmente el bloqueo

pihole disable 5m

El ejemplo anterior desactiva el filtrado durante cinco minutos.

Volver a habilitarlo

pihole enable

Cuando una página deja de funcionar

Abre el registro de consultas en el panel web. Si identificas un dominio legítimo bloqueado, puedes añadirlo a la lista de permitidos en lugar de desactivar Pi-hole para toda la red.

Paso 8

Problemas comunes

Pi-hole no puede utilizar el puerto 53

Ubuntu utiliza systemd-resolved y, en algunas configuraciones, su stub DNS puede ocupar el puerto 53. Si el instalador o pihole-FTL indica que el puerto está en uso, comprueba primero:

sudo ss -lntup | grep ':53 '

Si confirmas que systemd-resolved está utilizando el puerto como stub listener, la documentación de Pi-hole propone desactivar solamente ese listener:

sudo sh -c 'mkdir -p /etc/systemd/resolved.conf.d && printf "[Resolve]\nDNSStubListener=no\n" | tee /etc/systemd/resolved.conf.d/no-stub.conf'

Después cambia el enlace de /etc/resolv.conf para que utilice el archivo generado por systemd-resolved:

sudo sh -c 'rm -f /etc/resolv.conf && ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf'

Y reinicia el servicio:

sudo systemctl restart systemd-resolved
No hagas este cambio si no tienes un conflicto en el puerto 53.

Es una solución de diagnóstico, no un requisito para todas las instalaciones de Ubuntu.

Los dispositivos siguen sin aparecer

Comprueba que el router está entregando la IP de Pi-hole como DNS mediante DHCP y que los clientes renovaron su concesión.

Pi-hole funciona, pero no bloquea anuncios de YouTube

Pi-hole bloquea por dominio DNS. Cuando el contenido y la publicidad proceden del mismo dominio o infraestructura, el filtrado DNS no puede distinguirlos sin bloquear también el contenido legítimo.

Listo

Tu red ya está usando Pi-hole

A partir de aquí puedes personalizar listas, grupos y clientes. Más adelante publicaremos una guía separada para configurar Unbound y convertir Pi-hole en un DNS recursivo local.

Fuentes oficiales