Software-update: Pi-hole 2.11.2

Pi-hole logo (75 pix)Pi-hole is een advertising-aware dns- en webserver bedoeld om te draaien op een Raspberry Pi in jouw netwerk. Wanneer er een verzoek van elk willekeurig apparaat binnenkomt om een reclamedomein te benaderen, zal Pi-hole dit ombuigen naar zichzelf. Hierdoor zullen pagina's sneller laden en kan er in potentie ook malware buiten de deur worden gehouden. Voor meer informatie verwijzen we jullie door naar de uitleg en video's op deze pagina, of deze handleiding van Tweaker jpgview. De ontwikkelaars hebben versie 2.11.2 uitgebracht en hierin zijn de volgende problemen verholpen:

Fixes
  • Fix for multiple interface installations. #1116
  • Fix typo in webpage.sh #1099
  • Fix updater failing on non-English systems #1096

Pi-hole dashboard

Versienummer 2.11.2
Releasestatus Final
Besturingssystemen Scripttaal
Website Pi-hole
Download https://github.com/pi-hole/pi-hole/releases
Bestandsgrootte 85,00kB
Licentietype Voorwaarden (GNU/BSD/etc.)

Reacties (121)

121
120
89
10
2
5
Wijzig sortering
Wanneer er een verzoek van elk willekeurig apparaat binnenkomt om een reclamedomein te benaderen, zal Pi-hole dit ombuigen naar zichzelf. Hierdoor zullen pagina's sneller laden en kan er in potentie ook malware buiten de deur worden gehouden.
Niet optimaal. Wat er dus gebeurt is dat als een client, bijvoorbeeld, doubleclick.net opvraagt, het apparaat zijn eigen IP adres, laten we zeggen, 192.168.1.100, als antwoord geeft. Wat de client dan vervolgens doet in zijn browser is een verbinding opzetten naar 192.168.1.100 en daar de gevraagde resource opvragen, wat ongetwijfeld in een 404 zal eindigen. Je Pi-Hole krijgt hiermee veel HTTP-verzoeken te verwerken (afhankelijk van hoeveel clients je erachter hebt), en je client doet nog steeds veel nutteloze verzoeken.

Beter is het om Response Zone Policies te gebruiken. Je DNS-server geeft dan niet het antwoord 192.168.1.100 maar in plaats daarvan een NXDOMAIN. Dit betekent zoveel als: deze domeinnaam is niet geregistreerd, en zal dus op een 'unknown host' error uitdraaien op de client. De client doet in dit geval niet eens een request naar een server (want hij heeft geen IP-adres), en de server krijgt veel minder requests te verwerken. Dit levert pas echt een snelheidswinst op.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Dank. Hoe implementeer ik dat thuis?
Eigenlijk zou dat in Pi-Hole geimplementeerd moeten worden. De manier waarop ik het doe vereist handmatige configuratie, maar dat wil ik best uitleggen.

Ik gebruik de MVPS-lijst als uitgangspunt.

Ik heb dan een bind-configuratie-bestand:

/etc/bind/named.conf.mvps

zone "mvps.rpz.zone" {
type master;
file "/etc/bind/db.mvps.rpz.zone";
};

Welke wordt ingeladen door de toevoeging van de volgende regel aan het bestand

/etc/bind/named.conf

// <bestaande regels laten staan>
include "/etc/bind/named.conf.mvps";


Het bestand waarnaar verwezen wordt, /etc/bind/db.mvps.rpz.zone, is gegenereerd op basis van de MVPS-hostlijst (mijne kun je eventueel hier downloaden). Het scriptje waarmee ik dat doe is hier te vinden: http://pastebin.com/L9J9khH7

Daarna moet je het configuratie-bestand nog inladen in de al bestaande opties door toevoeging van het volgende stukje configuratie aan het bestand:

/etc/bind/named.conf.options

// Plaats deze code tussen
// options {
response-policy {
zone "mvps.rpz.zone";
};
// }

En daarna zou het moeten werken. Je krijgt dan in de logfile (/var/log/syslog) log-regels als:

Jan 18 10:19:37 mydnsserver named[12474]: client 1.2.3.4#40786 (stats.g.doubleclick.net): rpz QNAME NXDOMAIN rewrite stats.g.doubleclick.net via stats.g.doubleclick.net.mvps.rpz.zone

Waaraan je kunt zien dat het werkt: NXDOMAIN werd teruggegeven voor deze hostname van Doubleclick.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Dank. Heb je dit al als RFC bij Pi-Hole aangemeld?

Googelend op Notrack Pi-Hole (n.a.v. reactie project.Bobby) lees ik over Notrack:

"Introducing NoTrack - My alternative to Pi-Hole
I use the same setup as Pi-Hole with redirecting advert and tracker websites to a blank website, rather than sinkholing through DNS queries.
NoTrack uses a completely different block list - one that I have built up myself.
Most people focus on getting rid of the ads that they can see, but there are a huge number of websites primarily focused in watching what you do on the Internet.
Many of these sites work by sending a tracking pixel (small 1x1 image). Cookie blocking will do absolutely nothing to stop these trackers. The only way is to prevent your computer from downloading the image.

NoTrack is still in development phase.
Still to do:
Write installer script
Add date selector to stats list
Build admin home page
Write equivalent of "tail -f" in php to monitor log file
Add search functionality to tracker block list
Add ability for user to customise block list from web interface
Learn how to use github
Finish off block list (Im probably about 25% through with over 8100 domains identified as trackers)

Here's my github project page: https://github.com/quidsup/NoTrack"

Bron.

Notrack zou het dus geïmplementeerd hebben zoals jij het voorstelt.
Dank. Heb je dit al als RFC bij Pi-Hole aangemeld?
Nee, ik heb geen Raspberry Pi ;) Ik gebruik Pi-Hole zelf niet maar vind het wel een interessant, lovenswaardig project. Mijn DNS-server draait op een server in het datacentrum zodat ik deze DNS-server altijd kan gebruiken en heb hem dus ook exclusief als DNS-server op mijn laptop ingesteld.

Wat no-track betreft, die doet ook geen RPZ. Ik quote even van hun website:
NoTrack provides a DNS server and a Web server. The DNS server responds with the IP of itself when your browser makes a request to a known tracking site.

