Skip to main content

Instalar Pihole

La instalación de Pihole es muy sencilla, y no requiere de grandes requisitos para funcionar, ya que en si, el software es muy liviano.

Se puede instalar en casi cualquier cosa desde un servidor virtual mínimo, una Raspberry Pi o junto con otra instancia de cualquier cosa que no tenga configurado un listener en el puerto 53 (DNS)

Requisitos

Mín. 2 GB de espacio libre, se recomiendan 4 GB
512 MB de RAM

Como podemos ver, "cabe" en casi cualquier cosa que montemos.

A pesar del nombre, no está limitado a ejecutar Pi-hole en una Raspberry Pi. Cualquier hardware que ejecute uno de los sistemas operativos compatibles servirá. Pi-hole es compatible con distribuciones que utilizan systemd o sysvinit

Sistemas operativos compatibles

Distribución Versión Arquitectura
Raspberry Pi OS
(formerly Raspbian)
Buster / Bullseye ARM
Armbian OS Cualquiera ARM / x86_64 / riscv64
Ubuntu 20.x / 22.x / 23.x ARM / x86_64
Debian 10 / 11 / 12 ARM / x86_64 / i386
Fedora 36 / 37 / 38 ARM / x86_64
CentOS Stream 8 / 9 x86_64

Direccionamiento IP

Pi-hole necesita una dirección IP estática para funcionar correctamente (valdría también con una reserva DHCP).

Puertos

Servicio Puerto Protocolo Notas
pihole-FTL 53 (DNS) TCP/UDP Si tienes otro servidor DNS en ejecución, como BIND, deberás desactivarlo para que Pi-hole responda a las consultas de DNS.
pihole-FTL 67 (DHCP) IPv4 UDP El servidor DHCP es una característica opcional que requiere puertos adicionales.
pihole-FTL 547 (DHCPv6) IPv6 UDP El servidor DHCP v6 es una característica opcional que requiere puertos adicionales.
lighttpd 80 (HTTP) TCP Si ya tienes otro servidor web ejecutándose, como Apache, el servidor web de Pi-hole no funcionará. Puedes desactivar el otro servidor web o cambiar el puerto en el que escucha lighttpd, lo que le permite mantener ambos servidores web en funcionamiento.
pihole-FTL 4711 TCP FTL es el puerto del motor API y utiliza el puerto 4711 en la interfaz localhost. No se debe poder acceder a este puerto desde ninguna otra interfaz.

Ahora vamos a ver como instalarlo en un servidor del panel de Neodigit o en cualquier máquina con Debian

Instalación

La instalación es muy sencilla y bastará con ejecutar un simple comando

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

O bien descargar el ejecutable y ejecutarlo

wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh

También se puede instalar mediante un clon de su repositorio de git

git clone --depth 1 https://github.com/pi-hole/pi-hole.git Pi-hole
cd "Pi-hole/automated install/"
sudo bash basic-install.sh
Instalación en Docker

También se puede instalar en docker, la forma más sencilla con docker copose creando un fichero docker-compose.yml:

version: "3"

# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
services:
  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    # For DHCP it is recommended to remove these ports and instead add: network_mode: "host"
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "67:67/udp" # Only required if you are using Pi-hole as your DHCP server
      - "80:80/tcp"
    environment:
      TZ: 'Europe/Madrid'
      WEBPASSWORD: 'TecnocraticaMola' #'set a secure password here or it will be random'
    # Volumes store your data between container upgrades
    volumes:
      - './etc-pihole:/etc/pihole'
      - './etc-dnsmasq.d:/etc/dnsmasq.d'
    #   https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
    cap_add:
      - NET_ADMIN # Required if you are using Pi-hole as your DHCP server, else not needed
    restart: unless-stopped

Configurar equipos

El siguiente paso es configurar como DNS en nuestros equipos de red, para que usen nuestro Pihole cono servidor DNS de nuestra red.