bolt Servidores dedicados de Valebyte: bare metal, protección DDoS y cobertura global.

Ver servidores arrow_forward
eco Principiante Tutorial/Cómo hacer

Configuración de AdGuard Home en VPS

calendar_month Jul 15, 2026 schedule 20 min de lectura visibility 19 vistas
Настройка AdGuard Home на VPS для блокировки рекламы и трекеров во всей сети
info

¿Necesitas un servidor para esta guía? Ofrecemos servidores dedicados y VPS en más de 50 países con configuración instantánea.

¿Necesitas un VPS para esta guía?

Deploy a dedicated server in minutes.

Configuración de AdGuard Home en un VPS para bloquear anuncios y rastreadores en toda la red

TL;DR

En esta guía detallada, configuraremos AdGuard Home paso a paso en su propio servidor privado virtual (VPS). Aprenderá a instalar AdGuard Home, configurarlo para bloquear eficazmente anuncios y rastreadores, y garantizar su seguridad y estabilidad. Como resultado, obtendrá un servidor DNS centralizado que filtrará el tráfico de internet para todos los dispositivos en su red doméstica u oficina, mejorando significativamente la privacidad y la velocidad de carga de las páginas.

  • Instalación de AdGuard Home en Ubuntu Server 24.04 LTS.
  • Configuración del bloqueo de anuncios, rastreadores y dominios maliciosos a nivel de DNS.
  • Protección de la interfaz web de AdGuard Home con HTTPS y certificados automáticos de Let's Encrypt a través de Caddy.
  • Garantía de la seguridad del servidor con Fail2Ban, UFW y claves SSH.
  • Recomendaciones para la copia de seguridad y el mantenimiento de AdGuard Home.
  • Sección detallada de solución de problemas y preguntas frecuentes.

Qué configuramos y por qué

Diagrama: Qué configuramos y por qué
Diagrama: Qué configuramos y por qué

En la internet moderna, los anuncios y rastreadores se han convertido en una parte integral de la experiencia del usuario, a menudo ralentizando la carga de páginas, consumiendo tráfico y violando la privacidad. AdGuard Home es un software potente, gratuito y de código abierto que actúa como un servidor DNS, filtrando el tráfico de internet a nivel de nombres de dominio. Al instalarlo en su VPS, podrá bloquear centralizadamente anuncios, rastreadores, sitios web maliciosos e incluso contenido para adultos para todos los dispositivos conectados a su red (ya sea un router doméstico, un smartphone, una computadora o un dispositivo IoT).

En resumen, al finalizar esta guía, tendrá su propio servidor DNS con AdGuard Home, totalmente controlado por usted, que:

  • Bloqueará la gran mayoría de anuncios y ventanas emergentes.
  • Protegerá contra la recopilación de datos por parte de rastreadores y sistemas analíticos.
  • Evitará el acceso a sitios web maliciosos y de phishing conocidos.
  • Mejorará la velocidad de carga de las páginas web al reducir la cantidad de contenido descargado.
  • Proporcionará estadísticas detalladas sobre las consultas DNS y los dominios bloqueados.
  • Garantizará una gestión centralizada del filtrado para todos los dispositivos de su red.

Alternativas: Cloud-managed vs. Self-hosted en un VPS

Existen varias formas de bloquear anuncios y rastreadores. Puede utilizar extensiones de navegador (AdBlock Plus, uBlock Origin) que solo funcionan en un navegador específico, o servicios VPN de pago que ofrecen bloqueo de anuncios. También hay servicios DNS en la nube con filtrado (por ejemplo, el propio AdGuard DNS, Cloudflare DNS), que son fáciles de configurar pero no le dan control total sobre las listas de filtros ni proporcionan estadísticas detalladas sobre sus consultas.

Una solución Self-hosted en un VPS, por el contrario, ofrece el máximo control y flexibilidad. Usted elige las listas de bloqueo, puede añadir sus propias reglas, integrar AdGuard Home con otros servicios (por ejemplo, con un servidor VPN en el mismo VPS) y tener acceso completo a los registros y estadísticas. Esta es la opción ideal para quienes valoran la privacidad, el rendimiento y el control total sobre su infraestructura de red, así como para quienes desean tener un único punto de filtrado para todos los dispositivos, incluidos aquellos donde la instalación de extensiones o aplicaciones no es posible (por ejemplo, Smart TV, consolas de juegos).

Qué configuración de VPS se necesita para esta tarea

Diagrama: Qué configuración de VPS se necesita para esta tarea
Diagrama: Qué configuración de VPS se necesita para esta tarea