Rather than sink-holing to nothing, which causes a small delay, the web server on NoTrack provides a 1 pixel image back to your browser.

This tricks your browser into thinking it has got what it requested. Satisfied, it then continues on with loading the rest of the page you actually requested.
Deze retourneert dus nog steeds zijn eigen IP-adres, en draait ook een webserver om die requests te vervullen. Het verschil is dat hij geen 404 fout geeft, maarin plaats daarvan een 1x1 afbeelding stuurt. Ik zie eigenlijk niet hoe dat beter zou werken, eerlijk gezegd; een 404 Not Found of een 500 Internal Server Error zou door de browser hetzelfde behandeld moeten worden als een 200 OK, lijkt mij.

De aanpak met RPZ voorkomt dat de browser een request doet - hij moet gedwongen opgeven omdat hij geen IP-adres krijgt voor de host waar hij verbinding mee wil maken.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

[...]
Mijn DNS-server draait op een server in het datacentrum zodat ik deze DNS-server altijd kan gebruiken en heb hem dus ook exclusief als DNS-server op mijn laptop ingesteld.

[...]
Wat voor DNS-server draai je? Een publiekelijke project, of zelf geconfigureerd. Wat is het voordeel om zelf een DNS-server te draaien?
Wat bedoel je met een publiekelijk project?

Het is mijn eigen fysieke server welke ik vooral hobbymatig gebruik, met diverse VM's. Eén van die VM's heb ik ingericht als DNS-server mbv de bind DNS-server. Deze server heb ik middels een white-list van IP-adressen ingesteld om alleen DNS recursion te doen voor mijn eigen apparaten - ik draai een simpele scriptje op mijn laptop die zijn IP-adres tijdelijk op deze whitelist te zetten als ik vanaf een nieuwe locatie verbinding maak.

De redenen dat ik het zo aangepakt heb:
  • Ad-blocker ingebouwd: doordat vele ad- en tracking-hosts geblokkeerd worden heb ik een snellere browse-ervaring en wordt ik minder getrackt
  • Zelf controle over de DNS-cache: ik ben veel met websites en domeinnamen bezig en het komt regelmatig voor dat wijzigingen in DNS gecached worden door een tussenliggende server. Door mijn eigen DNS-server te gebruiken kan ik altijd de cache legen zodat de wijzigingen direct zichtbaar zijn voor mij
  • Vermijden van Google DNS op andermans wifi - ik kom regelmatig tegen dat de DHCP-server op het wifi-netwerk van anderen waar ik verbinding mee maak Google's DNS-servers (8.8.8.8 en 8.8.4.4) uitdeelt als DNS-server. Aangezien ik Google zo veel mogelijk vermijdt wil ik hier natuurlijk óók geen gebruik van maken. Daarom heb ik mijn laptop hard geconfigureerd op één DNS-server die voor mij overal bereikbaar is
  • Meer vermijden van Google ;) Veel websites maken gebruik van Google's JavaScript CDN op ajax.googleapis.com. Mijn DNS-server geeft voor ajax.googleapis.com dan ook geen NXDOMAIN, maar zijn eigen IP-adres waar ik een complete mirror van de libraries op ajax.googleapis.com heb draaien. Zo werken deze websites voor mij nog steeds terwijl Google niet geïnformeerd wordt dat ik ze bezoek
  • Beschikbaarheid: ik heb de beschikbaarheid zelf in eigen hand. DNS van providers wil nog wel eens uitvallen of overbelast raken - ik heb daar nooit last van. Ik heb al meerdere malen meegemaakt dat mijn collega's of medegebruikers van een internetverbinding "zonder internet" zaten doordat de DNS server niet werkte, terwijl ik rustig verder kon werken.
Heb je er bezwaar tegen als ik of een andere Tweaker je voorstel als RFC indient?
Nee hoor, ga je gang.
Done:
https://discourse.pi-hole...performance-increase/1342

Allemaal even voten / reageren dat je dit een goed idee vindt!
(indien je dat vindt, natuurlijk).

[Reactie gewijzigd door Videopac op 23 juli 2024 08:12]

Ik vrees er voor (hoewel ik zelf geen linux goeroe ben)...
Het hart van pihole is dnsmasq, niet bind.
wijzigingen aan /etc/bind/named.conf.options, zoals MadEgg voorstelt moeten dus vertaald worden naar wijzigingen voor dnsmasq (als dat al kan). Aan het werk dus, MadEgg ...

[Reactie gewijzigd door jpgview op 23 juli 2024 08:12]

Dat laat ik graag aan anderen over ;) Ik ga toch geen Pi-Hole draaien op een server in het datacentrum. Ik heb de RFC wel gesteund overigens.

Dnsmasq ondersteund RPZ wellicht niet, maar dat zou wel een goede reden zijn om over te stappen op bind. Dat wat bind zwaarder is dan dsnmasq compenseer je wel weer met minder zinloze verzoeken aan de webserver in de RPi.
Wat is je DNS adres van je server in het datacentrum? :9

TweakDNS!
Zelfs als ik je die zou geven zou je eerst mijn authenticatie-mechanisme nog moeten hacken, anders krijg je alleen maar REFUSED als antwoord ;)
Heb je DNS secured tussen je devices en je server? Hoe als ik vragen mag? En waarom?

DNSSEC is natuurlijk geinig maar enkel validatie, geen encryptie. Eenvoudig af te luisteren dus. Gebruik jij daarom een VPN tunneltje of zo?

Edit: oh, ik lees hieronder dat je een IP whitelist gebruikt

[Reactie gewijzigd door ExIT op 23 juli 2024 08:12]

Niet secured inderdaad - alleen IP whitelisting. Het is te onderscheppen, maar dat is al het DNS-verkeer natuurlijk; veel mensen die Google's publieke DNS-servers of OpenDNS DNS-servers gebruiken lopen hetzelfde risico.
Klopt. Maar het kan wel ;-) lokaal servertje met poort 53 naar binnen en een poort met TLS/SSL naar externe custom DNS software opdat deze het ook weer encrypted terugstuurt.
Weet je wat Tweakers zou moeten doen? In plaats van dat geld dat ze steken in de werving van nieuwe members door radioreclames en andere onzin? Realiseren dat die onzinnige votes in inhoudelijke gesprekken alleen maar overkomen alsof hier onzin gesproken wordt, terwijl dit juist de kern van hun site vormt. Die half miljoen "neefjes met verstand van zaken" zijn hier met controleerbare feiten aan het brainstormen. Totdat jullie stagiaires artikelen schrijven zonder grammaticale en spellingsfouten op basis van gegronde feiten en technisch journalistiek onderzoek, lijkt het mij beter dat de ingehuurde redactie niet +2 of -2 vote met admin accounts. Je ondermijnt je eigen streven op deze wijze.

