Pihole vous permet de choisir des services DNS tels que CloudFlare, OpenDNS, Google DNS, Quad9.
Mais les requêtes DNS ne sont pas chiffrées.
Pour palier à cela, on peut installer DNSCrypt pour effectuer des requêtes DNS over HTTPS (DoH).
DNSCrypt chiffre automatiquement votre trafic DNS et l’envoie aux serveurs DNS qui utilisent également le chiffrement. De cette façon, l’intégralité de la transaction reste chiffrée. Même votre FAI ne pourra pas voir où vous naviguez.
Dans ce tutoriel je vous guide pour mettre en place les DNS sécurisés dans pihole.

Table des matières
Comment installer Secure DNS sur Pihole
Dans cette seconde méthode, on télécharge directement les binaires DNSCrypt.
- On télécharge l’archive par wget :
cd /opt
sudo wget https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.1.2/dnscrypt-proxy-linux_i386-2.1.2.tar.gz
- Puis on décompresse le tout à l’aide de la commande tar
- Ensuite on se rend dans le répertoire dnscrypt-proxy
sudo tar -xvf dnscrypt-proxy-linux_i386-2.1.2.tar.gz
sudo mv linux-i386/ dnscrypt-proxy && cd dnscrypt-proxy
- Puis on copie le fichier de configuration exemple et on l’édite :
sudo cp example-dnscrypt-proxy.toml dnscrypt-proxy.toml
sudo vim dnscrypt-proxy.toml
- Depuis ce dernier, on peut déclarer le service DNS à utiliser à travers l’option server_names
Configurer DNSProxy
Ensuite on peut configurer DNSProxy pour spécifier le service DNS à utiliser.
sudo vim dnscrypt-proxy.toml
- Sous Paramètres globaux, ajoutez un ou plusieurs serveurs dans server_names
server_names = ['adguard-dns']
Si vous voulez utiliser le service NextDNS.IO avec le chiffrement DNS, c’est assez simple.
Cela vous donne une deuxième couche de filtrage et de protection DNS. Il vous fournit également des analyses et des statistiques intéressantes pour votre réseau.
- Dans le fichier DNSCrypt dnscrypt-proxy.toml, cherchez la section [static] tout en bas. Ajoutez les lignes suivantes, en utilisant votre chaîne de timbre sdns personnalisée qui se trouve dans le presse-papiers.
[static.'NextDNS-Custom'] stamp = 'sdns://xxxxxxxxxxxxx'
- En haut du fichier de configuration DNSCrypt, modifiez la ligne server_names pour qu’elle corresponde exactement au nom statique que vous avez utilisé ci-dessus
server_names = ['NextDNS-Custom']
- Sous Liste des adresses locales, changez le numéro de port en quelque chose que vous aimez, au-dessus de 1024. J’utilise 5350 dans cet exemple. Pi-Hole utilisera le port 53 (standard pour le DNS), c’est pourquoi nous devons utiliser un numéro de port personnalisé pour DNSCrypt.
listen_addresses = ['127.0.0.1:5350', '[::1]:5350']
On peut forcer DNSSEC et désactiver le cache étant donné que pihole a son propre cache DNS.
require_dnssec = true require_nofilter = false cache = false
Facultatif vous pouvez activer Anyonmized DNS est une nouvelle fonctionnalité dans les versions les plus récentes de DNSCrypt. Cela se configure dans l’entrée routes
Pour cela :
- Faites défiler le texte jusqu’au bas du fichier TOML pour trouver la partie [anonymized_dns]
- Pour les serveurs ‘via’, consultez la liste des relais ici, et choisissez-en deux qui répondent à vos besoins. J’ai utilisé des serveurs à proximité de ma maison. Vous pouvez vouloir utiliser des serveurs dans un autre pays, ou avoir d’autres exigences uniques
routes = [ { server_name='adguard-dns', via=['anon-kama', 'anon-cs-fr'] }, ]
- Sauvegardez et quittez l’éditeur de textes
Configurer Pihole pour utiliser les DNS Sécurisés
Maintenant que DNSCrypt est configuré et actif, il faut configurer pihole pour utiliser les DNS de ce tutoriel.
Pour cela, on change l’adresse du serveur DNS dans Pihole :
- Connectez-vous à la console Pi-Hole (http://adresseip_pihole/admin)
- Allez dans Paramètres, DNS
- Décochez tous les serveurs DNS en amont et entrez 127.0.0.1#5350 dans Custom 1 (IPv4) et cochez la case
- Pour IPv6, entrez ::1#5350
- Cochez Use DNSSEC
- Puis cliquez en bas à droite sur le bouton Save
Comment tester la sécurité DNS
Enfin vous pouvez vérifier sur vos hôtes que la résolution DNS de Pihole est bien sécurisé.
Pour cela, suivez ce tutoriel : Comment tester les DNS (fuites DNS, Sécurité DNS).
Par exemple, ci-dessous, on peut voir que Secure DNS et DNSSEC sont bien actifs sur un hôte utilisant les DNS Pihole.
Liens
- pi-hole : bloquer la publicité et trackers
- Pi-hole : Ajouter des listes de blocages (adlists), blacklist ou whitelist
- Installer un raspberry en routeur VPN + pi-hole (NordVPN ou ProtonVPN)
- Les meilleures listes de blocage (adlists) pour Pi-hole
- Installer et configurer un serveur VPN WireGuard sur Linux et client (Windows, Android, Ubuntu)
- Comment activer et voir les logs WireGuard
- Résoudre les erreurs dans les logs WireGuard
- Comment installer OpenVPN sur Ubuntu, Debian
- Serveur d’anonymat : OpenVPN + Proxy et TOR
- Configurer pihole avec DNSCrypt ou DNS over HTTPS (DoH)