AdGuard Home es una aplicación relativamente ligera que no requiere recursos significativos, especialmente si planea usarla para una pequeña red doméstica u oficina (hasta 50-100 dispositivos). Sin embargo, si espera una alta carga o desea ejecutar servicios adicionales en el mismo VPS, los requisitos pueden aumentar.

Requisitos mínimos para AdGuard Home (válido para 2026):

  • CPU: 1 núcleo (procesador compatible con x64). AdGuard Home no carga mucho el procesador; la mayor parte del tiempo estará inactivo.
  • RAM: 512 MB. AdGuard Home consume entre 50 y 200 MB de RAM, dependiendo de la cantidad de listas de filtros utilizadas y el tamaño de la caché de consultas DNS. 512 MB serán suficientes para un funcionamiento cómodo.
  • Disco: 10 GB SSD. La mayor parte de este volumen será ocupada por el sistema operativo y la caché. AdGuard Home en sí ocupa varias decenas de megabytes. Se recomienda encarecidamente un SSD para un funcionamiento rápido del servidor DNS.
  • Red: 100 Mbit/s. Las consultas DNS consumen muy poco tráfico, por lo que incluso un canal de red básico será más que suficiente.

Plan de VPS recomendado para uso típico:

Para un funcionamiento estable de AdGuard Home y la posibilidad de ejecutar otros pequeños servicios en el mismo VPS, así como para asegurar una reserva de recursos, se recomienda la siguiente configuración:

Criterio Valor recomendado
CPU 2 núcleos (Intel Xeon E3/E5 o AMD EPYC)
RAM 1 GB
Disco 25 GB SSD
Red Puerto de 1 Gbit/s, tráfico ilimitado (o gran volumen, por ejemplo, 1-2 TB/mes)
SO Ubuntu Server 24.04 LTS (o más reciente)

Un VPS con las características indicadas no solo garantizará el funcionamiento estable de AdGuard Home, sino que también le permitirá, si es necesario, alojar un pequeño servidor web, un servidor VPN u otras utilidades sin una disminución notable del rendimiento.

Cuándo se necesita un dedicado y no un VPS

Normalmente no se requiere un servidor dedicated para AdGuard Home. Sin embargo, si planea:

  • Servir AdGuard Home para una organización muy grande (miles de clientes).
  • Ejecutar en el mismo servidor muchas aplicaciones que consumen muchos recursos (almacenamiento en la nube, bases de datos pesadas, servidores de juegos con alta carga).
  • Se requiere un rendimiento de E/S excepcional o configuraciones de hardware especiales.

En estos casos raros, se podría considerar el alquiler de un servidor dedicated adecuado, pero para la mayoría de los usuarios, un VPS será la solución óptima y más económica.

Ubicación: en qué influye

La elección de la ubicación del VPS es importante para un servidor DNS:

  • Latencia (Latency): Cuanto más cerca esté geográficamente su VPS de usted, menor será la latencia al procesar las consultas DNS. Para DNS, esto es importante, ya que cada consulta debe procesarse lo más rápido posible. Una diferencia de 50-100 ms puede ser perceptible. Elija una ubicación que esté lo más cerca posible de su ubicación física.
  • Disponibilidad de contenido: Algunos servicios pueden ofrecer contenido diferente o tener distintas restricciones según la dirección IP desde la que se originó la solicitud. Si utiliza un VPS para eludir restricciones geográficas, asegúrese de que su ubicación coincida con sus objetivos.
  • Legislación: En algunas jurisdicciones puede haber reglas específicas sobre el almacenamiento de registros o el procesamiento del tráfico. Tenga esto en cuenta al elegir el país para su VPS.

Preparación del servidor

Diagrama: Preparación del servidor
Diagrama: Preparación del servidor

Antes de instalar AdGuard Home, es necesario realizar una configuración básica y reforzar la seguridad de su VPS. Utilizaremos Ubuntu Server 24.04 LTS.

1. Conexión al servidor por SSH

Una vez que haya recibido los datos de acceso a su VPS (normalmente la dirección IP, el nombre de usuario root y la contraseña), conéctese a él:


ssh root@ВАШ_IP_АДРЕС_VPS
    

En la primera conexión, es posible que se le pida que confirme la huella digital del servidor. Escriba yes.

2. Actualización del sistema

Siempre comience actualizando el gestor de paquetes y los paquetes instalados a las últimas versiones:


sudo apt update         # Actualiza la lista de paquetes disponibles
sudo apt upgrade -y     # Actualiza todos los paquetes instalados
sudo apt autoremove -y  # Elimina dependencias innecesarias
    

3. Creación de un nuevo usuario con permisos sudo

