Bloqueo de publicidad y seguimiento con AdGuard Home

¿Qué es AdGuard Home?

AgGuard Home es un sistema gratuito de bloqueo de publicidad y seguimiento a nivel de red, al estilo del quizás más afamado Pi-Hole, con cierto nivel de control parental.

El nivel de red se refiere a que se bloquean anuncios e intentos de rastreo en cualquier dispositivo conectado a la misma red. Así, dispositivos que no admiten bloqueadores -televisores, altavoces inteligentes, sistemas IoT, etc.- también se benefician de sus capacidades de bloqueo de publicidad y seguimiento.

AgGuard actúa como servidor DNS, al igual que lo hace NxFilter, de quién ya escrribimos un artículo.

Al contrario que Pi-Hole, AdGuard sí ofrece cierto nivel de control parental, pero no está a la misma altura que el de NxFilter.

Debido a que AgGuard bloquea la salida hacia dominios donde se encuentran los anuncios y  rastreadores cuando nuestro dispositivo hace una petición.

A diferencia de las extensiones de navegador que sirven al mismo propósito (sólo desde el navegador), que escanean cada página que visitas y luego bloquean, éstos no se descargan. Ésto permite acelerar la navegación, porque se descargan menos datos, y un menor consumo de batería en dispositivos móviles.

¿Por qué instalar un sistema de bloqueo de publicidad y seguimiento?

Durante el tiempo que estuve probando NXFilter, me sorprendió la cantidad de peticiones a direcciones web que mi televisor realizaba.

No quiero que mi televisor informe a nadie sobre mis hábitos de visualización. Cuando lo adquirí nadie me dijo que iba a controlarme; si quieren saber algo de mí deberían solicitar mi consentimiento expreso o pagarme por ello, no obtenerlo gratis y subrepticiamente.

Lo mismo ocurre cuando visitas páginas web; se lanzan multitud de peticiones para hacer un seguimiento de dónde estás, cuánto tiempo estás, dónde haces un click, etc.

Respecto a los anuncios, siempre hemos convivido con ellos; antes no enturbiaban la experiencia de navegación, pero ahora te inundan, y el contenido de las páginas tienes que buscarlo como aguja en un pajar de anuncios.

Los anuncios no solo echan abajo tu experiencia de navegación; requieren de más ciclos de CPU para cargar la página y, por ende, ralentizan el acceso a la web y castigan la batería de los dispositivos móviles.

¿Necesitas más razones para el bloqueo de publicidad y seguimiento?

Recomendaciones previas

AdGuard, al igual que otros sistemas de bloqueo de publicidad y seguimiento y control parental a nivel de red (como NxFilter o Pi-Hole), sólo funciona cuando estás conectado a su misma red. No funcionará en un dispositivo si estás usando datos móviles en lugar de la WiFi de tu casa, ni cuando estés conectado a puntos de acceso públicos, de la oficina, etc. 

Podrías instalar un servidor VPN en tu casa  y conectarte a tu red doméstica; de este modo es como si estuvieses en casa y sí estarías protegido con tu DNS en todas partes.

AdGuard puede instalarse en máquina Linux (éste va a ser mi caso, usando una Raspberry Pi) , macOS y Windows, pero no debes olvidar que la máquina donde resida debe estar siempre encendida; si la apagas, dejas de tener tu DNS.

Habitualmente las IP te las proporciona tu router a través del DHCP. El «problema» radica en que esas IP son dinámicas (hoy tu tableta tiene una IP y mañana, quizás, una distinta). Esto es un inconveniente si quieres ejercer control sobre cada dispositivo; es recomendable «poner orden» en las IP’s de nuestros dispositivos y darles siempre la misma, es decir, usar IP’s estáticas.

Instalación de AdGuard Home en Docker

He optado por la instalación de un contenedor en Docker, en una Raspberry Pi, porque así me es más fácil experimentar, pero tú puedes hacerlo directamente, sin Docker.

Puedes seguir las instrucciones que hay en la web del contenedor Docker, pero te aconsejo que veas que he cambiado ligeramente el comando de ejecución del contenedor:

sudo docker pull adguard/adguardhome
mkdir docker-persistent-volumes
cd docker-persistent-volumes
mkdir adguard
cd adguard
mkdir workdir
mkdir confdir
docker run --name adguardhome -v /docker-persistent-volumes/adguard/workdir:/opt/adguardhome/work -v /docker-persistent-volumes/adguardconfdir:/opt/adguardhome/conf -p 53:53/tcp -p 53:53/udp -p 80:80/tcp -p 443:443/tcp -p 853:853/tcp -p 3000:3000/tcp -d adguard/adguardhome

En el run del docker no activo los puertos de DHCP, es decir, no le paso los parámetros “-p 67:67/udp -p 68:68/tcp -p 68:68/udp” dado que como DHCP ya uso en la Raspberry la solución isc-dhcp-server. Si lo hiciésemos, habría conflicto. Si tu router es quien hace de servidor DHCP (como suele ser normal) entiendo que también deberías abstenerte de pasarle ese parámetro.

Instalación de AdGuard Home en sistema

Para aquellos que vayáis a instalar desde Linux podéis hacerlo a través de la Snap Store, siguiendo las instrucciones que se dan.

Podéis segiuir la instrucciones de instalación para macOS desde esta otra página, y si soys usuarios de Windows, desde esta otra.

Arranque de AdGuard Home

Accede a http://X.X.X.X:3000, donde X.X.X.X es la IP de la máquina donde has desplegado AdGuard Home. Se te dará la bienvenida y se iniciará el proceso de arranque en el que de lo único quje debes de preocuparte es de dar un nombre y contraseña de usuario para administrar AdGuard Home.

