Menu principal
Pi-
I. Présentation
II. Installation de Pi-
III. Configuration du DHCP
IV. Utilisation de l'interface web Pi-
V. Tests de Pi-
VI. Conclusion
I. Présentation
On a tous fait cela dès le démarrage de notre navigateur favori : installer un adblocker (bloqueur de pubs). Par contre, en utilisant le navigateur de la télé ou un appareil Android, etc... C’est un peu plus galère de trouver quelque chose de correct. Et puis, s’il y a plusieurs appareils dans la maison, ben il faut recommencer l’opération et ce, pour chaque navigateur !
Dans ce tutoriel, nous allons donc résoudre une problématique simple : fournir un bloqueur de publicité à l'ensemble des machines de notre réseau et le gérer de manière centralisée.
Pour cela, nous allons utiliser un outil développé pour cet usage : Pi-
Pi-
Pour rappel, DNS veut dire Domain Name System, soit système de noms de domaine. Alors qu’est-
Le nom de la machine plus le nom de domaine est appelé FQDN pour Fully Qualified Domain Name ou nom de domaine pleinement qualifié. Il permet d’atteindre une machine précise juste en « l’appelant ». Par exemple, lorsque vous tapez « www.trucmachin.com », vous appelez en faite la machine « www » qui appartient au domaine « trucmachin.com ».
Sauf que nos ordinateurs eux ne comprennent pas le langage des humains, tout ce qu’ils comprennent c’est le binaire et il ont donc besoin d’une adresse IP, qui est l’équivalent d’un numéro de téléphone, pour joindre le site Internet.
Donc, à chaque fois que vous entrez le nom d’un site Internet dans votre navigateur, ou que vos cliquez sur un lien, votre ordinateur commence par demander à un serveur DNS l’adresse IP qui correspond à ce nom.
Pi-
II. Installation de Pi-
Avec un nom comme Pi-
Par contre, il faut garder en tête que cet appareil devra tourner 24h/24 pour une raison simple : pas de DNS, pas d’Internet ! Le Raspberry est donc une bonne idée puisqu’il ne consomme presque rien en terme d’énergie.
Pour l’installation, rien de plus simple, il suffit de se connecter en SSH à votre machine Linux puis de rentrer la commande suivante en tant que "root" :
Une fois le script lancé, une série de test sera fait, l'installation en elle-
Installation de Pi-
Une fois l’installation terminée, vous arriverez à cet écran :
Écran de démarrage Pi-
Note: si vous êtes en DHCP au niveau de votre machine, vous aurez un message d'avertissement à ce propos. Bien entendu, pour une utilisation dans les règles, il est plus que conseillé d'assigner une IP fixe à votre machine.
Suite à cet écran, vous aurez quelques messages d'informations puis vous arriverez à l'assistant de configuration qui vous demandera dans un premier temps à quel serveur DNS Pi-
Choix du DNS -
Note : si vous êtes en entreprise, il y a de fortes chances que le serveur DNS actuel soit le contrôleur de domaine Active Directory. Pas de soucis avec cela, il sera possible par la suite de spécifier à Pi-
Vous remarquerez que certains choix disposent d'une option DNSSEC. De base, le protocole DNS n'est pas sécurisé (il n'as pas été conçu avec cette volonté à l'époque), DNSSEC viens résoudre ce problème en apportant une couche de sécurité par le chiffrement et la signature des échanges, vous trouverez toutes les explications sur l'article correspondant : Sécurité DNS
Un bloqueur de publicité quel qu'il soit se base sur une ou des listes pour faire son travail. De base, Pi-
Viens la question à propos de l’interface web, son installation est facultative, l'outil disposant de sa propre ligne de commande pour le management et la visualisation. Mais cette interface étant plutôt agréable et bien faite, je vous conseille de l'installer en même temps :
Si vous installez Pi-
On vous demande ensuite si vous souhaitez enregistrer les demandes DNS, là c'est à vous de voir. Si vous souhaitez garder un historique, alors mettez oui, sinon, le contraire mais vous perdrez une partie des fonctionnalités (voir écran suivant).
Pour son interface web, Pi-
Choix du niveau de vie privée
Une fois cette dernière question répondue, le script va faire ce qu'il doit, à savoir télécharger les dépôts GitHub et configurer Pi-
Écran récapitulatif de l'installation
Notez bien le mot de passe pour l'interface web ainsi que les informations réseau. Il faut désormais configurer le service DHCP de l'endroit où nous nous trouvons.
III. Configuration du DHCP
Pour fonctionner, Pi-
Modifier les paramètres DNS dans le serveur DHCP en fonction chez vous (par exemple : votre Box)
Désactiver ce serveur et utiliser celui fourni par Pi-
Modifier manuellement chaque appareil pour qu'il utilise Pi-
Je choisis personnellement la première solution. En effet, il y a de fortes chances que vous disposiez d'un serveur DHCP là où vous vous trouvez (généralement, votre box). Inutile donc de s'embêter plus que ça.
Comme il existe un grand nombre de possibilités, entre les différentes box opérateur (que je ne connais pas toutes) et ceux qui ont un routeur perso, je ne vais pas mettre de capture d'écran pour ces modifications. Dans tous les cas, il faudra vous rendre dans les paramètres du DHCP et modifier le paramètre "DNS" pour y mettre l'adresse IP de votre Pi-
Une fois ceci fait, s'il y a des appareils qui ont été allumés avant, ils auront gardé les anciens paramètres, il faudra donc relancer la demande de configuration.
Sur les postes Windows, avec une invite de commandes :
Sur un poste Linux :
dhclient
Pour tout autre appareil, il faudra les éteindre et les rallumer.
Ils devraient donc obtenir les bon paramètres, pour le vérifier :
ipconfig /all
Vous devriez avoir dans le champ DNS l'adresse de votre Pi-
IV. Utilisation de l'interface web Pi-
Pour faciliter son administration, Pi-
Visualiser en temps réel le nombre de requêtes, celles qui sont bloquées, etc.
Gérer votre Whitelist et Blacklist
Ajouter des entrées statiques, des alias, etc.
Ajouter des listes
Et bien d'autres fonctions!
Pour ma part, je vais ajouter une liste de blocage. Comme on l'a vu plus haut, une seule liste a été installée en même temps que le soft. Il existe beaucoup de listes pour les sites de pubs mais il est préférable d'en choisir au moins une spécifique au pays dans lequel on vit. Une des listes les plus connue est EasyList et l'une d'entre elle est spécifique à la France : EasyList-
Pour l'ajouter, il faut tout d'abord se connecter à l'interface admin : http://<ip_du_PiHole>/admin
Le mot de passe administrateur a été généré auparavant (voir capture de fin d'installation), il suffit donc de le renseigner pour accéder à l'interface :
Interface de Pi-
On voit par exemple qu'il y a deux clients connectés au Pi-
Pour ajouter notre liste, direction le menu "Group Management" et "Adlists" :
On voit bien notre première liste "StevenBlack", pour ajouter la notre, copiez le lien que je vous ai donné plus haut et insérez-
Ajouter une liste dans Pi-
Il nous reste plus qu'a cliquer sur "Add" pour l'ajouter. Afin de l'activer, il est nécessaire de réaliser une étape supplémentaire pour "avertir" Pi-
Soit vous utilisez la ligne de commande intégrée
Soit l'interface web
Je choisis personnellement la deuxième car si vous avez bien observé, le lien vers le script PHP qui réalise la mise à jour est directement sur la page où nous sommes (le mot "online"). Il suffit donc de cliquer dessus, ce qui vous amènera sur une page où seul une option s'offrira à vous :
La page affichera le résultat du script une fois terminé, ce qui signifiera que la liste a été prise en compte (sauf message d'erreur bien entendu).
Comme annoncé en début de tuto, Pi-
Vous pouvez bien entendu ajouter toute liste qui vous paraîtrait pertinente ou gérer directement votre Blacklist manuellement dans le menu correspondant.
V. Tests de Pi-
Maintenant que tout est en place, il suffit de tester la solution pour s'assurer qu'elle fonctionne correctement.
Je vais par exemple tenter de joindre le domaine http://admin.gentbcn.org/ qui est sur la liste de Abuse.ch car connu comme hébergeant des malwares :
Visiblement, j'ai été bloqué quelque part, pour s'assurer que c'est bien le Pi-
VI. Conclusion
Nous avons vu dans ce tuto comment mettre en place de manière simple non seulement un serveur DNS qui va éliminer la plupart des publicités pour le confort de navigation, mais aussi ajouter une couche de sécurité en bloquant les domaines de phishing ou diffusant des malwares.
Le tout gratuitement et de manière économique si installé sur un Raspberry-
____________________________
Haut de page