Blog personal donde guardo mis notas sobre tecnología

OpenWrt: Instalando Adguard

Carlos M.

Adguard Home, es una alternativa a Pi-Hole, que podemos instalar en nuestro router con OpenWrt. Para ello nuestro router con OpenWrt necesita de al menos 20 MB de almacenamiento libre y aproximadamente 100 MB de memoria RAM libre aunque lo puedes ejecutar desde memoria USB. La instalación la he realizado sobre un router Lynsys WRT320ACM

Adguard Home bloquea mediante las DNS los anuncios, rastreadores, etc. Puedes copiar tus listas de o descargarlas de otras fuentes. Además podemos utilizar expresiones regulares (REGEX) generadas a partir de varias fuentes para el filtrado avanzado con AdGuard Home.

Adguard Home no necesita dependencias ni librerías adicionales, es un solo archivo binario que se puede ejecutar desde una memoria USB.

Viene con su propia interfaz web y su servidor DNS se puede funcioanr junto a dnsmasq, el servidor que viene instalado por defecto en OpenWrt.

De forma predeterminada soporta DNS sobre TLS y HTTPS.

Adguard Home se puede iniciar automáticamente a través de /etc/rc.local o simplemente ejecutando el binario

Está programado en Go, por lo que es compatible con muchas arquitecturas: https://github.com/AdguardTeam/AdGuardHome/releases

Instalación: #

La instalación es muy sencilla , tal solo hay que descargar la versión correspondiente a tu arquitectura, descomprimir y ejecutar el binario ./AdguardHome y configurarlo a de la interfaz web.

Conecta vía ssh a tu router y ejecuta

cd $HOME
wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_arm.tar.gz
tar xvf AdGuardHome_linux_arm.tar.gz

Esto lo que hará es descargar y desempaqueta AdGuard Home en un directorio llamado AdGuardHome, para ejecutarlo simplemente desde la terminal

cd AdGuardHome
./AdGuardHome

Inicio automático #

Para que Adguard Home se inicie al arrancar, añadimos el binario a rc.local

Configuración Inicial #

Una vez arrancado para configurarlo debemos de acceder desde nuestro navegador web a la direrccion de nuestro router y el puerto 3000, en mi caso http://192.168.2.1:3000/

Configuramos el puerto de escucha para la interfaz web, en el ejemplo 8080 ya que el 80 es utilizado por la interfaz LuCi de OpenWrt

Por defecto OpenWrt viene con dnsmasq como servidor DNS por lo que el puerto 53 esta ocupado

Selecciono el puerto 5353

Configuramos las credenciales de acceso

La siguiente pantalla simplemente nos informa de como configurar los diferentes dispositivos con Adguard Home como el router, clientes de Android, etc

Y con eso ya hemos terminado con la configuración inicial

Configuración Adicional #

Ajustando DNS #

Tenemos que configurar OpenWrt para que utilice el nuevo servidor DNS, que corre en el puerto 5353

DNS mediante TLS #

Prevenir la fuga de DNS #

Forzamos a que los nuevos clientes que se conecten al router utilicen el puerto del nuevo servidor de DNS, 5353.

Para ello añadimos al fichero /etc/firewall.user

iptables -t nat -A PREROUTING -i br-lan -p udp --dport 53 -j DNAT --to 192.168.1.1:5353
iptables -t nat -A PREROUTING -i br-lan -p tcp --dport 53 -j DNAT --to 192.168.1.1:5353

O desde la interfaz LuCi

Añade expresiones regulares para el filtrado avanzado #

Expresiones regulares (REGEX) generadas a partir de varias fuentes para el filtrado avanzado. Dispones de una lista en https://github.com/mmotti/adguard-home-filters/blob/master/regex.txt

Añade listas de bloqueo #

Puedes seleccionar la que vienen por defecto o añadir/importar tus propias listas

Unos ejemplos #

Te dejo una muestra del potencial de Adguard Home, por ejemplo, podemos bloquear el acceso a una serie de redes sociales y dominios preconfigurados Por ejemplo, bloqueo el acceso a youtube,

Si ahora intento acceder, vemos lo que pasa

También podemos bloquear el contenido para adultos

Al intentar acceder al sitio

Referencia: #

Espero que te haya gustado, pasa un buen día… 🐧