Edit; ik realiseer mij net dat dit slechts averechts zal werken :)

[Reactie gewijzigd door ExIT op 23 juli 2024 08:12]

Leuk maar BIND, zo'n onveilige bloat wil je niet draaien. Zeker niet op een RPi.
Onveilige bloat? Bron? Zoals elk pakket heeft bind zo nu en dan ook security issues, maar het is zeker niet inherent onveilig.

Bloat is het zeker niet. Het is wat zwaarder dan dnsmasq, dat wel. Overigens zie ik in de RFC (zie Videopac in 'downloads: Pi-hole 2.11.2') dat dnsmasq in versie 2.76-37-g5eb9dde ook een dergelijke aanpak ondersteunt.
Bloat? Bron? Jeetje, je werkt in een datacentrum? Dat was het 10 a 15 jaar geleden al zo. Security issues heeft het ook al jaren [1]. Op een klein, relatief langzaam machientje als een RPi wil je geen BIND draaien. Heck, ik wil het ook niet op wat voor apparaat dan ook op een batterij. Daarom zijn applicaties zoals djbdns en PowerDNS en dnsmasq ook geschreven.

Je probeert zelf te scoren in je eerste post met een quote waar je vervolgens op antwoord in beginsel: "Niet optimaal." Vervolgens begin je over BIND?! Sorry, dan heb je het echt niet begrepen hoor.

[1] En nog steeds: https://kb.isc.org/articl...Vulnerability-Matrix.html noem ik niet niks die waslijst!

[Reactie gewijzigd door Jerie op 23 juli 2024 08:12]

Nee, ik werk niet in een datacentrum, ik heb een server in een datacentrum.

Leuk, zo'n lijst met vulnerabilities. Heb je dergelijke lijsten van Windows wel eens bekeken? Of de Linux kernel? Of om het even welke andere software?

Daar zet ik dan weer tegenover de changelog van de meest recente versie van bind9 in Debian:

http://metadata.ftp-maste...5.dfsg-9+deb8u9_changelog

Alle vulnerabilities in die matrix zijn gepatched in de versie die Debian in Jessie levert. Niet onveilig dus.

Bloat? Bind gebruikt 32MB geheugen op mijn server. De RPi 2 heeft 1GB RAM, dan lijkt me 32MB niet zo problematisch. De CPU load is al helemaal verwaarloosbaar.

Bind doet wat het moet doen, doet het snel, en biedt veel features. Daarnaast wordt het actief onderhouden en worden vulnerabilities snel gepatched. Niets mis mee dus.
Je probeert zelf te scoren in je eerste post met een quote waar je vervolgens op antwoord in beginsel: "Niet optimaal." Vervolgens begin je over BIND?! Sorry, dan heb je het echt niet begrepen hoor.
Ik probeer niet te scoren, ik vertel gewoon de inefficientie van deze aanpak. Kijk ook maar eens hier:

https://discourse.pi-hole...rformance-increase/1342/2

Er gaat 225ms verloren door het wachten op de response van de RPi webserver. De response-time van bind op een DNS-request is minder dan 1ms, bloat of niet. Als je daarmee 225ms wachttijd voor een response waar je niets mee doet kunt vermijden is dat hoe dan ook de moeite waard.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Je hebt gelijk, goed onderbouwd. Mensen die roepen dat een upto date Bind bloated/onveilig is kletsen uit hun nek, en hebben er waarschijnlijk nog nooit mee gewerkt, laat staan genoemde issues gefixt. Gauw even een lijstje Googelen met issues, waarvan de helft gewoon bugs zijn haha.

Issues welke elk pakket wat aan internet hangt ook wel heeft.
Dit gaat allemaal wel heel erg offtopic...

32 MB is niet veel voor een server-applicatie. Dnsmasq gebruikt minder, dat is waar. Dnsmasq heeft ook minder functioneliteit. Doet er verder niet toe. Als 32 MB te veel voor je is kun je wat anders gebruiken. 32MB is peanuts voor mijn server. Mijn Odroid-bordje draait er ook zijn hand niet voor om. Dnsmasq ondersteund sinds versie 2.76.37+ ook dit systeem waarbij een NXDOMAIN geretourneerd wordt, dus dat kun je ook gebruiken als je dat liever wilt.

Feit is dat Bind, net als elke ander ander veelgebruikt softwarepakket af en toe vulnerabilities heeft, maar dat die ook snel worden opgelost, en dat als je gewoon een up-to-date versie van Bind draait, alle bekende vulnerabilities ook gewoon gedicht zijn. Er is dus wat dat betreft gewoon geen reden om geen Bind te gebruiken. Blijkbaar heb je er een flinke afkeer van, dat is je goed recht. Daarom is het ook fijn dat er alternatieven zijn, zoals dnsmasq, djbdns, unbound of weet ik wat.

Dan Bernstein vs the world / DNSSEC vs DNSCurve is een kwestie met haast religieuze eigenschappen waar ik mij verre van ga houden, en het heeft ook bar weinig met Pi-hole of RPZ te maken.
Je kunt het blijven herhalen. 1) Het zegt niets over CPU en I/O 2) Ik vind dat wel veel RAM 3) Het hangt er van af wat je er verder nog op draait. Ik heb 10 jaar geleden al tests gedraaid met BIND vs djbdns. Het was toen droevig hoe langzaam BIND was, en hoeveel meer resources het kostte. CPU time en RAM en response time. BIND is overkill op een klein servertje. Het is ook (meestal) overkill op een grote server, maar relatief minder. Dus ja, als ik iemand BIND zie opperen wanneer het gaat over RPi dan doe ik mijn bek daar over open, ja.
Feit is dat Bind, net als elke ander ander veelgebruikt softwarepakket af en toe vulnerabilities heeft
Het is dat de alternatieven daar minder tot geen last van. Dus hoef je niet eens te patchen. Dit is net zoiets als Rust vs C. Rust is gewoon beter. Klaar. En Dan Bernstein's DNSCurve is ook gewoon logischer dan DNSSEC want het is gemaakt met oogpunt van de authenticatie voor de client; niet de server. Ook heeft het minder dataloss. Je kunt zeggen dat dat niet van belang is. Ik vind van wel. Het geeft aan hoe efficient DJB is wat IT betreft, en hoe inefficient z'n dommere concurrenten zijn.

