Tres años sin publicidad, tres años con mayor privacidad, tres años con Pi-Hole.

Introducción

Seguramente estés cansado/a de estar viendo publicidad constantemente y por ello, hayas decidido instalar extensiones como AdBlock, AdBlock Plus o uBlock. Estos addons son muy útiles y los usamos todos en el día a día sobre todo en PC pero ¿podríamos bloquear esta publicidad sin necesidad de éstos? ¿Qué ocurre con los diferentes tablets y móviles que tenemos en casa? Estoy seguro que es preferible intentar filtrar toda esta publicidad sin necesidad de instalar localmente un bloqueador de publicidad. ¿Y si hablamos de privacidad?

El método que vamos a usar es el bloqueo mediante DNS y para ello vamos a usar Pi-Hole. Esta es mi experiencia después de tres años de uso.

¿Qué es Pi-Hole?

Antes de explicar de forma sencilla que es Pi-Hole debemos de saber que es un servidor DNS (Domain Name System). Un servidor DNS es un diccionario que tiene todos los nombres de dominio de Internet (por ejemplo, una web) y la traduce en una dirección numérica (dirección IP). Los ordenadores no funcionan por nombres como google.com o cristianvzc.com sino por direcciones IP. Por ejemplo, en el momento que escribo este artículo el nombre de dominio cristianvzc.com se traduce a la IP: 192.0.78.24. Dicho de otro modo, escribir en el navegador cristianvzc.com es lo mismo que escribir 192.0.78.24.

Para una explicación más detallada sobre servidor DNS os recomiendo este artículo de Cloudflare.

Pi-Hole no es más que un servidor DNS que filtra nombres de dominio que consideramos que no deben ser mostrados. Aquellos nombres de dominio que estén en la blacklist no serán resueltos y por tanto, no se verán en los dispositivos de nuestra red.

Requisitos

Necesitamos un hardware donde hacer correr nuestro servidor DNS y, en este caso, usaremos una Raspberry Pi (RPI de ahora en adelante) aunque podemos usar cualquier equipo con Ubuntu, Debian, Fedora o CentOS. Dado que Pi-Hole es un servicio muy liviano, cualquier modelo de RPI es válido (no necesitamos mucha potencia). Aunque si tuviera que recomendar alguna recomendaría siempre la última versión que se amolde a tu presupuesto ya que puedes instalar más cosas, no solo Pi-Hole. Algunos ejemplos son:

Una vez tengamos una RPI con Raspbian instalado, podemos empezar a instalar con Pi-Hole.

Nota: Siempre recomiendo usar una RPI en lugar de un equipo viejo con una distro de Linux ya que el consumo energético es un punto a tener en cuenta. Sobre todo, cuando vivimos en una época donde el coste energético está en máximos históricos.

Instalación de Pi-Hole

Existen infinitos tutoriales en Internet sobre cómo instalar Pi-Hole y, dado que este artículo no pretende ser un tutorial sobre cómo instalar Pi-Hole sino explicar qué es, cómo funciona y me experiencia durante tres años de uso, os remito a la web oficial dónde siempre estará la información más actualizada:

Una vez instalado, veamos como funciona.

Funcionamiento

El acceso a Pi-Hole es mediante un navegador web, una vez instalado y configurado encontraremos un dashboard como este.

En la imagen anterior podemos ver el estado del dashboard principal de Pi-Hole en el día que escribo este artículo. Podemos observar los siguientes datos de las últimas 24 horas:

  • Se han realizado 10.000 peticiones al DNS en las últimas 24 horas
  • 2400 peticiones han sido bloqueadas. (24%)
  • Tenemos 103.000 dominios actualmente bloqueados.

Estas gráficas son muy útiles para observar el tráfico que hay en la red pero ¿En qué momento hemos relacionado Pi-Hole con nuestra red? ¿Cómo accedo a este dashboard?

Activar Pi-Hole como DNS para toda la red

Si estás leyendo este artículo y has llegado hasta aquí, probablemente sabrás qué es y cómo funciona un servidor DHCP, aún así, si no lo sabes te dejo un artículo de nuestra querida Wikipedia

Y si sabes que es un DHCP ya te imaginarás como activar Pi-Hole para toda la red. En efecto, asignado Pi-Hole como servidor DNS principal. Para ello, y a menos que tengas un servidor DHCP dedicado, te recomiendo que pongas la dirección IP de Pi-Hole en el servidor DNS que asigna tu router. En el 99% de los hogares, el servidor DHCP es el router principal.

Una vez asignado como DNS principal, y reiniciado el router, tu PC ya tendrá asignado como DNS a Pi-Hole.

A partir de este momento, todos los dispositivos que estén en la red tendrán asignado como servidor DNS a Pi-Hole. Pero ¿Cómo se si está funcionando? Existen multitud de webs creadas exclusivamente para saber si tu «bloqueador» de publicidad está funcionando. Personalmente, recomiendo usar esta: https://fuzzthepiguy.tech/adtest. Recuerda quitar AdBlock o similares antes de entrar.

