pi-hole.net o como limpiar la Fibra de anuncios

El software de seguridad Pi-hole, rápidamente explicado sirve para limpiar la conexión de Internet y evitar publicidad, así como acceso a IP o Dominios maliciosos, por parte de los clientes de la red.

Su funcionamiento se basa en Listas Negras (Black Lists), de nodos de Internet que, si algún cliente de la LAN intenta resolver vía DNS, por ejemplo, al navegar a cierta pagina web, resolverá Pi-hole devolviendo una resolución apuntando a su propia IP, con lo que se consigue negar ese acceso al cliente.

De no disponer de hardware real para la instalación recurriremos a Maquinas Virtuales, una al menos para el componente Pi-hole. Para quien disponga de medios se ha comprobado su óptimo funcionamiento en una Raspberry Pi 3B con 1GB de RAM.

Topología

Topología

Conocida la topología a implementar, haré referencia solo al caso de virtualización.
Así pues, deberemos de montar en VirtualBox una máquina virtual Linux de las soportadas por pi-hole y que podéis examinar aquí:
https://docs.pi-hole.net/main/prerequesites/#supported-operating-systems

A la hora de redactar el artículo son estas:

  • Raspbian Stretch / Buster (ARM)
  • Ubuntu 16.x / 18.x (ARM / x86_64)
  • Debian 9 / 10 (ARM / x86_64 / i386)
  • Fedora 28 / 29 (ARM / x86_64)
  • CentOS 7 (x86_64)

Podemos crear varios escenarios.

  • El más sencillo – para no romper nada – sería montar pi-hole en una maquina virtual, para después modificar la tarjeta de red de nuestro equipo anfitrión, y usar como DNS la IP de la maquina virtual. En este caso podríamos configurar la tarjeta de red de la maquina virtual o bien en adaptador puente, o bien en solo anfitrión.
  • El más avanzado sería, montar pi-hole, o bien en maquina virtual, o bien en hardware real; desactivar el servicio DHCP del router; activarlo en pi-hole, para hacer que además de repartir IP reparta la IP del servidor DNS apuntando a nuestro pi-hole. En este caso debemos configurar la tarjeta de red de la maquina virtual en adaptador puente.

Hay escenarios intermedios, lo que se os ocurra. Pero para simplificar y tambien poder grabar unos videos, a partir de aquí me centraré en virtualizar Ubuntu Server, instalar el producto Pi-hole y configurar mi sistema operativo para que lo utilice.

El primer paso sera descargar la ISO de Ubuntu Server 18.04 LTS, o bien 20.04 LTS. Virtualizar Ubuntu utilizando Virtualbox.

El segundo paso es, tras instalar, iniciar por primera vez y averiguar la dirección IP de la nueva máquina comprobaremos conectividad desde y hacia el ordenador anfitrión (cliente), la maquina Ubuntu hará de servidor, inicialmente solo de servidor DNS de la LAN, o del escenario reducido de 1 equipo + 1 máquina virtual.

En el tercer paso, apagaremos la máquina virtual, averiguaremos la dirección MAC ADDRESS de su tarjeta de red y realizaremos una reserva de su IP actual, o una más bonita que tengamos en el rango de las que ofrece el DHCP del router de la LAN donde nos encontramos, por ejemplo, son opciones bonitas la .100 o la .200 o la .254.

La reserva en el DHCP es necesaria dado que se trata de un servidor (DNS) y no puede cambiar su IP una vez hayamos configurado el / los cliente/s. Aun así para el caso más sencillo se podría obviar este paso y modificar directamente la tarjeta de red del anfitrión cada vez que cambie la IP de la maquina virtual.

Una vez realizada la reserva, volveremos a iniciar nuestro servidor comprobaremos que la IP es la deseada, y de nuevo con ping se comprobará conectividad con el exterior.

Descargaremos e instalaremos Pi-hole para Ubuntu. Podéis tomar como punto de partida este tutorial:

https://linuxincluded.com/install-pi-hole-on-ubuntu/

Básicamente será lanzar el comando de instalación:

curl -sSL https://install.pi-hole.net | bash

Y seguir un asistente de instalación, que comentamos a continuación.

En este primer paso advierte de la importancia de que pi-hole tenga una IP reservada en el router para que siempre sea la misma.

A mi particularmente me gusta Quad9 y lo selecciono filtrado y seguro:

En esta ventana debéis quitar el HostFile de lo contrario falla la instalación:

En la última pantalla nos informa de la IP 4 y 6 de la maquina pi-hole, así como de la clave de inicio de sesión en el panel de control:

La prueba de concepto para comprobar si funciona es una captura de pantalla del acceso a una web con publicidad, por ejemplo: https://www.speedtest.net/ antes y después de implementar los cambios DNS, o bien, en un cliente sin proteger y en el cliente protegido.

  • Accede a esta web desde el anfitrión sin haber dado el paso siguiente. Observa la publicidad.

En este paso vamos a configurar el cliente, que puede ser el anfitrión o una segunda maquina virtual, que utilice como DNS la IP de nuestro nuevo servidor Pi-hole.

  • Carga de nuevo https://www.speedtest.net/ en el anfitrión después de implementar los cambios DNS, o bien, en un cliente sin proteger y en el cliente protegido. Observa la publicidad.

Para acceder al dashboard cargaremos la url ip/admin en un navegador:

Para iniciar sesión serán necesarias las credenciales que proporciono el proceso de instalación.

Panel de control de Pi-hole

Pues ya sabéis como limpiar la fibra que entra en casa.

Y también en vídeo

Hippy Hacking xD

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.