Ik zelf vond de Pi-Hole inderdaad te traag met een flinke /etc/hosts file.
Ik gebruik mijn Synology als DNS server, weet je toevallig of jouw handmatige oplossing ook hiervoor werkt (deels via GUI, deels handmatig)?
Ik weet het niet zeker. Ik vermoed van niet - volgens mij gebruiken de meeste NAS-systemen een DNS-server die wat lichter (eenvoudiger) is dan bind, zoals dnsmasq. Die ondersteund een dergelijke regeling niet volgens mij; wat er namelijk nodig is is een systeem dat expliciet gedefinieerde hostnamen omzet naar een NXDOMAIN - DNS-servers werken doorgaans precies de andere kant op.

Ik durf niet te zeggen of bind de enige is die RPZ geimplementeerd heeft, het is wel de enige waarmee ik bekend ben.

Als je de mogelijkheid hebt om bind op je Synology te installeren dan moet het wel lukken.

Update: het ziet er naar uit dat nieuwere versies van dnsmasq dit principe ook ondersteunen: https://discourse.pi-hole...rformance-increase/1342/7 - je hoeft dus niet per sé naar bind uit te wijken. Al zul je dan wel moeten hopen/wachten tot een nieuw genoege versie van dnsmasq beschikbaar is, of hem zelf moeten compileren voor je Synology. Zelf heb ik geen Synology dus geen idee welke versie hier precies op draait.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Thanks, ga ik eens even uitzoeken.
Hier staat een kleine instructie. Ik kreeg het zelf niet aan de praat, heeft waarschijnlijk iets te maken met mn dns server.
Houd ons op de hoogte svp! O-)
Ik vind het een mooie oplossing maar je clients sturen nog steeds requests, de response zal wel sneller zijn inderdaad. Het technisch wat lastiger op te zetten dan pihole, want je het er dnsserver/bind 9+ voor nodig.

Ik ga deze opzet eens uitzoeken als alternatief, bedankt!
Je client stuurt wel minder requests: de DNS-request wordt nog steeds gedaan. Als het goed is word de NXDOMAIN lokaal ook gecached, overigens, dus vervolg-requests naar dezelfde host zouden de eerste minuten vermeden worden.

Er worden daarna geen requests naar een webserver gedaan, in tegenstelling tot wat Pi-Hole doet. Bij NXDOMAIN is er immers geen IP-adres van een server bekend waar je verbinding mee zou kunnen maken.
Tnx!

Heb even zitten knutselen op mijn RPI3:
BIND geinstalleerd
En vervolgens jouw instructie gevolgd, met een kleine aanpassing (vermoedelijk een typo)
/etc/bind/named.conf.options

// Plaats deze code tussen
// options {
response-policy {
zone "ms.rpz.zone";
};
// }
De zone moet mvps.rpz.zone ipv ms.rpz.zone zijn.

In de logging krijg ik nu nog wel meldingen "error (network unreachable) resolving" wat met ipv6 te maken heeft. Ga ik later nog even verder uitzoeken.
Haha, oeps, de verkeerde gecopy-paste. ik heb twee regels in de response-policy staan, de ene heet mvps.rpz.zone en de andere ms.rpz.zone. Hierbij refereert MS aan Microsoft, en bevat die zone-file alle hosts die te maken hebben met het phone-home gedrag van Windows 10. Ik heb die apart in een zone gezet zodat ik het syslog makkelijk kan filteren op de communicatie die Windows 10 tracht te voeren. Ik zal mijn post even editten.

Die melding herken ik niet overigens - ik zal het morgen eens proberen op een verse install aan de hand van mijn eigen instructies - kijken of ik wat vergeten ben :)

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Ik heb het hele proces even uitgeprobeerd in een Virtuele Machine. Het is inderdaad een IPv6 error, die je krijgt indien je server geen IPv6 verbinding heeft. Die heb ik wel, daarom kreeg ik die melding niet. Om IPv6 uit te schakelen voor Bind moet je /etc/default/bind9 openen en daar de OPTIONS aanpassen door er -4 aan toe te voegen. In de standaardconfiguratie wordt dat dan dus

OPTIONS="-4 -u bind"

Hierna waren die meldingen weg en werkte het zoals het moest.


Voor de volledigheid het volledige stappenplan om de server op te zetten met werkende RPZ Bind9-server:
  • Installatie gedaan met behulp van: debian-8.7.1-amd64-netinst.iso
  • Alleen geinstalleerd bij 'Software Selection": SSH server, standard system utilities
  • Na installatie rebooten en inloggen als root (of als gebruiker en alles prefixe met sudo)
  • apt-get install ufw bind9
  • ufw allow ssh
  • ufw allow dns
  • ufw enable
  • systemctl enable bind9
  • cd /usr/local/bin
  • wget http://pastebin.com/raw/L9J9khH7 -O mvps-bind-converter.py
  • cd /tmp
  • wget http://winhelp2002.mvps.org/hosts.txt
  • python /usr/local/bin/mvps-bind-converter.py hosts.txt > /etc/bind/db.mvps.rpz.zone
  • cd /etc/bind
  • nano named.conf
    Aan eind toevoegen:
    include "/etc/bind/named.conf.mvps";
    Opslaan: Ctrl+X - Y(es) - Enter
  • nano named.conf.mvps
    Invoegen
    zone "mvps.rpz.zone" {
    type master;
    file "/etc/bind/db.mvps.rpz.zone";
    };
    Opslaan: Ctrl+X - Y(es) - Enter
  • nano named.conf.options
    Invoegen aan het eind, voor de afsluitend };, tussen regel 24 en 25 in:
    response-policy {
    zone "mvps.rpz.zone";
    };
    Opslaan: Ctrl+X - Y(es) - Enter
  • Indien je geen IPv6-verbinding hebt moet je bind uitzetten op ipv6:
    nano /etc/default/bind9
    voeg -4 toe aan OPTIONS, dat wordt dus:
    OPTIONS="-4 -u bind"
    Opslaan: Ctrl+X - Y(es) - Enter
  • systemctl start bind9
