Si tienes una Raspberry Pi 5, tienes en tus manos una máquina con potencia de sobra para gestionar toda tu red doméstica. Hoy vamos a convertirla en un agujero negro para los anuncios y rastreadores instalando AdGuard Home a través de Docker.
Aunque el proceso debería ser un camino de rosas, es muy común encontrarse con conflictos de puertos (especialmente el temido puerto 53). En esta guía definitiva, te enseñaré a instalarlo paso a paso esquivando todas las trampas.
Requisitos Previos
-
Una Raspberry Pi 5 (o versiones anteriores) con el sistema operativo actualizado.
-
Docker y Docker Compose instalados. Si no los tienes, puedes instalarlos rápidamente con:
curl -sSL https://get.docker.com | sh sudo usermod -aG docker $USER -
Una IP local estática configurada en tu Raspberry Pi (por ejemplo,
192.168.1.100).
Paso 1: El Jefe Final antes de empezar (Liberar el Puerto 53)
AdGuard Home es un servidor DNS, lo que significa que necesita usar el puerto 53 sí o sí. El problema es que en Raspberry Pi OS (y Ubuntu/Debian), un servicio interno llamado systemd-resolved ya tiene «secuestrado» ese puerto por defecto.
Si intentamos levantar AdGuard ahora, Docker nos escupirá un error de address already in use. Vamos a solucionarlo de raíz:
-
Edita el archivo de configuración de resolución de nombres:
sudo nano /etc/systemd/resolved.conf -
Busca la línea que dice
#DNSStubListener=yes. Quítale la almohadilla (#) y cambia el «yes» por «no», dejándolo exactamente así:DNSStubListener=no -
Guarda el archivo (
Ctrl+O,Enter,Ctrl+X) y reinicia el servicio para aplicar el cambio y liberar el puerto:sudo systemctl reload-or-restart systemd-resolved
(Nota: Si tras esto tu Raspberry Pi pierde la conexión a internet temporalmente, asegúrate de tener un DNS válido en tu /etc/resolv.conf).
Paso 2: Crear el archivo Docker Compose
Para mantenerlo todo organizado, vamos a crear una carpeta para AdGuard y su archivo de configuración.
mkdir -p ~/docker/adguard
cd ~/docker/adguard
nano docker-compose.yml
Pega el siguiente código. ¡Atención al truco Ninja! Hemos cambiado el puerto de administración web al 8880 y el puerto seguro al 8443 para evitar conflictos si ya tienes otros servicios web (como Plex o Nginx) corriendo en tu Raspberry:
services:
adguardhome:
image: adguard/adguardhome
container_name: adguardhome
restart: unless-stopped
volumes:
- ./workdir:/opt/adguardhome/work
- ./confdir:/opt/adguardhome/conf
ports:
- "53:53/tcp"
- "53:53/udp"
- "8880:8880/tcp" # Puerto para el panel de administración web
- "8443:443/tcp" # Puerto alternativo para HTTPS
- "8443:443/udp"
- "3000:3000/tcp" # Puerto exclusivo para la instalación inicial
- "853:853/tcp"
- "784:784/udp"
Guarda y cierra el editor.
Paso 3: ¡Despegue!
Con el puerto 53 libre y nuestro archivo listo, es hora de encender la magia:
docker compose up -d
Si todo ha ido bien, verás un mensaje verde indicando que el contenedor ha arrancado (Started).
Paso 4: La Configuración Inicial
AdGuard ya está funcionando, pero hay que configurarlo por primera vez.
-
Abre el navegador web en tu ordenador y ve a
http://<IP-DE-TU-RASPBERRY>:3000(Recuerda usar http y no https). -
Sigue el asistente de bienvenida.
-
Paso crucial: Cuando te pida elegir el puerto para el Panel de Administración Web, asegúrate de poner el
8880(ya que es el que le dijimos a Docker que dejara abierto en nuestro archivo). -
Termina de crear tu usuario y contraseña.
¡Y listo! A partir de ahora, para entrar a tu panel de AdGuard Home, ya no usarás el puerto 3000, sino tu nuevo puerto de administración: http://<IP-DE-TU-RASPBERRY>:8880.
¿Qué sigue ahora?
Para que tus dispositivos dejen de ver anuncios, solo tienes que ir a la configuración de red de tu ordenador o teléfono móvil, y cambiar el servidor DNS principal por la IP de tu Raspberry Pi.
Consejo Pro: Si quieres proteger toda la casa de golpe, entra en la configuración de tu router de la operadora y cambia el servidor DNS allí. ¡Todos los dispositivos que se conecten al WiFi quedarán protegidos automáticamente!
Vídeo anterior:

Deja una respuesta