linux:pihole

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux:pihole [2021/06/03 21:09] – [Faire du DNS-over-HTTPS] fix url formatting phswlinux:pihole [2024/12/29 18:45] (Version actuelle) – add link phsw
Ligne 1: Ligne 1:
 ====== PiHole ====== ====== PiHole ======
  
-==== Ajouter des entrées de DNS personnalisées ====+Tester combien de trackers sont bloqués : https://d3ward.github.io/toolz/adblock
  
-**Obsolète: utiliser directement l'interface web** 
  
-[[https://github.com/pi-hole/pi-hole/issues/975#issuecomment-275999979|Source]] 
- 
-Sur le serveur qui héberge PiHole, créer un fichier ''/etc/dnsmasq.d/05-custom.conf'', y ajouter ''address=/<host>/<ip>'' pour chaque nom d'hôte à résoudre, et redémarrer le service DNS: ''pihole restartdns''. 
- 
- 
---------------------------- 
  
 ==== Mettre à jour PiHole ==== ==== Mettre à jour PiHole ====
Ligne 21: Ligne 14:
  
  
-------------------+
  
 ==== Faire du DNS-over-HTTPS ==== ==== Faire du DNS-over-HTTPS ====
Ligne 36: Ligne 29:
   * [[https://medium.com/@swedishmike/getting-pi-hole-up-and-running-complete-with-dns-over-https-ce94f790b9e5]]   * [[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/]]   * [[https://docs.pi-hole.net/guides/dns-over-https/]]
- 
-Télécharger le paquet Binaire à cette adresse: https://developers.cloudflare.com/argo-tunnel/downloads/ 
  
 <code bash> <code bash>
-tar -xvzf cloudflared-stable-linux-arm.tgz +wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64 
-sudo mv cloudflared /usr/local/bin/ +mv cloudflared-linux-arm64 /usr/local/bin/cloudflared 
-sudo chmod +x /usr/local/bin/cloudflared +chmod +x /usr/local/bin/cloudflared 
-sudo useradd -s /usr/sbin/nologin -r -M cloudflared+useradd -s /usr/sbin/nologin -r -M cloudflared
 </code> </code>
  
-Créer le fichier ''/etc/cloudflared'' pour configurer cloudflared:+Créer le fichier ''/etc/cloudflared'' pour configurer cloudflared :
 <code conf /etc/cloudflared> <code conf /etc/cloudflared>
-cloudflared settings+# 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 CLOUDFLARED_OPTS=--port 5053 --upstream https://1.1.1.1/dns-query --upstream https://1.0.0.1/dns-query
 </code> </code>
  
-Donner les droits sur ce fichier à l'utilisateur cloudflared:+Donner les droits sur ce fichier à l'utilisateur cloudflared :
 <code bash> <code bash>
-sudo chown cloudflared: /usr/local/bin/cloudflared +chown cloudflared:cloudflared /usr/local/bin/cloudflared 
-sudo chown cloudflared: /etc/cloudflared+chown cloudflared:cloudflared /etc/cloudflared
 </code> </code>
  
-Créer un service pour démarrer Cloudflared:+Créer un service pour démarrer Cloudflared :
 <code service /etc/systemd/system/cloudflared.service> <code service /etc/systemd/system/cloudflared.service>
 [Unit] [Unit]
Ligne 77: Ligne 68:
 </code> </code>
  
-Activer ce service:+Activer ce service :
 <code bash> <code bash>
-sudo systemctl enable cloudflared +systemctl enable cloudflared 
-sudo systemctl start cloudflared +systemctl start cloudflared 
-sudo systemctl status cloudflared+systemctl status cloudflared
 </code> </code>
  
-Tester:+Tester :
 <code bash> <code bash>
 dig @127.0.0.1 -p 5053 ph-sw.fr dig @127.0.0.1 -p 5053 ph-sw.fr
Ligne 94: Ligne 85:
  
  
 +
 +==== 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.
 +
 +<code bash>
 +apt install unbound
 +</code>
 +
 +Configuration dans ''/etc/unbound/unbound.conf'' :
 +<code>
 +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
 +</code>
 +
 +Tester :
 +<code bash>
 +dig google.fr @127.0.0.1 -p 5053
 +</code>
 +
 +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 :
 +<code bash>
 +apt install tcpdump
 +tcpdump "tcp port 853"
 +</code>
 +et lancer :
 +<code bash>
 +dig perdu.com @192.168.1.53
 +</code>
 +
 +
 +
 +==== 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]]
  • linux/pihole.1622747396.txt.gz
  • Dernière modification : 2021/06/03 21:09
  • de phsw