Hierna zou het moeten werken - dit kun je testen door het volgende commando:
dig @localhost doubleclick.net
Dit zou een output moeten opleveren die begint met:
; <<>> DiG 9.9.5-9+deb8u7-Debian <<>> @localhost doubleclick.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 56007
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
De NXDOMAIN hierin laat zien dat het werkt zoals de bedoeling is.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Hi MadEgg,

Bedankt voor het verder uitzoeken hiervan.

Op de RPi3 werkte bovenstaande oplossing niet (options = -4), schijnt een bug in Debian Jessie te zijn.

Een workaround (tweede oplossing; van mivk) voor die bug werkt wel :)
Je krijgt geen 404. Pihole servert een witte pixel.
Ook prima, het maakt niet zoveel uit wat de server geeft. Mijn punt is dat je een heel pad aan acties hebt:
  • Browser vraagt om IP-adres van hostname aan DNS-server (Pi-Hole)
  • DNS-server geeft eigen IP-adres Pi-Hole terug aan browser
  • Browser maakt HTTP(S)-verbinding met Pi-Hole (zelfs met alle resulterende certificaaterrors bij gebruik van HTTPS)
  • Pi-Hole geeft 200 OK met witte pixel of 404 Not Found, of om het even wat voor HTTP-response terug
  • Browser rendert response: pixel tekenen in image-object of HTML-response renderen
Puntjes 1 en 2 alleen bij het eerste verzoek aan een host binnen een bepaalde time window, 3-5 bij élk verzoek.

Vergeleken met de NXDOMAIN-aanpak:
  • Browser vraagt om IP-adres van hostname aan DNS-server (Pi-Hole)]/li]
  • DNS-Server antwoord NXDOMAIN
  • Browser krijgt geen IP-adres dus kan verder niets en doet dus verder ook niets.
Hierbij wordt 1 en 2 alleen uitgevoerd bij het eerste verzoek aan een host binnen een bepaalde time window, en punt 3 (niets doen) bij elk verzoek.

Alle HTTP-requests eruit filteren stopt het proces al veel eerder en scheelt een hele hoop overhead, met een merkbaar snellere browse-ervaring. Daarbij vermijd je certificaat-errors ook nog eens.

[Reactie gewijzigd door MadEgg op 23 juli 2024 08:12]

Anoniem: 91295 @MadEgg18 januari 2017 13:01
Dat was wat een ontwikkelaar voor een adblockpakket voor OpenWRT ook deed in eerste instantie. Het DNS-request omleiden naar een lokale pixelserver.

Nu heeft hij die pixelserver niet meer nodig (scheel een hoop in resources) en er is minder onnodige traffic op het netwerk.

Download:
https://github.com/openwr.../master/net/adblock/files
Bedankt voor deze tip.
Ik heb nu adblock op m'n openwrt router gezet en dat werkt tot nu toe prima met de standaard lijsten enabled. Ik heb overigens ook pihole op m'n synology nas staan en afgelopen maanden werkte dat overigens ook goed.
Een vraag voor iemand die hier veel ervaring mee heeft: Zitten er veel false-positives tussen?

Bij adblock-plugins (ik gebruik zelf uBlock origin) gebeurt het me nog best wel eens (+- 1×per maand, niet heel vaak) dat ik een site moet/wil whitelisten omdat er bepaalde dingetjes worden geblokt die nodig zijn om de site goed te kunnen gebruiken.
RTL-xl bijvoorbeeld wil alleen in zwart wit afspelen totdat je adds toelaat kwam ik laatst achter, en het gebeurt me ook nog wel eens dat ik de cookie-waarschuwing niet weg kan klikken omdat de knop met "OK" geblokkeerd is.

Bij een plugin heb je dat zo gefixed, maar als ik ouders of vrouwlief uit moet leggen dat soms iets het niet doet en dat ze dan naar 192.168.x.x moeten gaan om een site the whitelisten, dan is die pi er zo weer tussenuit natuurlijk.

Een andere manier om de vraag te stellen: komen er nog vaak advertenties wel doorheen, draai je ook nog een addblock plugin hoewel je ook al een pi-hole hebt?
Hangt allemaal af van welke lijsten je dan instelt die gebruikt moeten worden. Er zitten lijsten bij die zeeeeeeeeer beperkend werken.
Hier kan je overzichtje zien : https://github.com/pi-hol...sing-Sources-for-Ad-Lists

Je kan beginnen met de eerste en de rest uitschakelen. En dan gaandeweg inschakelen.

Er zit bijvoorbeeld een lijst in die standaard alles van Microsoft blokkeert (waarschijnlijk van iemand die ook nog altijd micro$oft typt ;) ). Een andere lijst die alles van .com zou blokkeren.

