Probando (por fin) Pi-hole
Es de esas cosas que tenía pendientes desde hace un montón, y que no acababa de hacer por pura pereza. Afortunadamente un lector (gracias, Raf) me mandó un correo contándome su experiencia con Pi-hole y animándome a ello, así que este fin de semana tuve un momento de fortaleza suprema y logré lanzarme a la tarea. Las tentaciones de procrastinar una vez más eran poderosas, pero fui fuerte y las resistí. Qué tío. Cómo soy.
El caso es que como esperaba, la puesta en marcha de este invento es una verdadera estupidez. Tengo varias RPi danzando por casa, y de hecho la primera duda es si esto tiraría en la original, la Raspberry Pi (1) Model B. No lo tenía demasiado claro, pero en el foro de Pi-hole decían que sí.
Así pues decidí desempolvar esta vieja conocida -ostras, usa SD y no micro SD, qué curioso- y después de usar SD Card Formatter en Windows 10 para formatear una micro SD que tenía a mano (especialmente útil porque da igual que W10 no reconozca bien posibles particiones Linux en ella) me bajé el instalador de Raspberry Pi OS desde el sitio web oficial y lo ejecuté. El proceso es más cómodo que el antiguo de instalar Raspbian (su antiguo nombre) porque el propio instalador incluye una especie de Etcher que escribe la imagen en la tarjeta y la deja preparadita.
A los pocos minutos tenía la micro SD preparada, y tras introducirla en un adaptador SD y en la RPi Model B la conecté a un monitor HDMI y a un teclado y ratón. Una vez iniciado todo noté dos cosas: la primera, que la Raspberry Pi, la pobre, va un poco a pedales (lógico, chavales, ha pasado casi una década), y dos, y más importante:
Que procrastinar es una estupidez.
Sobre esto ya haré post vital más adelante, que sigo. Con Raspbian Raspberry Pi OS rulando —la interfaz gráfica va a pedales en la RPi Model B original, insisto— el resto fue una chorrez. Activé SSH para poder hacerlo todo desde mi portátil y una terminal en lugar de andar toqueteando la RPi. Me conecté con Putty y seguí los pasos del tutorial oficial.


Uy perdón. ¿He dicho "los pasos"? Pues no. Solo hay uno. Con escribir
curl -sSL https://install.pi-hole.net | bash
se ejecuta el script de instalación que hace todo lo que tiene que hacer de forma automatizada. En la Raspberry Pi original, eso sí, ese proceso lleva algo de tiempo (¿15-20 minutos? no sabría decirlo) que finalmente permiten llegar a la deseada pantalla de confirmación de que todo está preparado (y una contraseña para acceder a todas las opciones del panel de administración).

Tras ese mensaje solo hace falta dos cosas:
- Pinchar la RPi a la red si no lo habías hecho: da igual donde lo hagas. Yo probé primero conectándola al switch que tengo en el despacho, y en el proceso de instalación se autoconfigura la RPi para que use una IP estática del tipo 192.168.1.XX.
- Configurar las propiedades del adaptador de red: en Windows 10, desde las propiedades de la conexión de red que uses, basta con ir al apartado de IPv4 y establecer los DNS manualmente. El primero debe ser ese 192.168.1.XX de la RPi para que todo el tráfico pase por allí. El segundo puede ser cualquiera, yo puse el 1.1.1.1 de Cloudflare, pero está bien poner uno por si la conexión con la RPi falla por algún motivo. Puedes hacer lo propio en móviles con iOS y Android o en equipos macOS y Linux, evidentemente. Hay otros métodos para añadir clientes que bloqueen anuncios, como por ejemplo configurar el router directamente. Lo explican aquí.
No hay mucho más, porque a partir de ese momento todo el tráfico pasa primero por la Raspberry Pi, que actúa como "agujero" —de ahí el nombre— para ese tráfico no deseado en forma de publicidad o scripts que no molan. Puedes acceder en todo momento al panel de administración, que te irá diciendo cuántas peticiones ha detectado y cuántas ha bloqueado, además de un completo registro de todo que maravilla porque, atención, todo rula en una Raspberry Pi Model B de 2012 con un Broadcom BCM2835 mono-core a 700 MHz acompañado de 512 MB de RAM.

Es alucinante que todo vaya lo bien que va. Efectivamente la promesa se cumple, y aunque al principio tuve algún problema raro —se bloqueaba la cosa y no acababa de acceder a los sitios web que probaba durante varios segundos— la cosa ha ido suave a partir de entonces.
Aquí debo decir que es algo extraño que yo use algo así porque me estoy tirando piedras contra mi propio tejado: vivo literalmente de la publicidad, porque Xataka vive de la publicidad. No obstante, Pi-hole permite crear listas blancas en las que puedes incluir webs cuya publi no acaba en ese agujero negro, lo cual mola. Lo he hecho en Xataka, por ejemplo, pero también lo he tenido que hacer con algunas que no funcionan de plano (ni los anuncios ni lo que no son anuncios), como ocurre con webs de analítica y estadísticas de tráfico como mi querido Statcounter. Aquí la técnica es siempre la misma: si no pirula y necesito que pirule la meto en las listas blancas —supongo que acabarán cambiándolas de nombre— y a tirar millas.
No he indagado mucho más, pero las opciones de Pi-hole son sorprendentes: si algo no te funciona pero necesitas que lo haga momentáneamente puedes deshabilitar Pi-Hole durante 5, 10, 30 segundos o 5 minutos, por ejemplo, hacer lo que tengas que hacer en esa web sin meterla en la lista blanca y luego seguir con el bloqueo general. La información que se registra es espectacular —demasiada para mi gusto, de hecho— y este es uno de esos proyectos que te hacen darte cuenta de lo mucho que hace algo tan aparentemente tonto como esto.
Sencillamente fabuloso. Pon un Pi-hole en tu vida.