Synology NAS Gids Deel 10: Pi-hole


We beginnen de hervatting van deze serie met Pi-hole! Pi-hole werkt als een zogenaamde DNS sinkhole, eventueel als DHCP server, en is bedoeld voor een privé-netwerk zoals een thuisnetwerk. Via Pi-hole kunnen advertenties en trackers op netwerk-niveau geblokeerd worden. In tegenstelling tot traditionele (browser) ad-blocker, welke enkel werkt voor de genoemde applicatie, werkt Pi-hole voor elk apparaat achter hetzelfde netwerk. Oftewel geen reclames meer in je browser, in je ‘gratis’ apps, etcetera.

Oorspronkelijk is de applicatie, zoals de naam suggereert, ontworpen om te draaien op embedded systemen zoals een Raspberry Pi, maar het kan ook draaien op andere Linux-machines. Hier komt de Synology NAS om het hoekje kijken, want waarom een extra apparaat zoals een Raspberry Pi aan ons netwerk hangen voor slechts één taak, waar onze Synology NAS ook 24/7 operatief is?


Installatie


We beginnen in de omgeving van onze Synology DS1019+, en openen hierbij Docker. Hoe je Docker kan installeren, lees je in Synology NAS Gids Deel 9 – Introductie 2.0. Wanneer we Docker openen, worden we gegroet door een overzicht en zien we het huidige CPU en RAM gebruik, naast de (eventueel) reeds lopende containers.


Als eerste gaan we naar het kopje “Registry” links. In de zoekbalk bovenaan zoeken we naar “pi-hole”, waarbij verschillende resultaten tevoorschijn komen. De officiële Pi-hole registry is normaliter de bovenste, namelijk “pihole/pihole”, welke we ook voor deze tutorial gaan gebruiken. Rechtermuisknop hierop, klik op “Download this image” en kies vervolgens voor de tag “latest”: hiermee halen we de meest recente versie binnen.


Wanneer we vervolgens naar het kopje “Image” gaan, zien we hier onze gedownloade versie van Pi-hole. Dubbelklik op de Image, en we openen en nieuw venster waarin we een container kunnen creëren.


Vervolgens kunnen we beginnen met configureren van de container. In het veld “Container Name” kunnen we de container een naam geven. Welke naam we hier aan toekennen is onbelangrijk voor de werking van het programma. Vervolgens selecteren we “Execute container using high privilege”, waarmee we Docker container toegang geven tot het apparaat. Daarnaast klikken we op “Advanced Settings” om extra noodzakelijke instellingen te configureren. “Advanced Settings” opent zichzelf opnieuw in een ander venster.


In het nieuw geopende venster “Advanced Settings” opent zich als eerste het kopje “Advanced Settings”. Hierbij zetten we een vinkje bij “Enable auto-restart”. Wanneer de Docker om onverwachte reden vast loopt, of wanneer de Synology NAS opnieuw opstart, zal Pi-hole zichtzelf opnieuw opstarten. Vervolgens gaan we naar het kopje “Volumes”, waarbij we mappen op de NAS creëren en toekennen aan Pi-hole.


Pi-hole heeft 2 verschillende mappen nodig: “dnsmasq.d” en “pihole”. Hoe we deze mappen op ons systeem zelf noemen is onbelangrijk, maar voor de duidelijkheid geven we ze een gelijkaardige naam. Docker zelf heeft op onze NAS al een map “docker” aangemaakt. Hierin maken we een map “pi-hole”, waar we beiden mappen in gaan steken. Hierin creëren we een map “dnsmasq.d” en een map “pihole”, welke we vervolgens mounten in “Mount path” aan respectievelijk “/etc/dnsmasq.d/” en “/etc/pihole/”. Zorg er tevens voor dat bij “Read-Only” geen vinkje staat. Het eindresultaat zou er als bovenstaand uit moeten zien.


Vervolgens gaan we naar het kopje “Network”, waar we een vinkje zetten bij “Use the same network as Docker Host”.


Als laatste stap gaan we nog naar het kopje “Environment”. Hierbij gaan we twee variabelen toevoegen:
– “WEB_PORT”: op deze poort wordt de Admin-interface weergegeven. In mijn geval draait die op poort 8080, maar een andere ongebruikte poort werkt ook prima.
– “WEBPASSWORD” : dit wachtwoord wordt gebruikt om in te loggen op de Admin-pagina.