Trabajar con la cuenta root no es seguro. Crearemos un nuevo usuario y le otorgaremos permisos sudo:


adduser ваш_пользователь          # Crea un nuevo usuario
usermod -aG sudo ваш_пользователь # Añade el usuario al grupo sudo
    

Después de crear el usuario, asígnele una contraseña segura. Ahora puede salir de la sesión root e iniciar sesión con el nuevo usuario:


exit
ssh ваш_пользователь@ВАШ_IP_АДРЕС_VPS
    

4. Configuración de la autenticación por claves SSH (recomendado)

El uso de claves SSH mejora significativamente la seguridad en comparación con las contraseñas. Si aún no tiene un par de claves SSH, genérelas en su computadora local:


ssh-keygen -t rsa -b 4096 -C "ваш[email protected]"
    

Luego, copie la clave pública a su VPS:


ssh-copy-id ваш_пользователь@ВАШ_IP_АДРЕС_VPS
    

Después de una configuración exitosa, desactive la autenticación por contraseña para root y el nuevo usuario. Edite el archivo de configuración del servidor SSH:


sudo nano /etc/ssh/sshd_config
    

Encuentre y modifique las siguientes líneas:


#PermitRootLogin yes
PermitRootLogin no

#PasswordAuthentication yes
PasswordAuthentication no
    

Guarde los cambios (Ctrl+O, Enter) y salga (Ctrl+X). Reinicie el servicio SSH:


sudo systemctl restart sshd
    

Importante: Antes de cerrar la sesión SSH actual, abra una nueva ventana de terminal e intente conectarse al VPS utilizando la clave SSH. Asegúrese de que todo funciona para no perder el acceso al servidor.

5. Configuración del firewall UFW (Uncomplicated Firewall)

UFW es una interfaz fácil de usar para iptables. Lo configuraremos para permitir solo el tráfico necesario:


sudo apt install ufw -y                 # Instala UFW
sudo ufw default deny incoming          # Deniega todo el tráfico entrante por defecto
sudo ufw default allow outgoing         # Permite todo el tráfico saliente por defecto

sudo ufw allow ssh                      # Permite SSH (puerto 22)
sudo ufw allow 80/tcp                   # Permite HTTP (para Caddy/interfaz web de AdGuard Home)
sudo ufw allow 443/tcp                  # Permite HTTPS (para Caddy/interfaz web de AdGuard Home)
sudo ufw allow 53/tcp                   # Permite DNS (para AdGuard Home)
sudo ufw allow 53/udp                   # Permite DNS (para AdGuard Home)
sudo ufw enable                         # Habilita el firewall
sudo ufw status verbose                 # Verifica el estado
    

Si utiliza un puerto no estándar para SSH, permítalo en lugar del 22. Después de habilitar UFW, el sistema puede pedir confirmación, escriba y.

6. Instalación de Fail2Ban

Fail2Ban escanea los registros del servidor en busca de actividad sospechosa (por ejemplo, múltiples intentos fallidos de inicio de sesión SSH) y bloquea automáticamente las direcciones IP de los infractores utilizando el firewall.


sudo apt install fail2ban -y            # Instala Fail2Ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local # Crea una copia local del archivo de configuración
sudo nano /etc/fail2ban/jail.local      # Edita la configuración
    

En el archivo jail.local puede configurar parámetros, por ejemplo, bantime (tiempo de bloqueo) y findtime (período en el que se cuentan los intentos fallidos). Asegúrese de que la sección [sshd] esté activa (enabled = true). También puede añadir su dirección IP a ignoreip para que nunca se le bloquee:


[DEFAULT]
ignoreip = 127.0.0.1/8 ::1 ВАШ_ДОМАШНИЙ_IP
bantime = 1d
findtime = 10m
maxretry = 5