Ikzelf heb nog een add blocker draaien maar meer als vergelijkingspunt. Zie dat de browser plugin eigenlijk (bijna) geen werk meer heeft
Uit eigen ervaring. In basis mis je niets. Ik heb de stap genomen toen de kinderen wat groter werden en overal op gingen klikken of tikken. Met de apparaten van de kinderen geen issues. Vrouw gaf bij de eerste keer aan dat de filmpjes van nu.nl 'het niet deden'. Ik kom daar nooit, dus ja, dan moet je wat whitelisten. Maar ik heb nooit gemerkt dat er een 'OK knop' mist oid. Dat is nieuw voor mij.
Verder viel mij nu pas op hoeveel apparaten contact zoeken met hun 'maker'. Samsung tv is wel een bekend voorbeeld. Alles wat ik niet nodig acht heb ik inmiddels geblokkeerd. Wat ik niet had verwacht is dat mijn Ubiquity Controller en AP op #1 staan... Moet daar nog eens naar kijken waarom dat zo is. Hier dus een tevreden gebruiker.
Daar loop ik ook tegenaan, die filmpjes op nu.nl
Ben er echter nog niet uit wat ik dan moet white-listen om dat werkend te krijgen, suggesties ?
Nu.nl is inderdaad een ramp, ik heb de filmpjes daar maar opgegen, zo briljant zijn ze ook niet. Geen idee hoe dat precies in elkaar haakt maar het werkt niet. Op andere sites eigenlijk nooit problemen.
media.zie.nl whitelisten zou moeten werken. Ben nu op het werk en kan het niet controleren.
Ik heb destijds gelogd en gekeken welke domeinen worden aangeroepen wanneer een filmpje wordt gestart. Een aantal 'verdachte'domeinen geblokt en de filmpjes konden worden bekeken. Zoals gezegd kom ik niet zo vaak op nu.nl, en kijk daar al helemaal geen filmpjes. Vrouwlief heb ik er daarna nooit meer over gehoord. Wellicht is zij ook verstandig geworden :+
- pihole is "maar" zo goed als de lijsten die je gebruikt. Het is een DNS blocker, geen add blocker! Er zullen dus altijd advertenties doorkomen. Sites die ads hosten op het zelfde domain als de content zijn met pihole niet te blokken.
- Je kan lijsten toevoegen en/of volledige domains blokken, zie hoofdstuk 12 & 13 van de manual die in het artikel is vermeld.
- Deze versie heeft een "custom block page", waarop een whitelist button is voorzien. Je hoeft anderen dus geen toegang te geven tot de "admin pagina" van pihole, als een site onbereikbaar is, kan je die meteen whitelisten.
- Zelf heb ik geexperimenteerd met ublock origin (in firefox en chrome, eventueel (beta) ook in edge, de extra lijsten die in de 3rd-party filters default geactiveerd zijn, worden bijna allemaal ook in pihole gebruikt. Het is, mijns inziens, dus efficienter de lijsten die pihole niet gebruikt (en ublock origin dus wel) toe te voegen aan pihole's custom list.. Welke oplossing je ook kiest, vergeet niet dat pihole je alleen maar beschermt, zolang je op het pihole netwerk zit, tenzij je buitenshuis altijd een vpn naar je eigen netwerk gebruikt!
- Zelf heb ik ook DNScrypt toegevoegd aan de configuratie, op die manier sluit je uit dat je DNS activiteit gemonitord word

[Reactie gewijzigd door jpgview op 23 juli 2024 08:12]

Je hebt gewoon whitelists die adware meldingen weghaald en zelfs irritante inlogschermen zoals op pinterest verwijderd.
Ik gebruik zelf RTLXL af en toe en heb een Pi-Hole draaien, met enkel de standaard lijsten ben je van de reclames in RTLXL af en kun je gewoon zonder reclames tussendoor kijken. :)

Ook NPO werkt prima, ondanks dat Pi-Hole er tussen zit. Enige die moeilijk doet is Kijk, maar goed, de SBS Broadcasting zenders kijk ik niet, dus mis daar ook niets aan.

[Reactie gewijzigd door CH4OS op 23 juli 2024 08:12]

Is er ook een Pi-Hole (alternatief) beschikbaar die op Windows draait? Ik zou natuurlijk een VM kunnen inrichten, maar iets wat native draait is wel zo handig. Ik heb namelijk gewoon een oude laptop ingezet als mediacenter.
De essentie van Pi-Hole is een DNS-server. Nu blinkt Linux / OSS uit in gratis server-oplossingen, maar er zijn ook best (gratis) DNS-servers voor Windows te vinden. Zie bijvoorbeeld: http://superuser.com/a/337775

Als je dit vervolgens combineert met een HOSTS-lijst, zoals bijvoorbeeld de MVPS-lijst, moet dit ook prima op een Window-machine kunnen draaien.
Heb ik hier al eeuwigheid draaien op een oude Pi-B. Draait als een zonnetje.
De nieuwe webinterface van pihole is soms wat sloom erop maar qua surfen op de andere pc's, merk je niks.
Klopt ik heb het zelfs op een Pi-A draaien zonder performance problemen. :)
Het voordeel van Pi-Hole is dat het op een Raspberry al snel en goed werkt, zelfs al op v2 of zelfs een B. En dat je het dan meteen op alle apparaten kunt toepassen, ook diegene waarop je geen adblocker kunt/mag installeren. Dat is juist de kracht van Pi-Hole.
Een manier om malware en advertenties buiten de deur te houden op Windows computers is het blokkeren van de computers die deze content serveren. Dat kan door de ip-nummers van deze machines op te nemen in de hostfile en deze naar localhost te verwijzen. Het up-to-date houden van deze hostfile is een tijdrovend klusje, maar daar kan HostsMan bij helpen. Dit gratis programma kan actuele lijsten van bekende websites als www.Msmvps.com ophalen en combineren met de al aanwezige hostfile. Verder kan het de hostfile controleren op foute, dubbele of kwaadaardige regels, is er een ingebouwde editor en kan de dns-cache worden geleegd.
Ik gebruikte vroeger ook pi-Hole maar ben sinds een tijd overgestapt op NoTrack, en dat bevalt ook goed (https://quidsup.net/notrack/).

Sinds ik een RPI bij m'n ouders heb neergezet wordt ik een stuk minder gebeld. (Geen drive-by's, geen 'UW PC IS MOGELIJK GEINFECTEERD popups etc.)

Kan het iedereen aanraden.
Je kunt dit in principe ook zonder Pi doen, door een andere DNS service te gebruiken.

Na een tip hier op Tweakers gebruik ik sinds september Alternate DNS als DNS server. Door het in te stellen op mijn Ziggo modem ben ik in één keer van zo goed als alle advertenties en veel malware af, ook op mijn mobiele apparaten. Vooral dat laatste is een genot; veel apps die reclames bevatten zijn een stuk rustiger aan de ogen geworden.

Daarnaast heb ik een dochter die een malwaremagneet is en dat is sinds deze ingreep ook een stuk beter geworden.
Alternate DNS heb ik ook eens bekeken. Maar omdat dit een oplossing is die buiten mijn netwerk wordt gehost, heb ik een bezwaar. Alle verzoeken / request naar sites, bewust en onbewust, zijn in beeld bij diegene die de DNS server beheert. En wie zit er achter Alternate DNS? Destijds was het enige dat ik vond een contactformulier op de website; niet heel vertrouwenwekkend. Heb het daarom toen links laten liggen.
Ja, is zeker een valide punt. Als ik zoek naar hoe betrouwbaar Alternate DNS wel is, kan ik daar dom genoeg weinig over vinden. Over het omgekeerde - dat ze gekke dingen doen met mijn internetgegevens - ook niet overigens. Dus misschien is OpenDNS dan wel een betere optie (ik heb geen zin in een aparte Pi hiervoor nml)
Je hoeft het ook niet op een aparte Pi te installeren, het werkt ook bijvoorbeeld in een VM. Zelf draai ik het binnen een Debian VM, op mijn ESXi homelab. :)
OpenDNS is niet add-aware. Je zult dan gewoon adds op je scherm krijgen.
klein nadeeltje > je bent niet meer de baas over jouw verkeer/opdrachten
Bedankt voor de tip! Ik ga het meteen instellen, dit is tenminste zo getest. Als het niet bevalt dan maak ik het weer ongedaan. De andere oplossingen vindt ik te omslachtig.
Kun je ook aangeven waarom NoTrack jou goed bevalt? Ik kan nu jouw post niet inschatten op waarde daardoor, maar ben wel benieuwd.