Wijzig vervolgens de waarde bij “ServerIP” naar de het lokale IP-adres van je NAS.

En dat was het! Klik op “Apply”, waarbij het venster sluit en je opnieuw uitkomt bij ons “Create Container” venster. Klik op “Next”, waarbij we een overzicht krijgen van de aanpassingen en instellingen die we hebben gemaakt. Wanneer we vervolgens op “Apply” klikken, wordt het configuratiescherm afgesloten en wordt de container automatisch opgestart. Pi-hole draait nu op onze NAS, en de installatie is daarmee afgerond.

Pi-hole gebruiken


Pi-hole geïnstalleerd op onze Synology NAS, dan kunnen we hem eindelijk gaan gebruiken! Wanneer we naar “ServerIP:WEB_PORT/admin” (bijvoorbeeld “192.168.1.2:8080/admin”) gaan, krijgen we een overzicht van onze Pi-hole interface te zien. Zie je dit niet, dan is er iets fout gegaan tijdens de installatie.


We zien echter dat Pi-hole 0 queries verwerkt heeft, al dan wel geblokeerd. Dit komt doordat de Pi-hole nog nergens gebruikt wordt als DNS-server. DNS-server kan je op verschillende locaties aanpassen. Dit kan bij je router, op je apparaat of soms zelfs per programma. Wil je dat je gehele netwerk gebruik kan maken van de Pi-hole, zorg dan dat je de locatie van je DNS-server wijzigt naar het lokale IP-adres van je Synology NAS in de router zelf. Wil je dat de Pi-hole alleen werkt op specifieke devices, dan zet je in dat apparaat de DNS server op het IP adres van je Synology cq Pi-Hole.

Wanneer we onze DNS server op router niveau aanpassen, zal onze Synology alle aanvragen verwerken voor alle apparaten op het netwerk. Bekijken we de Pi-hole interface daarna opnieuw, dan zien we inderdaad dat Pi-hole een flink aantal queries verwerkt en geblokkeerd heeft. Het is bijna onvoorstelbaar hoeveel verkeer reclame gerelateerd is.


Met het wachtwoord ingesteld als variabele onder “WEBPASSWORD”, kunnen we op de login-pagina inloggen. Wanneer we dit doen, kunnen we gedetailleerdere statistieken opvragen, naast extra instellingen maken. De mogelijke instellingen zijn nogal straight-forward en kan je zonder probleem spelenderwijs verkennen.

Resultaat


En het resultaat? Dat spreekt voor zichzelf lijkt me! Als voorbeeld website heb ik Business Insider gebruikt waarbij je normaliter begroet wordt door een paginavullende advertentie.



Zonder Pi-hole


Mét Pi-hole

Niet alleen de advertentie wordt geblokkeerd, ook de pagina laadt een stuk sneller aangezien er geen advertenties ingeladen hoeven te worden. Win-win!

En klaar is Kees!


En dat was het! Pi-hole is nu up and running op je Synology NAS, en afhankelijk van je instellingen worden advertenties, maar ook ongewenste websites geblokkeerd. DNS-queries naar adressen op de Pi-hole blacklist worden automatisch voor je geblokkeerd, zonder dat je er iets voor hoeft te doen. Van reclames blijft praktisch niets over, zowel online als in applicaties.

Wil je handmatig adressen toevoegen, dan is dat uiteraard mogelijk, er is genoeg te tunen. Houd er wel rekening mee dat content-providers zoals YouTube, Facebook, en enkele anderen tegenwoordig hun advertenties serveren op dezelfde servers als de daadwerkelijke content om dit soort geintjes tegen te gaan; helemaal ad-free is dus nog niet haalbaar. Wanneer je deze probeert te blokkeren, is het mogelijk dat de daadwerkelijke content zelf ook geblokkeerd wordt, dus het blijft een kat en muis spel.

