Passer au contenu principal

Installation de Pi-Hole sur RpiZeroW

Procédure accélérée de l'installation de Pi-Hole sur un Raspberry-Pi Zero W.

Installation de Raspberry Pi OS Lite

Téléchargement de l'OS

Installer l'image Raspberry Pi OS Lite sur le RPi0W.
Lien des images sur le site.

Préparation accès SSH du RPi0W

Éditer ou créer le fichier BOOT/wpa_supplicant.conf (soit à la racine de la carte).

country=FR
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="<yourWiFiNetworkName>"
    psk="<yourWiFiPassword>"
}

Également à la racine, créer un fichier vide ssh :

$ touch ssh

Accès SSH & MàJ

Se connecter en ssh au Rpi (mot de passe par défaut raspberry):

$ ssh pi@raspberrypi.local
[…]
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
[…]

Mise à jour, c'est assez long…

$ sudo apt-get update && sudo apt-get upgrade -y

On change le mot de passe par défaut de pi avec la commande passwd.

J'en profite pour créer mon utilisateur, lui assigner un mot de passe et l'ajouter au groupe sudo :

$ sudo useradd -m <username> # -m pour créer le fichier home
$ sudo passwd <username>
New password: 
Retype new password: 
passwd: password updated successfully
$ sudo usermod -aG sudo <username> # -a pour append, -G pour le groupe

Je change le nom de l'appareil sur le réseau :

$ sudo hostnamectl set-hostname pihole
$ sudo vim /etc/hosts # pour également changer le nom sur l'ip interne
127.0.0.1	localhost
::1		localhost ip6-localhost ip6-loopback
ff02::1		ip6-allnodes
ff02::2		ip6-allrouters

127.0.1.1	pihole # ici
$ sudo reboot

J'envoie ma clé publique depuis mon hôte :

$ ssh-copy-id -i .ssh/id_rsa.pub pihole.local

Je peux me connecter directement :

$ ssh pihole.local

Pi-Hole

Sources d'installation & configuration 1 2.

Préparation

Il faut paramétrer la box pour attribuer une ip fixe au Rpi.

Installation du Pi-Hole

Liens :

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

Et on répond aux questions.

Ne pas oublier de mettre le server DNS dans la Box Internet, ou de configurer le DHCP.
Voir en toute fin si 4G Box.

Configuration

Changer le mot de passe

$ pihole -a -p

Blocklist

Exemple de blocklist :

Plusieurs urls peuvent être entrées dans les blocklist en étant séparées par des espaces. Si besoin, utiliser regular expressions 101 ( regex : \t\n pour la sélection) pour faire le tri dans les tabulations et retours de ligne.

Mise à jour de la list Gravity :

$ sudo pihole -g

Suivant la taille, ça peut mettre du temps.

Test

Sur le site de Fuzz the Pi Guy.

Si ça ne fonctionne pas, d'abord essayer de tout éteindre puis allumer :

  1. Le Pi-Hole ;
  2. La Box Internet.

Chronometer

Afin de voir un log en temps réel :

$ pihole -c

Capture d’écran 2021-04-12 à 23.44.08.png

Bonus : Choisir DNS Server sur 4G Box

Par défaut, on ne peut pas voir les paramètres de changement de DNS. Pour afficher l'option, se rendre dans DHCP, puis taper dans la console :

$('#dhcp_dns').css('display', 'block');

Et enfin, entrer l'adresse ip du Pi-Hole.

DNS unbound

À voir ici. Ça permet de gérer en interne le demande dns.

Cloudflared (DoH)

À voir ici.

VPN : WireGuard

La doc est ici.

Automatique update du RPi

Source(s) 1.

$ sudo apt update
$ sudo apt install unattended-upgrades

Mettre en place la configuration des màj automatiques.

$ sudo vim /etc/apt/apt.conf.d/50unattended-upgrades

Décommenter les lignes 29 et 30, pour avoir ceci :

        "origin=Debian,codename=${distro_codename}-updates";
        "origin=Debian,codename=${distro_codename}-proposed-updates";
        "origin=Debian,codename=${distro_codename},label=Debian";
        "origin=Debian,codename=${distro_codename},label=Debian-Security";

Rendre la màj automatique effective :

$ sudo dpkg-reconfigure --priority=low unattended-upgrades

Puis confirmer à l'écran.

Il est possible de vérifier que le service fonctionne bien :

$ sudo systemctl status unattended-upgrades.service