Voor wat ik zo zie, is dat NoTrack meer grafisch is ingesteld voor o.a. de black- en whitelists, waar je bij Pi-Hole zelf de configfiles handmatig moet aanpassen, met bijvoorbeeld Nano, wat ook redelijk straight-forward is. Voor de rest zie ik niet echt grote plus- en/of minpunten.

EDIT:
Na een post op Reddit gelezen te hebben, gebruikt NoTrack de lijsten van Quidsup, dit zijn:

https://raw.githubusercon...aster/malicious-sites.txt
https://raw.githubusercon...track/master/trackers.txt

Deze twee dus toevoegen aan de juiste lijst in Pi-Hole en klaar is kees. :)

EDI2:
Ik zie echter dat sinds 16 dagen de trackers.txt van Quidsup standaard uitgeschakeld staat. Mogelijk heeft deze dus (te vaak?) false-positives gehad. Commit in kwestie. Bedenk dus heel goed of je deze lijst echt wilt activeren!

[Reactie gewijzigd door CH4OS op 23 juli 2024 08:12]

Pi-Hole 'onder water' actueel houden hoeft niet meer. De laatste versies staan toe met 'pihole -up' de pi-hole te updaten. White- en black lists kunnen in de brouwser actueel worden gehouden.
No-Track is gericht op het blokkeren van trackers met de optie om ads ook te blokkeren, Pi-Hole is precies andersom. (functioneel komt het wel op hetzelfde neer)

Daarnaast volg ik het werk van Quidsup op youtube al een tijd en ben ik erg positief over zijn instructies / Linux tutorials etc. en is het stukje support voor de dev.

Sinds kort gebruikt NoTrack ook MariaDB en daardoor is het echt mega responsive geworden. Die ervaring had ik niet zo met m'n Pi-Hole destijds (maar misschien is dat inmiddels veranderd).
Je kan natuurlijk ook de volgende lijsten toevoegen aan pi-hole om hetzelfde te bewerkstelligen:

https://raw.githubusercon...aster/malicious-sites.txt
https://raw.githubusercon...p/notrack/master/trackers.

Hierbij heb je zowel de pi-hole als notrack lijsten in je ad/malware blocker...

[Reactie gewijzigd door johnpeeters op 23 juli 2024 08:12]

Is dat alles? De eerste link staan ~30 sites en de tweede link geeft een 404?
Daar mist de txt extensie. ;) De trackers.txt is wel een stukje groter dan 30 entries.

Op zich maakt aantallen niet veel uit natuurlijk, veel zullen sowieso dubbel zijn, vandaar dat Pi-Hole de lijsten samenvoegt en dubbelen eruit filtert. ;)

EDIT: De trackers.txt is zelfs opgenomen in de standaard lijst, maar is sinds 16 dagen standaard op 'disabled' (en in comment) gezet. Zie deze commit, wellicht heeft de lijst dus geregeld false-positives gehad. Bedenk daarom dus goed of je de lijst wel activeren wil.

[Reactie gewijzigd door CH4OS op 23 juli 2024 08:12]

Daar mist de txt extensie. ;)
Wauw, goedemorgen! Ik heb niks gezegd. :P
Offtopic, maar lees de edit van mijn bericht boven de jouwe ook even. Niet onbelangrijk, wellicht. :)
Thanks, denk dat ik hem dan inderdaad nog even links laat liggen!
Waarom ben je overgestapt op NoTrack als ik vragen mag, de functionaliteit lijkt hetzelfde? Is NoTrack makkelijker te configureren/beheren?
Je geeft aan dat het ook goed werkt. Wat maakte dat jij bent over gestapt? Is het 'makkelijker' te installeren / beheren? Effectiever in gebruik? Ben wel benieuwd, omdat ik een Pi-Hole gebruiker van het eerste uur ben, en er nog steeds tevreden over ben. Maar ik sta open voor verbeteringen ;)
Ik probeer uit te zoeken wat de verschillen zijn tussen pi-hole en notrack. Ik kan hier niet een duidelijk antwoord op vinden via Google. Kan je toelichten waarom je voor notrack hebt gekozen, boven pi-hole?
Weer loop ik aan tegen het probleem met de home gateway van Telenet: Ik kan op deze router geen manuele DNS instellen waardoor ik dit op elke client handmatig moet invullen, en dit heeft soms invloed als ik de laptop buitenshuis mee moet nemen.

Er zijn wel tal van workarounds (2de dns op bvb 8.8.4.4; eigen router achter Telenet router -> dubbele NAT; ...) maar ik ben dan weer geen voorstander van omwegen, het maakt het enkel complexer.