Finalizado el arranque, ya estamos en la pantalla principal. Ésta muestra algunos gráficos y estadísticas que dan una idea de cómo está trabajando.

El menú de opciones está estructurado de forma lógica. Lo que cada uno de estos menús pueden hacer se explica en este artículo de AdGuard, si bien echaremos un vistazo rápido a algunos de ellos.

Configuración de AdGuard

Vamos a ver por encima las opciones más importantes para configurar AdGuard.

Configuración básica: políticas

Desde el menú Settings General Settings podemos establecer la política general para todos los clientes del servicio, entendiendo por cliente cualquier dispositivo de la red.

A la marca de bloqueo con filtros, que ya viene marcado por defecto y que aplicará las reglas de bloqueo, le añadimos la de bloqueo de web segura, que compara las solicitudes con las listas de dominios maliciosos y de phishing y las bloquea.

Desde el menú Filters Blocked services podremos bloquear, de forma general, servicios específicos, como YouTube, Facebook, etc. En mi caso, todos están permitidos.

Podemos establecer políticas específicas para cada cliente si queremos que éstos tengan un comportamiendo distinto al de las políticas generales establecidas.

Configuración básica: clientes y políticas particulares

Las IP son poco descriptivas para saber quién se está conectando y qué le estamos bloqueando. Darles un nombre de la persona o grupo que hay detrás de esas IP es lo siguiente que deberíamos hacer.

Desde Settings Client Settings, pulsando sobre el botón Add Client podremos ir creando esos nombre y asignándoles una o varias IP’s

Para cada cliente vamos a usar las políticas generales, dejamos marcado “Use global settings”.

Podemos establecer políticas específicas para cada cliente, si queremos que éstos tengan un comportamiento distinto al de las políticas generales. Éstas pasarán por encima de las que hayas definido a nivel general.

Establecer políticas particulares, como en el caso de niños, permite reforzar las restricciones, marcando “Enforce safe search» (elimina contenido obsceno de los motores de búsqueda) y “Use AdGuard parental control web service“ (bloquea sitios web de conteniudo para adultos).

Podemos bloquear incluso servicios específicos desde el apartado «Block specific services» del cliente que estamos definiendo, como WhatsApp. Facebook, etc.

Configuración básica: DNS externos

AdGuard Home es un intermediario que reenvía las consultas DNS a otros servidores DNS que son los que realmente resuelven. Los hay de 2 tipos: los que pueden recibir esas peticiones de forma enciptada y los que no.

Podemos establecer los DNS a usar desde Settings DNS Settings.

En mi caso uso los DNS de CloudFlare abiertos, pero puedes optar por usar DNS encriptados. 

Además hay DNS que también actúan como filtros, aplicando controles parentales o protegiéndote de páginas web maliciosas; si los usas obtienes un doble filtrado: el que hace Adguard Home y el DNS que realmente resuleve.

AdGuard nos proporciona una lista de muchos de ellos para que escojas el que más guste.

Configuración básica: listas de bloqueo

Las listas de bloqueo se acceden desde Filters -> DNS blocklists. Constituyen las listas de recursos que se van a bloquear. Básicamente: si pedimos por una URL como elpais.com, si ésta está en alguna lista activa, se bloqueará su acceso.

AdGuard Home viene preconfigurado con algunas listas de bloqueo, una de las cuales, AdGuard DNS filter, es la activa (‘enabled’). Éstas pueden ser insuficientes para ti y no bloquear todo lo que te gustaría; puedes añadir otras listas pulsando el botón Add blocklist.

Una de las listas más agresivas que he encontrado, a la hora de aplicar bloqueos, es la de hl2guide, que ya incluye la de AdGuard.

Configuración de los dispositivos

El objetivo es que todos los dispositivos de la red pasen por nuestro filtro en lugar de ir directamente al DNS del proveedor de Internet u otros DNS que podamos tener configurados. Para ello deberemos preparar a estos dispositivos.

Si el router os da opción, en él indicaremos la IP del equipo donde está instalado AdGuard Home. Así el router redirigirá todas las peticiones de salida a Intenet a vuestro filtro DNS.

Entrad en la configuración del router y buscad… cada router es diferente, pero puede que ponga algo como «Domain Name Server Address».

En mi caso, mi router de operadora no da esta posibilidad, así que tengo que configurar cada dispositivo para que utilice  AdGuard Home, o bien tener mi propio servidor DHCP y hacerlo desde allí (es como lo tengo montado y algo que veremos en un próximo artículo).

Podéis ver cómo configurar los dispositivos uno a uno en el artículo sobre NxFIlter.

Comprobación del funcionamiento de Adguard Home

Si el filtrado de Adguard Home funciona correctamente deberíamos poder bloquear sitios web como doubleclick.net (puedes ver aquí una explicación de qué es este servicio).

Teclea en el teminal lo siguiente:

host doubleclick.net

Si te sale algo así, es que la cosa no está funcionando, porque la lista de bloqueo por defecto no está bloquenado ese dominio.

Si te sale algo así, es que todo está funcionando y que puedes ir a tomarte unas birras para celebrarlo.

Conclusión final

Disponer de un sistema de bloqueo de publicidad y seguimiento como Adguard Home que dé cierto control parental y privacidad, te evite caer en sitios maliciosos y nos libre de anuncios es una inversión de tiempo que merece la pena.

Observarás que existen ciertas diferencias con respecto a NxFilter. No puedo decirte cuál es mejor… eso depende, pero yo he optado por retirar NXFilter en favor de AdGuard Home; quizás este tema me dé pie a escribir un nuevo artículo, así que estate atento.

2 comentarios

Los comentarios están cerrados.