FABIAN ESCALONA
  • HOME
  • SERVICIOS
  • BLOG
  • RECOMENDACIONES
  • CONTACTO

29/5/2020

Pi-hole elimina las ads en tu red

2 Comentarios

Read Now
 
Pi-hole es un proyecto Open Source y básicamente es un servidor DNS que contiene una serie de listas dinámicas de dominios marcados como publicitarios, pero puede bloquear cualquier tipo de contenido que tú desees, denegando todo tráfico a esas direcciones, tiene una interfaz web super amigable y realmente es muy sencillo de instalar.
Pi-hole puede ser instalado en cualquier distribución de Linux, en máquinas virtuales, dockers e incluso en un Rasperry Pi (es un proyecto divertido hacerlo en un Rasperry Pi con dockers). En mi caso utilizare una máquina virtual con Ubuntu 20.04LTS y me conectare vía SSH desde un equipo con Windows, utilizare Putty para esto, una herramienta gratuita y muy eficaz, si quieres conocer un poco mas de SSH y las mejores prácticas haz click aqui.  Instalare Pi hole en Dockers y utilizaremos el repositorio oficial de Pi Hole.

PARTE 1 - CONECTATE AL EQUIPO
Primero conéctate a la consola del equipo con un usuario con permisos de root. Yo voy a usar el mismo servidor que utilice en el post de SSH y mejores prácticas. 
Imagen
PARTE 2 -  DESHABILITA EL DNS DE LINUX
Por defecto Linux trae un servidor DNS interno que puede interferir con las operaciones de Pi-hole, lo vamos a deshabilitar con dos simples comandos. y luego editaremos el archivo DNS.
sudo systemctl stop system-resolved.service
sudo systemctl disable system-resolved
.service
​Luego vamos a editar el archivo DNS que está en la siguiente ruta /etc/resolv.conf, lo puedes hacer con el editor de tu preferencia, yo prefiero nano.
​sudo nano /etc/resolv.conf
Imagen
Como pueden ver el servidor se apunta así mismo, cambiamos esa IP por el servicio de DNS de su preferencia, yo en mi caso usare Cloudflare.
Imagen
Presionamos CTRL X para salir, luego Y para guardar y ENTER
PARTE 3 - ACTUALIZA EL SERVIDOR
Actualiza el servidor antes de cualquier instalación para tener todos los paquetes actualizados.  Una vez actualizado podemos seguir al siguiente paso.
​sudo apt update
PARTE 4 - INSTALAR DOCKER
Instalar Docker es muy sencillo solo necesitas un comando, utilizo -y para que acepte cualquier pregunta que aparezca en la instalación. 
sudo apt install docker.io -y
PARTE 5 - INSTALAR PI-HOLE
​
Con docker hay dos maneras esenciales de instalar Pi-hole, ya sea con Docker compose o un docker run script, yo lo haré con la segunda opción. Tomaré el script oficial de Pi-Hole que lo puedes conseguir en su página o pulsando aquí, de todos modos  acá te dejo el script completo.

#!/bin/bash

# https://github.com/pi-hole/docker-pi-hole/blob/master/README.md

# Note: ServerIP should be replaced with your external ip.
docker run -d \
    --name pihole \
    -p 53:53/tcp -p 53:53/udp \
    -p 80:80 \
    -p 443:443 \
    -e TZ="America/Chicago" \
    -v "$(pwd)/etc-pihole/:/etc/pihole/" \
    -v "$(pwd)/etc-dnsmasq.d/:/etc/dnsmasq.d/" \
    --dns=127.0.0.1 --dns=1.1.1.1 \
    --restart=unless-stopped \
    pihole/pihole:latest

printf 'Starting up pihole container '
for i in $(seq 1 20); do
    if [ "$(docker inspect -f "{{.State.Health.Status}}" pihole)" == "healthy" ] ; then
        printf ' OK'
        echo -e "\n$(docker logs pihole 2> /dev/null | grep 'password:') for your pi-hole: https://${IP}/admin/"
        exit 0
    else
        sleep 3
        printf '.'
    fi

    if [ $i -eq 20 ] ; then
        echo -e "\nTimed out waiting for Pi-hole start, consult check your container logs for more info (\`docker logs pihole\`)"
        exit 1
    fi
