====== PiHole ====== Tester combien de trackers sont bloqués : https://d3ward.github.io/toolz/adblock ==== Mettre à jour PiHole ==== pihole -up Pas besoin d'être root. ==== Faire du DNS-over-HTTPS ==== === Avec son serveur DNS-over-HTTPS === * [[https://www.bortzmeyer.org/doh-mon-resolveur.html]] * [[https://www.shaftinc.fr/chiffrement-dns-pratique.html]] === Cloudflared === Sources: * [[https://medium.com/@swedishmike/getting-pi-hole-up-and-running-complete-with-dns-over-https-ce94f790b9e5]] * [[https://docs.pi-hole.net/guides/dns-over-https/]] wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64 mv cloudflared-linux-arm64 /usr/local/bin/cloudflared chmod +x /usr/local/bin/cloudflared useradd -s /usr/sbin/nologin -r -M cloudflared Créer le fichier ''/etc/cloudflared'' pour configurer cloudflared : # Commandline args for cloudflared, using Cloudflare DNS CLOUDFLARED_OPTS=--port 5053 --upstream https://1.1.1.1/dns-query --upstream https://1.0.0.1/dns-query Donner les droits sur ce fichier à l'utilisateur cloudflared : chown cloudflared:cloudflared /usr/local/bin/cloudflared chown cloudflared:cloudflared /etc/cloudflared Créer un service pour démarrer Cloudflared : [Unit] Description=cloudflare DNS over HTTPS After=syslog.target network-online.target [Service] Type=simple User=cloudflared EnvironmentFile=/etc/cloudflared ExecStart=/usr/local/bin/cloudflared proxy-dns $CLOUDFLARED_OPTS Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target Activer ce service : systemctl enable cloudflared systemctl start cloudflared systemctl status cloudflared Tester : dig @127.0.0.1 -p 5053 ph-sw.fr Dans la configuration de PiHole, indiquer comme résolveur DNS Custom 1: ''127.0.0.1#5053''. Il est possible de vérifier que DNS over HTTPS est bien utilisé en allant sur ce site: https://1.1.1.1/help. ==== Faire du DNS-over-TLS ==== * https://dns.aquilenet.fr/ * [[https://calomel.org/unbound_dns.html|Unbound DNS Tutorial]] * [[https://atelier.aquilenet.fr/projects/dns-ouvert/wiki|DNS récursif Ouvert DoH DoT & haute disponibilité]] Principe : c'est PiHole qui reçoit les requêtes DNS, il les fait suivre en clair à un serveur Unbound local, qui lui les fait suivre en DoT à un autre serveur. apt install unbound Configuration dans ''/etc/unbound/unbound.conf'' : include-toplevel: "/etc/unbound/unbound.conf.d/*.conf" server: port: 5053 prefer-ip4: no do-ip4: yes do-ip6: no access-control: 127.0.0.0/8 allow access-control: 192.168.1.0/24 allow hide-identity: yes hide-version: yes prefetch: yes tls-cert-bundle: "/etc/ssl/certs/ca-certificates.crt" forward-zone: name: "." forward-tls-upstream: yes forward-addr: 45.67.81.23@853#dns.aquilenet.fr # forward-addr: 1.1.1.1@853#one.one.one.one Tester : dig google.fr @127.0.0.1 -p 5053 Configurer PiHole pour utiliser Unbound comme serveur DNS ''127.0.0.1#5053''. Pour vérifier que les requêtes DNS partent bien en DoT : apt install tcpdump tcpdump "tcp port 853" et lancer : dig perdu.com @192.168.1.53 ==== Déplacer une installation PiHole ==== - Installer une version neuve de PiHole - Utiliser la fonctionnalité //Teleporter// pour exporter la configuration de l'ancienne installation et l'importer dans la nouvelle. Tous les paramètres (serveur DNS utilisé, par exemple) ne sont pas mis à jour. - Il est aussi possible de récupérer l'historique des requêtes (pour les statistiques, par exemple) en copiant ''/etc/pihole/pihole-FTL.db''. ==== Synchroniser des instances PiHole ==== * [[https://github.com/mattwebbio/orbital-sync|Orbital Sync]]