13-02-2021, 14:39:04
Bonjour,
Depuis quelques semaines j’expérimente le soft "pi-hole" (j'ai longtemps reporté) sur ma rpi 3 qui fait office de serveur et je suis assez satisfait du résultat !
Mon but à titre perso était de voir et contrôler le flux entrant et sortant, de mettre du cache dns et de comprendre un peu plus certains fonctionnement réseaux par l'expérimentation.
Après usage, compréhension et un poil de config, je bloque 20% de mon trafique à la source (un peu plus si je tiens vraiment compte de la switch, de l'ordi du bureau sous windows et et de quelques usages mobiles de ma familly)
J'ai également environ 13% de mon trafic qui est directement servi par le cache dns (mais il faudrait que je teste sans mon cache dns sur mon ordi principal qui fausse un peu les données) et donc accélérer la résolution DNS.
Vu que je suis fibré, le ressenti n'est pas très visible mais ça à d'autres avantages.
Alors, j'avoue que pour en tirer pleinement profit, il faut un peu mettre les mains dans le cambouis :
1. A minima, il faut config sa box internet pour :
- utiliser le dns de la pi-hole
- attribuer une ip fixe à la pi-hole sur le réseau local. (si c'est dynamique, forcément, à chaque changement, il se vautre)
- attribuer un dns secondaire : si jamais le serveur dns du pi-hole ne répond plus, vous vous retrouvez sans internet alors qu'avec un dns secondaire, il bascule automatiquement sur ce dernier si le premier ne répond plus.
Sur ma box free, c'est vraiment très simple à configurer mais j'ignore pour les autres opérateurs.
2. rajouter des listes blanches et/ou noires pour consolider son filtrage.
Le mieux est de passer par des filtres tout fait (ça regorge sur internet) qui sont généralement étudié pour des usages précis :
https://nicolasforcet.com/2019/11/02/mei...et-autres/
Bien évidement, on peut rajouter nos propres filtres.
3. Forcer ces différents devices a utiliser une ip fixe sur son serveur local (ça se configure via sa box internet) :
1 ip pour chaque téléphone, 1 pour la switch, 1 pour la télé etc.
Une fois fait, on peut suivre le traffic pour chaque device repérer du traffic bizaroide.
4. Utiliser les fonctionnalités de DNS.
On peut créer ses propres noms de domaines et alias propre au réseau local.
Pratique pour :
- accéder à un serveur local via un nom de domaine
- forcer google.com à être redirigé vers qwant.com ou duckduckgo.com pour éduquer nos usages
5. possibilité de sauvegarder sa conf pi-hole.
Une fonction "téléporter" permet de récupérer toute sa config dans un fichier.
Pratique si l'on veut :
- refaire à l'identique le jour ou son rpi rend l'âme (on est jamais trop prudent en terme de backup)
- reproduire une config sur un autre pi-hole sans y passé des heures
Seul point que je trouve dommage : ne pas pouvoir s'interfacer avec un service en ligne tel qu'un dépôt git (peut-être envisable via les api).
Ca permettrait d'update sa config sur git et la partager sur plusieurs instances de pi-hole par exemple.
Y'a encore des points que je n'ai pas pleinement explorés :
- utiliser le pi-hole comme serveur DHCP (pas vraiment d'utilité pour l'instant)
- utiliser les API de Pi-Hole. C'est plus barbu pour le coup
- accès en ssh : pour l'instant le service web est tellement exhaustif que j'en voit pas l'utilité.
- utiliser log2ram : stocker les logs en passant par la ram pour limiter au max les écritures sur la sd et/ou le ssd => ma mission de la semaine !
Avantages :
Pi-Hole permet d'améliorer le débit internet, de filter le traffic et de visualiser ce qui circule dans les tuyaux.
Il est basé sur des outils déjà éprouvés (dnsmasq, curl, lightttp) mais rend l'usage beaucoup facile en rajoutant une interface web cohérente pour orchestrer tout ce beau monde.
Ca fait le filtrage des pubs et autres cochonneries en amont à la différence de adblock et cie (attention, ça ne veut pas dire qu'il ne faut plus les utiliser, mais c'est très complémentaire)
et par conséquent couvre l'ensemble de son parc de machines en une fois et sur l'ensemble des navigateurs et sans télécharger la ressource. (un adblock va faire les choses en aval donc ne pas rendre visible un truc déjà téléchargé)
Ca va aussi améliorer le profilage (attention, ce n'est pas parfait et ça n'annule pas le bon sens et la responsabilité) en bloquant les stats google, microsoft etc souvent alimenté à notre insu sur des sites que l'on parcours.
Bien évidement, on amélore son impact environnemental (et financier).
C'est vraiment loin d'être gourmand : ça utilise 0.4% de mon cpu et 7.6% de ma ram sur mon rpi 3B+ : ça me semble parfaitement utilisable sur du rpi2 voir pi zéro.
J'ai été bluffé par la pertinence de certains blocages :
par ex: la switch envoi des stats régulièrement a nintendo.
dès l'activation du pi-hole, ces appels ont été bloqués mais ça n'a pas altéré l'expérience utilisateur.
Même constat : dès qu'on va sur des sites grand public : actualité, site sportif etc, ça bloque une tonne de pubs et fluidifie la navigation. (parce que mine de rien, ça sollicite pas mal le navigateur rien que pour l'affichage)
Les inconvénients :
Il faut un peu comprendre comment fonctionne le web, le réseau etc.
Ça peut bloquer un peu au début mais on ne peut que en ressortir gagnant.
Avoir en tête qu'il peut y avoir plusieurs niveaux de caches :
cache dns de pi-hole, cache dns de ton poste (j'ai nscd sur mon ordi et j'oubli par moment son influence), cache dans le navigateur (très persistant sur du mobile).
J'en parle peut-être trop tôt pour avoir un recul suffisant.
Mes déceptions :
- Pas de niveau de droits sur l'interface.
J'aurais bien aimé un compte admin ou l'on fait tout et des comptes utilisateurs ou on visualise juste.
- Pi-Hole fait du cache de DNS (donc ça accélère la résolution DNS) mais pas du cache HTTP donc il faut config des trucs en plus comme un serveur proxy pour faire ça.
Pourquoi en parler sur Primtux :
Dans un école et couplé à Primtux, ça peut avoir plusieurs avantages :
- filtrage non pris en compte par CTParental
- fitrage avant CTParental
- amélioration du débit internet dans des zones mal couvertes grâce au filtrage et au cache
- meilleur respect de la vie privé
- ça réduit l'impact cpu, ram des navigateurs car ça évite l'affichage de pubs inutiles.
- budget dérisoire : une pi zéro ne coûte rien et ne consomme rien
Ca ne devrait pas poser de soucis particulier à mettre en place par un ERUN voir un prof un peu techos.
Néanmoins, il reste d'autres outils qui peuvent déjà faire mieux que rien :
nscd : on install et ça lance un daemon qu'on oubli qui fait office de cache dns sur le poste utilisateur.
dnsmasq pour les plus aventureux
sans doute d'autres trucs mais j'ai pas approfondi.
Depuis quelques semaines j’expérimente le soft "pi-hole" (j'ai longtemps reporté) sur ma rpi 3 qui fait office de serveur et je suis assez satisfait du résultat !
Mon but à titre perso était de voir et contrôler le flux entrant et sortant, de mettre du cache dns et de comprendre un peu plus certains fonctionnement réseaux par l'expérimentation.
Après usage, compréhension et un poil de config, je bloque 20% de mon trafique à la source (un peu plus si je tiens vraiment compte de la switch, de l'ordi du bureau sous windows et et de quelques usages mobiles de ma familly)
J'ai également environ 13% de mon trafic qui est directement servi par le cache dns (mais il faudrait que je teste sans mon cache dns sur mon ordi principal qui fausse un peu les données) et donc accélérer la résolution DNS.
Vu que je suis fibré, le ressenti n'est pas très visible mais ça à d'autres avantages.
Alors, j'avoue que pour en tirer pleinement profit, il faut un peu mettre les mains dans le cambouis :
1. A minima, il faut config sa box internet pour :
- utiliser le dns de la pi-hole
- attribuer une ip fixe à la pi-hole sur le réseau local. (si c'est dynamique, forcément, à chaque changement, il se vautre)
- attribuer un dns secondaire : si jamais le serveur dns du pi-hole ne répond plus, vous vous retrouvez sans internet alors qu'avec un dns secondaire, il bascule automatiquement sur ce dernier si le premier ne répond plus.
Sur ma box free, c'est vraiment très simple à configurer mais j'ignore pour les autres opérateurs.
2. rajouter des listes blanches et/ou noires pour consolider son filtrage.
Le mieux est de passer par des filtres tout fait (ça regorge sur internet) qui sont généralement étudié pour des usages précis :
https://nicolasforcet.com/2019/11/02/mei...et-autres/
Bien évidement, on peut rajouter nos propres filtres.
3. Forcer ces différents devices a utiliser une ip fixe sur son serveur local (ça se configure via sa box internet) :
1 ip pour chaque téléphone, 1 pour la switch, 1 pour la télé etc.
Une fois fait, on peut suivre le traffic pour chaque device repérer du traffic bizaroide.
4. Utiliser les fonctionnalités de DNS.
On peut créer ses propres noms de domaines et alias propre au réseau local.
Pratique pour :
- accéder à un serveur local via un nom de domaine
- forcer google.com à être redirigé vers qwant.com ou duckduckgo.com pour éduquer nos usages
5. possibilité de sauvegarder sa conf pi-hole.
Une fonction "téléporter" permet de récupérer toute sa config dans un fichier.
Pratique si l'on veut :
- refaire à l'identique le jour ou son rpi rend l'âme (on est jamais trop prudent en terme de backup)
- reproduire une config sur un autre pi-hole sans y passé des heures
Seul point que je trouve dommage : ne pas pouvoir s'interfacer avec un service en ligne tel qu'un dépôt git (peut-être envisable via les api).
Ca permettrait d'update sa config sur git et la partager sur plusieurs instances de pi-hole par exemple.
Y'a encore des points que je n'ai pas pleinement explorés :
- utiliser le pi-hole comme serveur DHCP (pas vraiment d'utilité pour l'instant)
- utiliser les API de Pi-Hole. C'est plus barbu pour le coup
- accès en ssh : pour l'instant le service web est tellement exhaustif que j'en voit pas l'utilité.
- utiliser log2ram : stocker les logs en passant par la ram pour limiter au max les écritures sur la sd et/ou le ssd => ma mission de la semaine !
Avantages :
Pi-Hole permet d'améliorer le débit internet, de filter le traffic et de visualiser ce qui circule dans les tuyaux.
Il est basé sur des outils déjà éprouvés (dnsmasq, curl, lightttp) mais rend l'usage beaucoup facile en rajoutant une interface web cohérente pour orchestrer tout ce beau monde.
Ca fait le filtrage des pubs et autres cochonneries en amont à la différence de adblock et cie (attention, ça ne veut pas dire qu'il ne faut plus les utiliser, mais c'est très complémentaire)
et par conséquent couvre l'ensemble de son parc de machines en une fois et sur l'ensemble des navigateurs et sans télécharger la ressource. (un adblock va faire les choses en aval donc ne pas rendre visible un truc déjà téléchargé)
Ca va aussi améliorer le profilage (attention, ce n'est pas parfait et ça n'annule pas le bon sens et la responsabilité) en bloquant les stats google, microsoft etc souvent alimenté à notre insu sur des sites que l'on parcours.
Bien évidement, on amélore son impact environnemental (et financier).
C'est vraiment loin d'être gourmand : ça utilise 0.4% de mon cpu et 7.6% de ma ram sur mon rpi 3B+ : ça me semble parfaitement utilisable sur du rpi2 voir pi zéro.
J'ai été bluffé par la pertinence de certains blocages :
par ex: la switch envoi des stats régulièrement a nintendo.
dès l'activation du pi-hole, ces appels ont été bloqués mais ça n'a pas altéré l'expérience utilisateur.
Même constat : dès qu'on va sur des sites grand public : actualité, site sportif etc, ça bloque une tonne de pubs et fluidifie la navigation. (parce que mine de rien, ça sollicite pas mal le navigateur rien que pour l'affichage)
Les inconvénients :
Il faut un peu comprendre comment fonctionne le web, le réseau etc.
Ça peut bloquer un peu au début mais on ne peut que en ressortir gagnant.
Avoir en tête qu'il peut y avoir plusieurs niveaux de caches :
cache dns de pi-hole, cache dns de ton poste (j'ai nscd sur mon ordi et j'oubli par moment son influence), cache dans le navigateur (très persistant sur du mobile).
J'en parle peut-être trop tôt pour avoir un recul suffisant.
Mes déceptions :
- Pas de niveau de droits sur l'interface.
J'aurais bien aimé un compte admin ou l'on fait tout et des comptes utilisateurs ou on visualise juste.
- Pi-Hole fait du cache de DNS (donc ça accélère la résolution DNS) mais pas du cache HTTP donc il faut config des trucs en plus comme un serveur proxy pour faire ça.
Pourquoi en parler sur Primtux :
Dans un école et couplé à Primtux, ça peut avoir plusieurs avantages :
- filtrage non pris en compte par CTParental
- fitrage avant CTParental
- amélioration du débit internet dans des zones mal couvertes grâce au filtrage et au cache
- meilleur respect de la vie privé
- ça réduit l'impact cpu, ram des navigateurs car ça évite l'affichage de pubs inutiles.
- budget dérisoire : une pi zéro ne coûte rien et ne consomme rien
Ca ne devrait pas poser de soucis particulier à mettre en place par un ERUN voir un prof un peu techos.
Néanmoins, il reste d'autres outils qui peuvent déjà faire mieux que rien :
nscd : on install et ça lance un daemon qu'on oubli qui fait office de cache dns sur le poste utilisateur.
dnsmasq pour les plus aventureux
sans doute d'autres trucs mais j'ai pas approfondi.