Daarnaast is het noodzakelijk dat je genoeg RAM in je systeem hebt. Pi-hole verwacht namelijk een minimum van 512 MB, al is het mogelijk dan minder gebruikt wordt (circa 450MB). Voor ons systeem met 8GB aan RAM peanuts, maar iets om in het achterhoofd te houden wanneer je gebruik maakt van een Synology NAS als de DS218+ met 2GB RAM. Gelukkig is het eenvoudig om een reepje RAM toe te voegen aan een Synology NAS.

Mocht je vragen hebben, laat het ons vooral weten! Heb je zelf een Synology toepassing welke je graag zou willen zien, laat ons je idee weten (bijvoorbeeld op onze Discord, link hieronder) en dan gaan wij ons best doen om interessante ideetjes mee te nemen in deze serie.

Vragen over onze reviews of de producten die we bespreken? Je vindt ons op:
Onze Discord server voor chat en tech talk (gratis en geen installatie noodzakelijk).
Techtesters YouTube
TechtestersLive op Twitch
Foritain op Twitter
Nadalina op Twitter

Over Matthijs
Matthijs
Matthijs is een nieuwe kracht binnen het Techtesters team. Hij heeft een voorliefde voor computers en gadgets, en hij studeert Informatica aan de Universiteit van Hasselt.
Abonneer
Abonneren op
guest
11 Reacties
Oldest
Newest
Inline Feedbacks
View all comments
Jelle
Jelle
7 maanden geleden

haha, rooie.

Un1ty
Un1ty
7 maanden geleden

Gemiste kans om de poort op 3141 in te stellen 😏

Rick
Rick
7 maanden geleden

Fijn dat er een goeie NL vertaling te vinden is. Alleen de uitleg voor het installeren van een update ontbreekt nog 🙂

Rick
Rick
7 maanden geleden
Reply to  Rick

In het Engels:
1. Open the Docker package and download the new latest image from the Registry tab for Pi-Hole,

2. When the download is complete, go to the Container tab and stop the Pi-Hole container.

3. Next, select the container and, using the Action drop-down menu, select Clear (Wissen) (Container tab). The container will be removed from the list and recreated using the image you downloaded.

4. Start the new container. Once it loads, it is ready for use.

And ready is Cees 😉

Let op dat de “latest” image niet direct na het verschijnen van een update hiervan wordt voorzien. Wacht dus even een paar dagen met het installeren van de update, want anders heeft dit geen effect.

Rick
Rick
7 maanden geleden
Reply to  Rick

Zojuist is v4.4 als “latest” image uitgebracht. Hier kan je in het vervolg zien of er een update is van de “latest” image: https://registry.hub.docker.com/layers/pihole/pihole/latest/images/sha256-6b0ba01187c2af7768ada839f9c670a57326b340e0b775a2b1e7de675269d93a?context=explore

Vergeet niet na de update de DNS settings in Pi-Hole weer even aan te passen en indien gewenst van Google af te halen 😉

In de details van de container staan na de update nog de oude instellingen. Hier staat dus ook de oude versie genoemd van Pi-Hole. Door de container even uit te schakelen kan je dit handmatig aanpassen. Noodzakelijk is dit absoluut niet.

Maarten
Maarten
5 maanden geleden

Bedankt voor deze post, heeft me goed geholpen.
In settings heb ik wel nog iets moeten veranderen (admin). Onder de Tab DNS, moest ik “Listen on all interfaces” aanzetten. Dan werkt het op lokale pc’s waarvan de dns (ip v4 en V6) op de ip van synology zijn ingesteld. (netwerkinterface is bond van LAN1 en LAN2).

Clueless
Clueless
4 maanden geleden

Nadat ik op apply klik, krijg ik een foutmelding:
“Docker API has failed. Please visit Docker Log for more information.”

Daarin staat weer:
“Error creating overlay mount to […]”

Jan
Jan
4 maanden geleden

Met versie 5.0 kom ik met geen mogelijkheid in de web-interface (wrong password), heb gewoon de variable WEBPASSWORD gebruikt en bij eerdere versie werkte dat wel altijd.

edit: opgelost door in Terminal de opdracht sudo pihole -a -p uit te voeren en een nieuw wachtwoord in te geven.

Jan
Jan
1 maand geleden

Zojuist geupdate naar versie 5.1.1 en het gave van deze methode van Matthijs is dat de statistieken behouden blijven. Hoefde alleen even de DNS instellingen aan te passen in de Pi-hole webinterface.