Aller au contenu

[TUTO] Pi-Hole blocage des pubs sur le réseau


Messages recommandés

Posté(e)

Bonjour,

J'ai suivi ce tuto en installant la dernière version de pi-hole/pi-hole  (latest), le docker s'arrête de manière inattendue après une voire deux minutes. De plus, je ne peux accéder à l'interface bien que j'ai ouvert le port 8888 sur le NAS. Ai je loupé quelque chose ?  Merci

Je vais retenter une installation sur la version 

Posté(e) (modifié)
Le 03/05/2019 à 15:01, shadowking a dit :

On pourra peut-être t'aider si tu nous fournis le détail des logs du container, là ainsi... 😄

Désolé, mon message a été écrit en mode "brouillon" de mon côté. J'ai cherché comment accéder au log du journal (une recherche sur le forum, mais mon FTP foire... finalement j'ai trouvé un autre moyen à partir de la page "conteneur" puis aller dans "détails" et enfin onglet"journal")

En vérifiant une nouvelle fois la page 1, je me suis aperçu que je n'avais pas défini l'adresse IP de mon NAS comme "server IP" (😵), une fois corrigé, j'ai des arrêts  successifs et évidemment aucun accès à http://192.168.1.45:8888/admin/index.php

Un bout de mon log :

2019-05-08 18:14:25	stdout	[s6-finish] syncing disks.
2019-05-08 18:14:25	stdout	[cont-finish.d] done.
2019-05-08 18:14:25	stdout	[cont-finish.d] executing container finish scripts...
2019-05-08 18:14:25	stdout	[cont-init.d] 20-start.sh: exited 1.
2019-05-08 18:14:25	stdout	2019-05-08 18:14:25: (configfile.c.1154) source: /etc/lighttpd/lighttpd.conf line: 56 pos: 1 parser failed somehow near here: (EOL) 
2019-05-08 18:14:25	stdout	2019-05-08 18:14:25: (configfile.c.1154) source: find /etc/lighttpd/conf-enabled -name '*.conf' -a ! -name 'letsencrypt.conf' -printf 'include "%p"\n' 2>/dev/null line: 3 pos: 1 parser failed somehow near here: (EOL) 
2019-05-08 18:14:25	stdout	2019-05-08 18:14:25: (configfile.c.1154) source: /etc/lighttpd/conf-enabled/15-fastcgi-php.conf line: 16 pos: 18 parser failed somehow near here: (COMMA) 
2019-05-08 18:14:25	stdout	::: Testing lighttpd config: Error: duplicate array-key: ServerIP. Please get rid of the duplicate entry.
2019-05-08 18:14:25	stdout	::: Testing pihole-FTL DNS: FTL started!
2019-05-08 18:14:25	stdout	https://hosts-file.net/ad_servers.txt
2019-05-08 18:14:25	stdout	https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt
2019-05-08 18:14:25	stdout	https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt
2019-05-08 18:14:25	stdout	https://zeustracker.abuse.ch/blocklist.php?download=domainblocklist
2019-05-08 18:14:25	stdout	http://sysctl.org/cameleon/hosts
2019-05-08 18:14:25	stdout	https://mirror1.malwaredomains.com/files/justdomains
2019-05-08 18:14:25	stdout	https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
2019-05-08 18:14:25	stdout	::: Preexisting ad list /etc/pihole/adlists.list detected ((exiting setup_blocklists early))
2019-05-08 18:14:25	stdout	Using IPv4 and IPv6
2019-05-08 18:14:25	stdout	"VIRTUAL_HOST" => "0.0.0.0",
2019-05-08 18:14:25	stdout	"ServerIP" => "0.0.0.0",
2019-05-08 18:14:25	stdout	"PHP_ERROR_LOG" => "/var/log/lighttpd/error.log",
2019-05-08 18:14:25	stdout	"VIRTUAL_HOST" => "192.168.1.45",
2019-05-08 18:14:25	stdout	"ServerIP" => "192.168.1.45",
2019-05-08 18:14:25	stdout	Added ENV to php:
2019-05-08 18:14:25	stdout	DNSMasq binding to default interface: eth0
2019-05-08 18:14:25	stdout	Existing DNS servers used (8.8.8.8 & 8.8.4.4)
2019-05-08 18:14:25	stdout	Docker DNS variables not used
2019-05-08 18:14:25	stdout	::: Pre existing WEBPASSWORD found
2019-05-08 18:14:25	stdout	INFO: Without proper router DNAT forwarding to 192.168.1.45:8888, you may not get any blocked websites on ads
2019-05-08 18:14:25	stdout	Custom WEB_PORT set to 8888
2019-05-08 18:14:24	stdout	chown: cannot access '/etc/pihole/dhcp.leases': No such file or directory
2019-05-08 18:14:24	stdout	  [i] Copying 01-pihole.conf to /etc/dnsmasq.d/01-pihole.conf... [K  [[32m✓[0m] Copying 01-pihole.conf to /etc/dnsmasq.d/01-pihole.conf
2019-05-08 18:14:24	stdout	  [i] Existing dnsmasq.conf found... it is not a Pi-hole file, leaving alone!
2019-05-08 18:14:24	stdout	  [i] Installing configs from /etc/.pihole...
2019-05-08 18:14:24	stdout	
2019-05-08 18:14:24	stdout	  [i] Existing PHP installation detected : PHP version 7.0.33-0+deb9u1
2019-05-08 18:14:24	stdout	stty: 'standard input': Inappropriate ioctl for device
2019-05-08 18:14:24	stdout	domain	home
2019-05-08 18:14:24	stdout	nameserver	192.168.1.1
2019-05-08 18:14:24	stdout	
2019-05-08 18:14:24	stdout	WARNING Misconfigured DNS in /etc/resolv.conf: Primary DNS should be 127.0.0.1 (found nameserver	192.168.1.1)
2019-05-08 18:14:24	stdout	WARNING Misconfigured DNS in /etc/resolv.conf: Two DNS servers are recommended, 127.0.0.1 and any backup server
2019-05-08 18:14:24	stdout	 ::: Starting docker specific checks & setup for docker pihole/pihole
2019-05-08 18:14:24	stdout	stty: 'standard input': Inappropriate ioctl for device
2019-05-08 18:14:24	stdout	[cont-init.d] 20-start.sh: executing... 
2019-05-08 18:14:24	stdout	[cont-init.d] executing container initialization scripts...
2019-05-08 18:14:24	stdout	[fix-attrs.d] done.
2019-05-08 18:14:24	stdout	[fix-attrs.d] 01-resolver-resolv: exited 0.
2019-05-08 18:14:24	stdout	[fix-attrs.d] 01-resolver-resolv: applying... 
2019-05-08 18:14:24	stdout	[fix-attrs.d] applying ownership & permissions fixes...
2019-05-08 18:14:24	stdout	[s6-init] ensuring user provided files have correct perms...exited 0.
2019-05-08 18:14:24	stdout	[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
2019-05-08 18:14:16	stdout	[s6-finish] sending all processes the KILL signal and exiting.
2019-05-08 18:14:13	stdout	[s6-finish] sending all processes the TERM signal.
2019-05-08 18:14:08	stdout	[s6-finish] syncing disks.

 

Modifié par jfamiens
Posté(e)

Hello,

Tu as testé la méthode du premier post ou celle de Tony Lawrence référencée par @Fredje_B ?

Le 18/02/2019 à 12:40, Fredje_B a dit :

Merci pour le partage...c'est une fonctionnalité que je cherchais depuis un certain temps.

Par contre, la méthode que tu décris ne fonctionne pas chez moi...j'obtiens une erreur au lancement de lighttpd qui me dit qu'il ne sais pas faire le mapping avec le port indiqué.

J'ai suivis ce tuto (en Anglais) et ca fonctionne parfaitement! http://tonylawrence.com/posts/unix/synology/free-your-synology-ports/

 

  • 1 mois après...
  • 2 semaines après...
Posté(e)

Bonjour à tout le monde,

je viens d'installer pi-hole.
Au final c'est assez simple à mettre en place.
Maintenant je rentre dans la phase pour "tweaker" un peu l'outil

Quels seraient vos conseils ? c'est à dire : 

Liste à ajouter dans l'outil
Domaine à bloquer
Performance de pi-hole

 

Merci beaucoup

Bonne journée

Posté(e)

Pour ma part j'utilise surtout un blocage à base d'expressions régulières combiné à une liste de noms de domaine supplémentaires. J'obtiens de très bons résultats (moins de faux-positifs).

Pour la blocklist https://tspprs.com/dl/malware

Pour les expressions régulières :
A ajouter settings -> blacklist -> add regex :

  • ^(.+[-_.])??adse?rv(er?|ice)?s?[0-9]*[-.]
  • ^(.+[-_.])??m?ad[sxv]?[0-9]*[-_.]
  • ^adim(age|g)s?[0-9]*[-_.]
  • ^adtrack(er|ing)?[0-9]*[-.]
  • ^advert(s|is(ing|ements?))?[0-9]*[-_.]
  • ^aff(iliat(es?|ion))?[-.]
  • ^analytics?[-.]
  • ^banners?[-.]
  • ^beacons?[0-9]*[-.]
  • ^count(ers?)?[0-9]*[-.]
  • ^pixels?[-.]
  • ^stat(s|istics)?[0-9]*[-.]
  • ^telemetry[-.]
  • ^track(ers?|ing)?[0-9]*[-.]
  • ^traff(ic)?[-.]
Posté(e)

je viens de faire un check, 

Pas mal de blockage lié à linkedin, il a fallu faire quelques petits réglages !!

Il y a 23 heures, shadowking a dit :

Pour ma part j'utilise surtout un blocage à base d'expressions régulières combiné à une liste de noms de domaine supplémentaires. J'obtiens de très bons résultats (moins de faux-positifs).

Pour la blocklist https://tspprs.com/dl/malware

Pour les expressions régulières :
A ajouter settings -> blacklist -> add regex :

  • ^(.+[-_.])??adse?rv(er?|ice)?s?[0-9]*[-.]
  • ^(.+[-_.])??m?ad[sxv]?[0-9]*[-_.]
  • ^adim(age|g)s?[0-9]*[-_.]
  • ^adtrack(er|ing)?[0-9]*[-.]
  • ^advert(s|is(ing|ements?))?[0-9]*[-_.]
  • ^aff(iliat(es?|ion))?[-.]
  • ^analytics?[-.]
  • ^banners?[-.]
  • ^beacons?[0-9]*[-.]
  • ^count(ers?)?[0-9]*[-.]
  • ^pixels?[-.]
  • ^stat(s|istics)?[0-9]*[-.]
  • ^telemetry[-.]
  • ^track(ers?|ing)?[0-9]*[-.]
  • ^traff(ic)?[-.]

 

une question, sur la liste : un copier coller suffit ?

et pour la block list, tu l'ajoutes simplement dans : Blocklists used to generate Pi-hole's Gravity ?

merci

Posté(e) (modifié)

A ta place je rentrerais les chaînes de caractères une par une.
Et oui pour la blocklist 🙂

Modifié par shadowking
Posté(e) (modifié)
Il y a 14 heures, Dimebag Darrell a dit :

ah oui quand même !

uniquement quelle liste as tu activé ?

je suis à 0,4% lol

0.4% ok, mais y a t'il une gêne au niveau des pubs ?

Y en a t'il beaucoup qui passent ?

Modifié par pluton212+
Posté(e)

Non, je remarque que des sites et des applications comme Eurosport, n'affiche plus de pub au démarrage de celle-ci, donc bonne nouvelle

Néanmoins, j'ai une petite question:

PiHole tourne sur un docker, est-il normal qu'il ne voit qu'un client ? (dans le total queries)

Dernière question, avez vous un site de test qui peut donner une bonne idée de la performance de Pi-Hole ?

 

Merci

Posté(e)

Le client serait-it localhost par hasard ?
Si tu as créé un conteneur en mode macvlan, il faut que ton serveur DHCP (ta box ou ton routeur) fournisse l'adresse IP physique de ton conteneur comme serveur DNS.

Posté(e)

Oui, il est en localhost,

Assez bizaremment dans les network settings, j'ai une adresse IP en 172.x.x.x, sur eth0

J'imagine que c'est l'adresse IP de l'application pihole dans le docker ?

 

Dans les settings,  onglet DNS:

Quel upstream DNS server utilisez vous ?

Dans interface listening behavior ? : que choississez vous ?

Dernier point :

Conditional forwarding :

est ce que vous cochez cette option, (à quoi sert-elle) ?

Posté(e) (modifié)

Si tu as une adresse 172.x.x.x alors tu es certainement en mode bridge, pour ma part je n'ai jamais réussi à faire fonctionner correctement Pi-hole en mode bridge sur mon NAS, et ça oblige à choisir entre le paquet DNS server de DSM ou Pi-hole, car tous deux sollicitent le port 53.
Deux solutions face à cela :
- Héberger Pi-hole sur un autre périphérique (ce que j'ai fait avec un raspberry, solution plus onéreuse mais simplissime)
- Utilisee le pilote macvlan au lieu de bridge à la création du container.

Le deuxième cas permet de créer une adresse "physique" directement accessible sur ton réseau, donc attribuer une adresse MAC et une adresse IP en 192.168.x.x (ou quelque soit le sous-réseau que tu utilises sur ton LAN).
Tu trouveras un tuto complet au lien qui a déjà été posté par @Fredje_B en début de sujet :

Le 18/02/2019 à 12:40, Fredje_B a dit :

Merci pour le partage...c'est une fonctionnalité que je cherchais depuis un certain temps.

Par contre, la méthode que tu décris ne fonctionne pas chez moi...j'obtiens une erreur au lancement de lighttpd qui me dit qu'il ne sais pas faire le mapping avec le port indiqué.

J'ai suivis ce tuto (en Anglais) et ca fonctionne parfaitement! http://tonylawrence.com/posts/unix/synology/free-your-synology-ports/

De plus le créateur du tutoriel est très actif dans les commentaires, donc n'hésite pas à l'interpeller en cas de problème.

Pour tes autres questions :

- En DNS upstream j'utilise ceux de FDN : 80.67.169.12 et 80.67.169.40
- L' interface permet de déterminer quelles connexions avec le réseau font l'objet de filtrages, tu pourrais très bien dire que les périphériques communicant en wifi sont sous l'effet anti-pub, le filaire non... peu probable. Donc si tu es connecté en filaire et que tous tes périphériques doivent être filtrés, tu peux vraisemblablement mettre eth0.
- Conditional forwarding : si le serveur DHCP n'est pas Pi-hole, alors à moins d'éditer manuellement le fichier resolv.conf du container, tu ne verras jamais que les adresses IP des périphériques et pas leur nom. Cette option permet de spécifier l'adresse IP de ton serveur DHCP (le routeur dans mon cas), et le nom du domaine local, et ainsi voir les noms au lieu des adresses, c'est quand même plus lisible. 🙂

Modifié par shadowking
Posté(e)
Citation

- Conditional forwarding : si le serveur DHCP n'est pas Pi-hole, alors à moins d'éditer manuellement le fichier resolv.conf du container, tu ne verras jamais que les adresses IP des périphériques et pas leur nom. Cette option permet de spécifier l'adresse IP de ton serveur DHCP (le routeur dans mon cas), et le nom du domaine local, et ainsi voir les noms au lieu des adresses, c'est quand même plus lisible.

Mon DHCP est activé sur mon routeur, (disable sur PiHole).

Imaginons que je n'active pas le conditional forwarding, quel est l'impact sur le screening des requètes ?

 

Posté(e) (modifié)

Tu verras par exemple 192.168.1.45 pour un périphérique de ton réseau, au lieu de au hasard tv-samsung.local

Ce n'est pas très gênant si tu ne comptes jamais analyser les requêtes de chaque périphérique indépendamment cela dit.

Modifié par shadowking
Posté(e)

Merci pour l'info,

J'ai remarqué un souci concernant une requête lb._dns-sd._udp in-addr.arpa qui vient polluer mes stats (ça représente quasiment 60% de mon traffic), ainsi qu'une autre dans le même genre.

Une des alternatives seraient de désactiver le conditional forwarding.

Posté(e) (modifié)

Est-ce que tu as mis sur ton routeur ou ta box l'adresse IP du Pi-Hole comme serveur DNS ? Attention je ne parle pas de la partie DHCP, mais bien de leur(s) propre(s) serveur(s) DNS.
Si oui, il ne faut pas, car tu crées une boucle en faisant de la sorte.

Modifié par shadowking
Posté(e)

Pour peut-être mettre plus de contexte.

    •  
    • Modem Box FAI (en mode DMZ) car impossible de la mettre en bridge. (192.168.0.x)
      I
      I
      I
    • USG – Unifi (routeur) : serveur DHCP + routing (port forwarding ect…), DNS routé vers IP PiHole (docker synology) (IP range LAN 192.168.1.x)
      I
      I
      I
  •            Pi-Hole (sur Synology – Docker)

Pour info, dans le Top client (blocked only) - screenshoot que tu as fait ci-dessus, je vous une adresse en 172.17.0.1 (il n'y a qu'un seul client !)

 

Par rapport ta question, dans mon routeur, j'ai simplement remplacé l'adresse IP de mon FAI, par l'adresse IP du PiHole (IP du docker sur le syno)

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.