done;
Debes editar la línea que he marcado por tu zona horaria, luego de haber copiado el script lo vamos a pegar en un nuevo archivo que vamos a crear él cual se llamará pihole.sh
nano pihole.sh
Una vez copiada la información presionamos CTRL X para salir, luego Y para guardar y ENTER, ahora debemos darle atributos de ejecución al archivo y ejecutarlo de la siguiente manera:

sudo chmod u+x pihole.sh
​sudo ./pihole.sh
Por defecto Pi-hole crea una contraseña al azar, pero para colocar una nuestra modificaremos ese parámetro, primero entramos al docker que está corriendo de la siguiente manera 
​sudo docker exec -it pihole bash
una vez dentro del contenedor ejecutamos el siguiente comando para restablecer la contraseña
sudo pihole -a -p
Te pedirá una nueva contraseña, la colocas dos veces y estarás todo listo.
PARTE 6 - INGRESA A PI-HOLE
Abre cualquier explorador y coloca la dirección IP del servidor/ admin, en mi caso es 192.168.1.91/admin
Imagen
Primero debes iniciar sesión como administrador con la contraseña que colocamos anteriormente, luego te aparecerá en el panel izquierdo una cantidad bastante variada de opciones con la que puedes jugar y hacerlo más personalizado, con las opciones por defecto va a trabajar muy bien, pero puedes incluir palabras claves en Blacklist para bloquear todo el contenido que contenga esa palabra o desbloquear este contenido en una Whitelist.  La página principal es tu Dashboard donde está en resumen y tiempo real tus estadísticas de conexión. 
Imagen
Puedes observar la cantidad de dominios bloqueados y el porcentaje de tráfico bloqueado en tu red, puedes observar que son valores super altos.
PARTE 7 - MODIFICA TU RED PARA UTILIZAR PI-HOLE
Para que empieces a utilizar Pi-hole como tu servidor DNS debes cambiar la configuración de tu DHCP, usualmente en una red de casa este trabajo lo hace el router suministrado por el proveedor de servicio. En mi caso mi proveedor es Movistar y el router que tengo tiene la dirección 192.168.1.1, para verificar esta información debes abrir un terminal, si usas Windows solo escribe en la lupa CMD y te aparecerá un icono como el siguiente.
Imagen
Abre el programa y escribe el siguiente comando 
ipconfig
Luego identifica tu adaptador de red, en mi caso estoy conectado vía Wi-Fi verifica que la dirección IP del Gateway y el servidor DHCP sea la misma, eso significa que tu router tiene el rol de DHCP en tu red.
Imagen
Coloca esta dirección en cualquier explorador, te pedirá algún tipo de credenciales que por lo general está en la parte posterior del router.
Imagen
Ahora nos dirigimos a la sección de red local y modificamos el parámetro de DNS a la dirección de nuestro nuevo servidor Pi-Hole
Imagen
Listo, ahora todos los dispositivos conectados a tu red estarán libres de publicidad.

Si te gusto este post, coméntalo y compártelo con quien tu creas que le pueda ser útil.

Share

2 Comentarios
Details

    Autor

    Mi nombre es Fabian Escalona soy un ingeniero en redes y comunicaciones, cree este blog como un proyecto personal para compartir conocimiento y proyectos que desarrollo en mi trabajo diariamente, acá encontraras post sobre tecnologías, herramientas, opiniones y utilidades que he usado.

    Categorías

    Todos
    Instalación Y Configuración
    Mejores Prácticas
    Opinión

"Si usted piensa que los estudios son costosos, pruebe con la ignorancia"

​HOME

SERVICIOS

BLOG

​RECOMENDACIONES

CONTACTO

Copyright © 2020
  • HOME
  • SERVICIOS
  • BLOG
  • RECOMENDACIONES
  • CONTACTO