Synology: Instalar Pi-Hole en Docker
Hoy vamos a hablar del proyecto Pi-Hole y como podéis implantarlo en vuestra red a través de un contenedor.
Lo primero que vamos a hacer es hablar del proyecto Pi-Hole:
¿Que es Pi-Hole?
Es un proyecto open, que permite montar un sistema que bloquee todos los anuncios y rastreadores, cuando nuestros dispositivos estén navegando. Empezó en GitHub, y se han ido uniendo muchos contribuidores, que han hecho de la solución, una herramienta poderosa.
Como podéis entender por el nombre, el proyecto inicialmente tenía su fuente de inspiración en el proyecto Raspberry Pi. Las primeras versiones buscaban que un equipo tan barato como una Raspberry Pi, permitiese ser el servidor DNS e incluso DHCP de la red, dos servidores con poca necesidad de recursos sobre Linux, y que ejecutaran el software para parar los molestos banners.
Dispone de una página web, que realiza una recogida de datos con todos los anuncios bloqueados históricamente:
Instalación Pi-Hole sobre Docker
En mi caso, como tengo mi Synology que soporta Docker, lo ejecutaré sobre ella. Pero realmente, os puede servir en cualquier equipo.
Lo primero que haremos es generar dos carpetas en la carpeta /docker para los volúmenes persistentes del contenedor (vamos para que la información no se pierda cuando lo reiniciemos). Estas dos carpetas serán:
- pihole-configs : El punto de montaje será /etc/pihole
- dnsmasq-d-configs: El punto de montaje será /etc/dnsmasq.d
Una vez creados los directorios, podemos realizar la instalación mediante la gestión de containers que dispone Synology “pihole/pihole”. Es totalmente factible, y no es necesario hacerlo como con Portainer (revisar el comando y pasarlos a la parte gráfica, es sencillo):
Aunque a mí personalmente me resulta más rápido hacerlo por comando, como hicimos con Portainer en la anterior entrada.
Habilitamos SSH en el NAS desde el Panel de Control –> Terminal y SNMP:
Os dejo el comando y lo explicamos:
1 2 3 |
sudo docker run -d -p 8080:8080/tcp -p 8081:443/tcp -p 53/tcp -p 53/udp -p 67/tcp --name=pi-hole --restart=always -v /volume1/docker/pi-hole/dnsmasq.d-configs:/etc/dnsmasq.d -v /volume1/docker/pi-hole/pihole-configs:/etc/pihole --network bridge --env ServerIP=0.0.0.0 --env WEB_PORT=8080 --env WEBPASSWORD=contraseña pihole/pihole:latest |
He cambiado los puertos web para gestionar el contenedor. Os dejo para qué se utiliza cada uno:
Por otra parte, hago que el contenedor se reinicie ante cualquier problema, monto los volúmenes y utilizo el repositorio oficial con la última versión.
Una vez generado el container:
Lo podremos ver gráficamente en el gestor de containers:
Podéis entrar vía http://IP-SYNOLOGY:PUERTO/admin (si seguís a rajatabla el comando http://IP-SYNOLOGY:8080/admin)
Adicionalmente, podéis usar los detalles del arranque del contenedor por si detectáis problemas:
Ahora, para que vuestros clientes usen Pi-Hole para bloquear banners y demás molestos anuncios, simplemente vais a vuestro DHCP (normalmente vuestro Router) y cambiáis el DNS principal por la IP de vuestra Synology:
Si os logueáis en la web de gestión con la contraseña, podréis gestionar Pi-Hole:
Compartir, que es gratis 🙂
Te ha gustado la entrada SGUENOS EN TWITTER O INVITANOS A UN CAFE?
Hola,buen post…pero estaría bien uno de como actualizar el contenedor …gracias
Gracias, mira éste: https://www.maquinasvirtuales.eu/portainer-actualizar-container-docker-synology/
yo quisiera montar Wireguard y Pihole en mi sinology usando docker, pero que solo Pihole responda a los usuarios que se logueen en wireward? como pudiera hacer. gracias!
Hola, habría que aterrizarlo, ¿cómo está a nivel de red configurado WireGuard? Un saludo
Esta todo desde cero, recien montado el Synology, pero no logro entender docker aun! Si pudieras hacer un tutorial completo de wireguard y pihole en docker!!!