[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
    

Guarde los cambios y reinicie Fail2Ban:


sudo systemctl enable fail2ban          # Habilita el inicio automático al arrancar el sistema
sudo systemctl restart fail2ban         # Reinicia el servicio
sudo fail2ban-client status             # Verifica el estado
    

Su servidor ahora está configurado y protegido de forma básica. Puede proceder a la instalación de AdGuard Home.

Instalación de software — paso a paso

Diagrama: Instalación de software — paso a paso
Diagrama: Instalación de software — paso a paso

Instalaremos AdGuard Home directamente desde los lanzamientos oficiales, lo cual es el método recomendado para la mayoría de los usuarios. Esto garantiza una fácil instalación y actualización.

1. Instalación de utilidades necesarias

Para descargar y descomprimir archivos, necesitaremos wget o curl, así como unzip:


sudo apt install wget unzip -y  # Instala las utilidades necesarias
    

2. Descarga de la última versión de AdGuard Home

A partir de 2026, AdGuard Home está en desarrollo activo. Supondremos que la versión estable actual será aproximadamente v0.108.2 o v0.109.0. Siempre puede verificar la última versión en la página de lanzamientos de GitHub: https://github.com/AdguardTeam/AdGuardHome/releases.

Determine la arquitectura de su VPS (normalmente linux-amd64):


dpkg --print-architecture # Muestra la arquitectura, por ejemplo, amd64
    

Descargaremos el archivo. Reemplace v0.108.2 y linux-amd64 con los valores actuales si son diferentes:


wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.108.2/AdGuardHome_linux_amd64.zip # Descarga el archivo de AdGuard Home
    

3. Descompresión e instalación de AdGuard Home

Descomprimiremos el archivo en el directorio /opt/AdGuardHome. Este es un lugar común para software de terceros.


sudo mkdir -p /opt/AdGuardHome              # Crea el directorio para AdGuard Home
sudo unzip AdGuardHome_linux_amd64.zip -d /opt/AdGuardHome # Descomprime el archivo en el directorio creado
rm AdGuardHome_linux_amd64.zip              # Elimina el archivo descargado
    

4. Instalación de AdGuard Home como servicio del sistema

AdGuard Home viene con un script conveniente para instalarlo como un servicio del sistema (systemd). Esto garantiza que AdGuard Home se iniciará automáticamente al arrancar el servidor y podrá ser gestionado con los comandos estándar de systemctl.


sudo /opt/AdGuardHome/AdGuardHome -s install # Instala AdGuard Home como servicio systemd
    

Después de ejecutar este comando, AdGuard Home se instalará, iniciará y configurará para ejecutarse automáticamente al arrancar el sistema.

5. Verificación del estado de AdGuard Home

Asegúrese de que el servicio AdGuard Home esté iniciado y funcionando correctamente:


sudo systemctl status AdGuardHome # Verifica el estado del servicio AdGuard Home
    

La salida debería mostrar Active: active (running). Si el servicio no está iniciado, puede intentar iniciarlo manualmente:


sudo systemctl start AdGuardHome # Inicia el servicio AdGuard Home
    

6. Configuración inicial de AdGuard Home a través de la interfaz web

Por defecto, AdGuard Home inicia su interfaz web en el puerto 3000. Ábrala en su navegador, utilizando la dirección IP de su VPS:


http://ВАШ_IP_АДРЕС_VPS:3000
    

En el primer paso, se le pedirá que seleccione las interfaces de red en las que AdGuard Home escuchará las solicitudes DNS y la interfaz web. Para el servidor DNS, seleccione 0.0.0.0 (todas las interfaces) para escuchar en el puerto 53. Para la interfaz web, también seleccione 0.0.0.0 e indique el puerto 80 (o deje el 3000 si va a utilizar un proxy inverso, como haremos más adelante con Caddy).

Luego, cree un nombre de usuario y una contraseña segura para acceder al panel de control de AdGuard Home. Guarde estos datos en un lugar seguro.

Una vez completada la configuración, AdGuard Home se reiniciará y podrá iniciar sesión en el panel de control.

Configuración

Diagrama: Configuración
Diagrama: Configuración

Después de la instalación básica de AdGuard Home, es necesario realizar una configuración adicional para garantizar la seguridad y un funcionamiento óptimo. Configuraremos HTTPS para la interfaz web usando Caddy y verificaremos su operatividad.

1. Configuración del servidor DNS en los dispositivos

Para que AdGuard Home comience a filtrar el tráfico, debe especificar su dirección IP como servidor DNS en sus dispositivos o en el router:

  • En el router: Este es el método preferido, ya que aplicará la filtración a todos los dispositivos de su red automáticamente. Acceda a la configuración de su router (normalmente 192.168.0.1 o 192.168.1.1), busque la sección "Configuración WAN" o "Configuración DHCP/DNS" y especifique la dirección IP de su VPS como servidor DNS principal. También puede especificar un servidor DNS secundario (por ejemplo, 1.1.1.1 o 8.8.8.8) en caso de que su AdGuard Home no esté disponible.
  • En el ordenador (Windows/macOS/Linux): En la configuración de red de su sistema operativo, establezca manualmente la dirección IP del VPS como servidor DNS principal.
  • En el smartphone/tablet: En la configuración de la red Wi-Fi, puede especificar una dirección IP estática y un servidor DNS.

Después de cambiar el servidor DNS, borre la caché DNS en el dispositivo (por ejemplo, ipconfig /flushdns en Windows o reinicie el dispositivo).

2. Instalación y configuración de Caddy para HTTPS

Para un acceso seguro a la interfaz web de AdGuard Home a través de HTTPS, utilizaremos Caddy, un servidor web moderno que gestiona automáticamente los certificados Let's Encrypt. Esto es significativamente más sencillo que configurar Certbot con Nginx/Apache.

2.1. Instalación de Caddy

Añadiremos el repositorio de Caddy y lo instalaremos:


sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https # Instalamos los paquetes necesarios
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg # Añadimos la clave GPG
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list # Añadimos el repositorio
sudo apt update                                 # Actualizamos la lista de paquetes
sudo apt install caddy -y                       # Instalamos Caddy
    
2.2. Configuración de Caddyfile

Configuraremos Caddy como un proxy inverso para AdGuard Home. Supongamos que tiene un nombre de dominio (por ejemplo, adguard.yourdomain.com) que apunta a la dirección IP de su VPS. Si no tiene un dominio, puede usar solo la dirección IP, pero HTTPS solo funcionará con un certificado autofirmado, o no funcionará en absoluto. Para un Let's Encrypt completo, se necesita un dominio.

Edite el archivo /etc/caddy/Caddyfile:


sudo nano /etc/caddy/Caddyfile
    

Reemplace el contenido existente con lo siguiente (reemplace adguard.yourdomain.com con su dominio real):


adguard.yourdomain.com {
    reverse_proxy 127.0.0.1:3000
    tls {
        dns cloudflare {ВАШ_CLOUDFLARE_API_ТОКЕН} # Opcional: si su dominio está en Cloudflare y desea autenticación DNS-01
    }
}
    

Explicaciones:

  • adguard.yourdomain.com: Su nombre de dominio, a través del cual AdGuard Home será accesible. Caddy obtendrá automáticamente un certificado Let's Encrypt para él.
  • reverse_proxy 127.0.0.1:3000: Caddy reenviará las solicitudes del puerto 80/443 al puerto local 3000, donde se ejecuta la interfaz web de AdGuard Home.
  • tls { dns cloudflare {ВАШ_CLOUDFLARE_API_ТОКЕН} }: Esta sección es opcional. Es necesaria si desea utilizar la autenticación DNS-01 para Let's Encrypt (por ejemplo, si su servidor está detrás de un NAT o si desea obtener un certificado wildcard). Para ello, debe instalar el plugin de Caddy para Cloudflare y obtener un token de API. Si simplemente usa un dominio que apunta a su VPS, esta sección puede eliminarse, Caddy usa la autenticación HTTP-01 por defecto.

Guarde los cambios y salga. Ahora, verifique la configuración de Caddy y reinícielo:


sudo caddy validate --config /etc/caddy/Caddyfile # Verificamos la sintaxis de Caddyfile
sudo systemctl reload caddy                        # Recargamos Caddy para aplicar los cambios
    

Ahora podrá acceder a la interfaz web de AdGuard Home en https://adguard.yourdomain.com.

3. Verificación de la operatividad

Después de todas las configuraciones, nos aseguraremos de que AdGuard Home funcione y filtre el tráfico:

  • Verificación de consultas DNS:

    En el ordenador local que utiliza su AdGuard Home como DNS, ejecute el comando:

    
    nslookup example.com SU_DIRECCIÓN_IP_VPS # Verificamos que las consultas pasen por su AdGuard Home
                

    También puede verificar esto en un sitio web como dnsleaktest.com.

  • Verificación del bloqueo de anuncios:

    Abra un sitio web con muchos anuncios en el navegador (por ejemplo, un portal de noticias) y asegúrese de que los anuncios no se muestren. En el panel de control de AdGuard Home (https://adguard.yourdomain.com), vaya a la sección "Consultas" (Query Log) y asegúrese de que se muestren los dominios bloqueados.

  • Verificación de la disponibilidad de la interfaz web:

    Asegúrese de poder acceder al panel de control de AdGuard Home a través de HTTPS mediante su dominio y de poder iniciar sesión.

4. Configuraciones adicionales de AdGuard Home (en la interfaz web)

  • Listas de filtros (Filters -> DNS blocklists): Añada listas de bloqueo adicionales. Recomendadas: OISD, AdAway, Easylist. No se exceda, demasiadas listas pueden ralentizar el rendimiento.
  • Configuración de DNS (Settings -> DNS settings):
    • Upstream DNS servers: Especifique servidores DNS fiables y rápidos para resolver las consultas que AdGuard Home no puede bloquear (por ejemplo, Cloudflare DNS 1.1.1.1 y 1.0.0.1, Google DNS 8.8.8.8 y 8.8.4.4, o Quad9 9.9.9.9 y 149.112.112.112). Se recomienda usar DNS-over-HTTPS (DoH) o DNS-over-TLS (DoT) para mejorar la privacidad, por ejemplo: https://cloudflare-dns.com/dns-query o tls://dns.quad9.net.
    • Bootstrap DNS servers: Para la resolución de nombres de los servidores upstream. Puede dejarlo por defecto o especificar el mismo Cloudflare/Google.
    • Enable DNSSEC: Habilítelo para seguridad adicional.
    • Enable EDNS Client Subnet (ECS): Desactívelo para ocultar su subred de los servidores upstream y mejorar la privacidad (puede afectar a la CDN).
  • Configuración de DHCP (Settings -> DHCP settings): Si desea que AdGuard Home gestione el DHCP en su red, puede habilitarlo aquí. Sin embargo, esto requiere deshabilitar el DHCP en su router. Para la mayoría de los usuarios, es más sencillo dejar el DHCP en el router y simplemente especificar AdGuard Home como servidor DNS.
  • Clientes (Clients): Puede añadir y configurar reglas para clientes (dispositivos) individuales en su red para aplicar diferentes reglas de filtrado.

Copias de seguridad y mantenimiento

Diagrama: Copias de seguridad y mantenimiento
Diagrama: Copias de seguridad y mantenimiento

Las copias de seguridad regulares y el mantenimiento oportuno son cruciales para cualquier servidor. AdGuard Home almacena sus datos en un único directorio, lo que simplifica la copia de seguridad.

1. Qué respaldar

El directorio de datos principal de AdGuard Home se encuentra por defecto en /opt/AdGuardHome/data. Contiene:

  • Archivo de configuración (AdGuardHome.yaml)
  • Bases de datos de estadísticas y registros de consultas DNS
  • Listas de filtros, reglas personalizadas y otras configuraciones

Todos estos datos son necesarios para una recuperación completa de AdGuard Home. También es útil tener una copia de seguridad del archivo Caddyfile si usa Caddy.

2. Script simple de copia de seguridad automática

Crearemos un script simple para archivar el directorio de datos de AdGuard Home y el Caddyfile. Usaremos tar para el archivado.


sudo nano /usr/local/bin/backup_adguard.sh
    

Añada el siguiente código (reemplace ваш_пользователь con el nombre de su usuario):


#!/bin/bash

# Directorio donde se almacenarán las copias de seguridad
BACKUP_DIR="/home/ваш_пользователь/adguard_backups"
# Directorio de datos de AdGuard Home
ADGUARD_DATA_DIR="/opt/AdGuardHome/data"
# Archivo de configuración de Caddy
CADDYFILE="/etc/caddy/Caddyfile"
# Nombre del archivo de copia de seguridad
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/adguard_home_backup_${TIMESTAMP}.tar.gz"

echo "Iniciando copia de seguridad de AdGuard Home en ${TIMESTAMP}..."

# Creamos el directorio para las copias de seguridad si no existe
mkdir -p "${BACKUP_DIR}"

# Creamos el archivo
sudo tar -czf "${BACKUP_FILE}" "${ADGUARD_DATA_DIR}" "${CADDYFILE}"

# Verificamos si el archivo se creó correctamente
if [ $? -eq 0 ]; then
    echo "Copia de seguridad creada con éxito: ${BACKUP_FILE}"
    # Eliminamos las copias de seguridad antiguas (conservamos solo las de los últimos 7 días)
    find "${BACKUP_DIR}" -type f -name "adguard_home_backup_*.tar.gz" -mtime +7 -delete
    echo "Copias de seguridad antiguas limpiadas."
else
    echo "¡Error al crear la copia de seguridad!"
fi

echo "Proceso de copia de seguridad finalizado."
    

Haga el script ejecutable:


sudo chmod +x /usr/local/bin/backup_adguard.sh
    

3. Configuración de Cron para el inicio automático

Añadiremos una tarea en Cron para ejecutar el script de copia de seguridad diariamente. Por ejemplo, a las 3:00 de la madrugada:


sudo crontab -e
    

Añada la siguiente línea al final del archivo:


0 3 * * * /usr/local/bin/backup_adguard.sh >> /var/log/adguard_backup.log 2>&1
    

Esto ejecutará el script diariamente a las 03:00 y registrará la salida en el archivo de registro /var/log/adguard_backup.log.

4. Dónde almacenar las copias de seguridad (almacenamiento externo)

Almacenar las copias de seguridad en el mismo VPS que los datos originales es arriesgado. Si el VPS falla, perderá tanto los datos como las copias de seguridad. Se recomienda utilizar almacenamiento externo:

  • Almacenamiento compatible con S3: Servicios en la nube como Amazon S3, DigitalOcean Spaces, Backblaze B2, Scaleway Object Storage. Puede usar utilidades como s3cmd o rclone para la carga automática de copias de seguridad.
  • VPS separado: Alquilar un VPS pequeño y económico para almacenar las copias de seguridad y usar rsync o scp para transferirlas.
  • Servidor local/NAS: Si tiene un servidor doméstico o un almacenamiento en red, puede configurar rsync para sincronizar las copias de seguridad con el VPS.

Por ejemplo, para S3 con rclone (después de su instalación y configuración):


# Añada al script backup_adguard.sh después de crear el archivo
rclone copy "${BACKUP_FILE}" "remote_s3_storage:adguard-backups/"
    

5. Actualizaciones: Rolling vs. Ventana de mantenimiento

Las actualizaciones regulares son importantes para la seguridad y para obtener nuevas funciones.

  • Actualización del sistema operativo: Ejecute sudo apt update && sudo apt upgrade -y al menos una vez al mes. Puede ser necesario reiniciar el servidor después de las actualizaciones del kernel.
  • Actualización de AdGuard Home:

    AdGuard Home tiene un mecanismo de actualización integrado a través de la interfaz web (sección "Settings" -> "General settings" -> "Update channel"). Seleccione el canal "Stable" y verifique regularmente la disponibilidad de actualizaciones. La actualización suele tardar unos segundos y reinicia el servicio.

    Alternativamente, puede actualizar manualmente descargando la nueva versión y reemplazando el binario, luego reiniciando el servicio. ¡Siempre haga una copia de seguridad antes de una actualización manual!

    
    sudo systemctl stop AdGuardHome # Detenemos el servicio
    wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.109.0/AdGuardHome_linux_amd64.zip # Descargamos la nueva versión
    sudo unzip -o AdGuardHome_linux_amd64.zip -d /opt/AdGuardHome # Descomprimimos con reemplazo
    rm AdGuardHome_linux_amd64.zip # Eliminamos el archivo
    sudo systemctl start AdGuardHome # Iniciamos el servicio
                
  • Actualización de Caddy: Caddy se actualiza junto con los paquetes del sistema a través de apt upgrade, ya que hemos añadido su repositorio.

Para servicios críticamente importantes, es mejor realizar las actualizaciones en una "ventana de mantenimiento" (maintenance window), cuando la carga es mínima y tiene tiempo para verificar y revertir en caso de problemas. Para AdGuard Home en una red doméstica, esto no es tan crítico, pero siempre se recomienda hacer una copia de seguridad primero.

Solución de problemas + Preguntas frecuentes

AdGuard Home no bloquea la publicidad

Qué verificar: Asegúrese de que la dirección IP de su VPS esté correctamente configurada como servidor DNS en sus dispositivos o router. Verifique que AdGuard Home esté en ejecución (sudo systemctl status AdGuardHome) y escuchando en el puerto 53 (sudo netstat -tulnp | grep 53). Acceda a la interfaz web de AdGuard Home y revise el "Registro de consultas" (Query Log) — deberían mostrarse las consultas DNS y su estado (bloqueadas/permitidas). Asegúrese de tener las listas de bloqueo activadas en "Filtros DNS".

Cómo solucionarlo: Reinicie AdGuard Home (sudo systemctl restart AdGuardHome). Limpie la caché DNS en su dispositivo. Intente usar otra lista de bloqueo o añada el dominio manualmente en "Reglas de filtrado personalizadas". Asegúrese de que UFW permita el tráfico en el puerto 53 (TCP/UDP).

No puedo acceder a la interfaz web de AdGuard Home por HTTPS

Qué verificar: Asegúrese de que Caddy esté en ejecución y activo (sudo systemctl status caddy). Verifique el archivo /etc/caddy/Caddyfile en busca de errores de sintaxis (sudo caddy validate --config /etc/caddy/Caddyfile). Asegúrese de que el nombre de dominio que está utilizando apunte correctamente a la dirección IP de su VPS. Revise los registros de Caddy (sudo journalctl -u caddy -f) en busca de errores al obtener el certificado Let's Encrypt. Asegúrese de que UFW permita el tráfico en los puertos 80 y 443.

Cómo solucionarlo: Corrija los errores en Caddyfile. Si hay un problema con el certificado, asegúrese de que su dominio esté configurado correctamente y sea accesible desde internet. Intente deshabilitar UFW temporalmente (sudo ufw disable) para verificar si es la causa (¡pero no olvide volver a habilitarlo!).

¿Qué configuración mínima de VPS es adecuada?

Qué verificar: Para AdGuard Home, un VPS con 1 núcleo de CPU, 512 MB de RAM y 10 GB de SSD es mínimamente suficiente. Esto será suficiente para dar servicio a una pequeña red doméstica (hasta 50 dispositivos) con un conjunto básico de listas de filtros. Sin embargo, para un funcionamiento más cómodo y la posibilidad de ejecutar servicios adicionales en el mismo VPS, se recomiendan 2 núcleos de CPU, 1 GB de RAM y 25 GB de SSD. Esto proporcionará un margen de rendimiento y estabilidad.

Cómo solucionarlo: Si su VPS actual no cumple con los requisitos mínimos, considere actualizar su plan o migrar a un VPS más potente. La falta de recursos puede provocar una ralentización del servidor DNS e inestabilidad.

¿Qué elegir — VPS o dedicado para esta tarea?

Qué verificar: Para configurar AdGuard Home en la gran mayoría de los casos (red doméstica, pequeña empresa, uso personal), un VPS es la opción óptima. Es significativamente más económico, más fácil de gestionar y proporciona recursos más que suficientes. Los servidores dedicados se requieren para proyectos muy grandes, de alta carga o con requisitos específicos de hardware.

Cómo solucionarlo: Si está considerando AdGuard Home para uso personal o de pequeña escala, elija un VPS sin dudarlo. Los servidores dedicados son una solución excesiva para esta tarea, a menos que planee usarlo para otros fines mucho más intensivos en recursos.

AdGuard Home consume demasiada memoria/CPU

Qué verificar: Acceda a la interfaz web de AdGuard Home y verifique la cantidad de listas de filtros activas. Demasiadas listas o listas muy grandes (por ejemplo, con millones de entradas) pueden consumir recursos significativos. Revise el "Registro de consultas" en busca de un número anormalmente alto de solicitudes o un ataque DDoS a su servidor DNS.

Cómo solucionarlo: Reduzca la cantidad de listas de filtros activas. Desactive las que no necesite o que se superpongan mucho. Limpie la caché DNS de AdGuard Home. Si la carga es causada por solicitudes externas, revise la configuración de UFW y asegúrese de que el acceso al puerto 53 esté abierto solo para direcciones IP de confianza (si no es un DNS público). Si se trata de una carga constantemente alta de clientes legítimos, es posible que necesite un VPS con más RAM.

No puedo actualizar AdGuard Home a través de la interfaz web

Qué verificar: Asegúrese de que AdGuard Home tenga permisos de escritura en el directorio donde está instalado (/opt/AdGuardHome). Revise los registros de AdGuard Home en busca de errores al intentar la actualización. Asegúrese de que el servidor tenga acceso a GitHub para descargar las actualizaciones.

Cómo solucionarlo: Intente realizar la actualización manualmente, como se describe en la sección "Copias de seguridad y mantenimiento". Asegúrese de que el usuario bajo el cual se ejecuta AdGuard Home (normalmente adguardhome) tenga los permisos necesarios. Si el problema persiste, es posible que sea un problema temporal con los servidores de actualización de AdGuard Home o GitHub.

Conclusiones y próximos pasos

Diagrama: Conclusiones y próximos pasos
Diagrama: Conclusiones y próximos pasos

¡Felicidades! Ha desplegado y configurado con éxito AdGuard Home en su VPS, creando un potente y privado servidor DNS para bloquear anuncios y rastreadores. Ahora, todos los dispositivos de su red que utilicen su AdGuard Home funcionarán más rápido y de forma más segura, y usted tendrá control total sobre el filtrado de tráfico.

Próximos pasos:

  • Integración con VPN: Si tiene un servidor VPN en el mismo o en otro VPS (por ejemplo, WireGuard u OpenVPN), configúrelo para que utilice su AdGuard Home como DNS. Esto le permitirá disfrutar de los beneficios del bloqueo de anuncios incluso fuera de su red doméstica.
  • Monitorización y optimización: Revise regularmente las estadísticas de AdGuard Home, añada o elimine listas de filtros, y ajuste finamente las reglas para lograr un equilibrio óptimo entre el bloqueo y la ausencia de falsos positivos.
  • Funciones avanzadas: Explore las funciones adicionales de AdGuard Home, como DNS-over-HTTPS (DoH), DNS-over-TLS (DoT) o DNSCrypt para mejorar la privacidad y seguridad de sus consultas DNS a los servidores upstream.

¿Te fue útil esta guía?

Configuración de AdGuard Home en VPS para bloquear anuncios y rastreadores en toda la red
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.