Hopelijk leer ik dit laatste compulsieve trekje af, zal in ieder geval sneller zijn als dat ik van Telenet toegang krijg tot alle settings van hun router :D
Als je geen VPN tunnels op je interne netwerk wil opbouwen of andere iets meer esoterische zaken zou dubbele NAT geen enkele invloed mogen hebben. Meer nog, het zorgt ervoor dat je met je Telenet opstelling toch weer wat meer flexibiliteit hebt. Ik doe het al jaren zo en eigenlijk werkt dat allemaal perfect. Als je toch redelijk wat portforwards moet doen enzo, zet dan je eigen router als 'DMZ' ip in de Telenet webinterface en doe dan de portforwards op je eigen router. Werkt perfect hoor.
Heb zelf pfSense achter de modem van de ISP (= dubbel NAT). pfSense heeft meerdere VPN tunnels zonder problemen. pfSense opstelling is zelfs HA (CARP failover) zonder problemen met broadcasten van packets.
Anoniem: 150119 @gerwim18 januari 2017 10:12
Klopt .. ik draai ook pfSense mét VPN tunnels. Maar soms kan dubbele nat dan issues geven (e.g. nat-traversal e.d.)
Geen enkele invloed is wel een beetje te makkelijk: twee routers / 2 x NAT is twee extra hops, waarbij in beide gevallen de headers van de packets gereconstrueerd moeten worden. Dat geeft in ieder geval extra latency. Functioneel zou het icm een DMZ-host-regel geen invloed meoten hebben, maar het vertraagt wel.
Anoniem: 150119 @MadEgg18 januari 2017 11:13
Op een home netwerk ... verwaarloosbaar lijkt me :-)
Ik heb tijdens de installatie door Telenet vriendelijk gevraagd (lees: geëist) dat ze een losse modem zouden installeren, en dat heb ik ook gekregen. Daarmee kan ik dan ook probleemloos gebruik maken van mijn eigen router, met volledige controle :*)
Ik ga hier inderdaad eens achter moeten horen :) wel nog afchecken hoe ik mijn digicorder het best er aan hang, volgens mij moet die met een switch aan de modem, dus niet in het private gedeelte.

Heeft het trouwens ook geen impact op het WiFree gedeelte? Dit gebruik ik buitenshuis wel vaak :)
Je moet er dan idd voor zorgen dat je digicorder aan een publiek ip hangt dmv een switchje direct achter de modem.

Je kan nadien nog gewoon gebruik maken van hun hotspots met je telenet login gegevens.
Je kan ook een business modem aan Telenet vragen (doe ze soms wat moeilijk over maar uiteindelijk krijg je hem altijd wel)
Idd, zie reactie op fanatic_david hierboven
Je kunt eventueel gebruik gaan maken van zogenaamde network switchers:

Na 1 Google zoekopdracht:
http://www.mobilenetswitch.com/
https://sourceforge.net/projects/argonswitcher/
http://www.eusing.com/ipswitch/free_ip_switcher.htm

Om een aantal voorbeelden te geven. :)
Telenet modem only is ook een optie, doen ze niet moeilijk over. Dan kan je een eigen router gebruiken.
Zijn er ook manieren bekend om dit met Windows DNS te integreren? Als je thuis een domein draait kan je moeilijk je Windows DNS eruit gooien :)
Zeker, Je kunt Pi-hole als forwarder instellen op de DNS configuratie van je Windows domain. Op die manier blijven clients de Windows DNS gebruiken en worden requests buiten de zones die je zelf draait, via Pi-hole afgehandeld.
Goeie tip, daar ga ik me eens in verdiepen! :)
Je AD DNS server zal ook een DNS relay moeten hebben; die kun je gewoon op je Pi-hole instance zetten.
Bor Coördinator Frontpage Admins / FP Powermod 18 januari 2017 08:58
Je ziet dat dit pakket meer en meer ook op andere platformen draait zoals bijvoorbeeld een Synology NAS. Jammer genoeg werkt het nog niet out of the box of als package op een Synology router en blijft het aanklooien met settings, 3rd party software e.a. op sommige platformen.

Installatie op een apparaat dat toch al aanstaat heeft wat mij betreft de voorkeur gezien je daarmee stroomverbruik kunt besparen.

Wat mij ook opvalt is dat de pi-hole soms niet zo snel reageert als een "normale" DNS server waardoor je snelheid inlevert. Gezien een client met regelmaat DNS requests doet kan dit in theorie al aardig oplopen. Met een tools als Namebench kun je een analyse uitvoeren.

Vergeet ook niet het device waarop PI-hole draait te patchen. Veel mensen vergeten dat volgens mij waardoor je potentieel een security risico loopt.

[Reactie gewijzigd door Bor op 23 juli 2024 08:12]

http://www.synology-forum...d-block-via-de-dns-server

En het instellen valt reuze mee, maar een kant en klaar package zou wel top zijn inderdaad. Zal er binnenkort wel komen..
Bor Coördinator Frontpage Admins / FP Powermod @BeyondThunder18 januari 2017 10:24
Op een Synology NAS werkt dat inderdaad, op een Synology router werkt dat niet of niet optimaal is mijn ervaring. Het blijft handwerk met scripts etc. Zie ook mijn opmerking hierboven.

[Reactie gewijzigd door Bor op 23 juli 2024 08:12]

Zelf heb ik een Openmediavault servertje draaien (Debian based) en daar bovenop Pi-hole geinstalleerd. Je hoeft alleen in de lighttrpd (iirc) het poort nummer van de pi-hole aan te passen en doettie 't net zo goed. :) Heerlijke oplossing en scheelt heel wat advertenties op menig telefoon en PC.
Interessant dat Tweakers Pi-hole bespreekt gezien jullie zelf ook afhankelijk zijn van advertentie inkomsten. Dit soort berichtgeving laat zien dat Tweakers inmiddels ook wel tot het inzicht is gekomen dat online adverteren gewoon niet werkt.

Sowieso denk ik dat het internet inmiddels draait op bots die naar advertenties zitten te kijken. Ik kan me ook niet herinneren wat de laatste keer was dat ik hier op Tweakers een advertentie heb gezien. Zelfs al zet ik m'n adblocker tijdelijk uit, dan nog krijg ik geen advertenties te zien. Of zijn jullie al helemaal met banners gestopt?
Pihole bevalt mij erg goed. Waar ik nog wel eens tegenaan loop is dat pagina's ongewenst geblokkeerd worden. Voor mij geen punt, ik voeg ze gelijk aan de whitelist toe, maar als ik niet thuis ben en de kinderen of mijn vrouw lopen hier tegenaan is de frustratie groot.
Verder vind ik de lege plekken waar de ads stonden op de pagina stonden af en toe storend. uBlock in Chrome lost dit wat netter op.

Maar in grote lijnen dus een goede oplossing voor al het reclamegeweld!

Op dit item kan niet meer gereageerd worden.