¡Ojo a Google Chrome!

En las últimas versiones de Google Chrome, añadieron la función «DNS seguras«. ¿Qué es esto? Esta función hace que Google Chrome use sus propias DNS independientemente de las DNS que le tengamos puesta a nuestro equipo. Debido a esto, puede ocurrir que pruebes Pi-Hole y veas que aparece publicidad. Desactiva DNS seguro en Google Chrome:

Configuración > Privacidad y Seguridad > Usar DNS seguro.

Acceso Pi-Hole. Interfaz web.

El acceso a Pi-Hole es sencillo, ponéis la http://<dirección IP>/admin o bien http://pihole/admin/ y veréis el siguiente acceso:

Hacienco click en «Login«, podréis acceder al dashboard indicado al comienzo de este artículo.

Un paseo por Pi-Hole

Como comentaba al comienzo de este artículo, en el menú principal encontramos información respecto a:

  • Total de queries (peticiones) realizadas en las últimas 24 horas
  • Queries bloqueadas
  • Porcentaje de bloqueo
  • Dominios en la lista negra
  • Tipo de queries
  • Top dominios permitidos
  • Top dominios bloqueados
  • Top clientes (totales y bloqueados)

Es interesante revisar las gráficas de las peticiones realizadas durante las últimas 24 horas. En la imagen anterior observamos claramente como el pico de uso lo tenemos en torno a las 22:30 de la noche, alcanzando un pico de 34 peticiones por minuto. También es llamativo como en horario nocturno, horario aparentemente sin tráfico, aparecen franjas horarias dónde hay 30 peticiones en 10 minutos.

En cambio, en la imagen posterior, podemos observar claramente como hay un dispositivo haciendo peticiones constantes de 18:30 a 05:30. Podemos seleccionar esa franja horaria y comprobar qué dispositivo se trata y así poder analizar en el dispositivo el porqué de este alto número de peticiones DNS.

En la parte inferior del menú principal encontramos información en cuanto a los dominios más permitidos dominios más bloqueados, clientes más permitidos y clientes más bloqueados. Esta información nos ayuda a entender el tráfico en nuestra red. Por ejemplo, vemos que google-analytics.com es el dominio más bloqueado y que google.com es el más permitido.

En cuantos a los dispositivos, vemos que el dispositivo con IP 192.168.1.7 es el que más peticiones realiza y el que también más tiene bloqueadas. Esa IP es desde el equipo que escribo este artículo. Si queremos ver que dominios son los que están siendo bloqueados para esta IP podemos simplemente hacer click en dicha IP.

Todas las opciones de Pi-Hole

En el sidebar izquierdo podemos analizar queries, cambiar ajustes, ver los usuarios, gestión de DNS, actualizar listado de dominios, añadir dominio a whitelist o blacklist, parar Pi-Hole, etc

Query Log y Long-Term data

Estas dos opciones nos permiten ver las últimas queries en el caso del primero y un histórico de queries en el caso del segundo.

Gravity

La lista de todos los dominios bloqueados se denomina Gravity. Dado que los dominios en los cuales se lanza esta publicidad cambia, es importante tener Gravity actualizado para que bloqueemos todo lo posible. En mi caso personal, suelo actualizar una o dos veces al año. No es necesario obsesionarse.

Whitelist y Blacklist

A parte de los dominios bloqueados por Gravity, podemos querer no bloquear alguno concreto o bloquear alguno más. Pi-Hole nos permite añadir dominios a la whitelist y a la blacklist y darle un trato diferente de los que reciben aquellos que se encuentran en Gravity.

Otros aspectos

La cantidad de opciones que nos ofrece Pi-Hole es mucho más de lo que comento en este artículo pero la intención del mismo no es desgranar todo lo que se puede hacer sino que conozcas qué puedes hacer con una simple RPI o un PC viejo. Estoy seguro que si has llegado a este punto podrás averiguar que más puedes hacer. Te invito a ello.

Conclusión

No puedo vivir sin Pi-Hole. Es una maravilla poder estar con el móvil, tablet o cualquier dispositivo visitando webs y que dónde debería haber publicidad, no exista nada. Por no hablar de la «telemetría» (a.k.a obtención de datos para después vender información) que no dejamos pasar. A día de hoy, Pi-Hole es un must.

¿Y si os diría que podéis usar el mismo servicio de Pi-Hole desde el móvil? ¿Y desde otra red WiFi? ¿Qué pasa cuando me conecto desde otro domicilio? ¿Y estando de viaje? Esto lo dejo para un próximo artículo. No es clickbait, es tan sencillo como montar una VPN en casa.

La intención de este blog es compartir artículos que considere interesantes para un geek o cualquier persona que tenga la curiosidad de aprender. Este, sin duda, es uno de ellos.