Seite wählen

NETWAYS Blog

Pi-hole – Mit einem Raspberry Pi zur Werbefreiheit

Im Rahmen meiner Ausbildung zum Fachinformatiker für Systemintegration bei NETWAYS Professional Services arbeite ich regelmäßig an neuen Projekte. Dabei steht neben dem Kennenlernen neuer Technik und Software besonders die Vertiefung von Schulungsinhalten im Fokus.
Im Rahmen des Projekts zur DNS-Schulung (Domain Name System) habe ich den DNS-basierten Werbeblocker Pi-hole aufgesetzt und konfiguriert. Pi-hole ist seit vielen Jahren die bekannteste und am weitesten verbreitete Anwendung für ein netzwerkweites Ad-Blocking. Das liegt besonders an den individuellen Konfigurationsmöglichkeiten, welche die Software anbietet sowie an der unkomplizierten Installation.

Warum ist ein DNS-Werbeblocker sinnvoll?

Viele Dienste und Websites im Internet bieten ihre Dienste für Endkunden kostenlos an. Da sich mit kostenlosen Inhalten in der Regel aber kein Geld verdienen lässt, sind Werbeanzeigen in den letzten zehn Jahren für viele Unternehmen eine, teilweise gar die wichtigste Einnahmequelle geworden.
Während der Einsatz von Werbung aus unternehmerischer Sicht sinnvoll und nachvollziehbar sind, können für die Nutzer:innen der Website / des Dienstes Probleme durch diese Werbeeinblendungen auftreten.

Teilweise sorgen Anzeigen „nur“ dafür, dass Websites nicht richtig funktionieren oder sie die Ästhetik stören. Es gab jedoch schon Fälle, in denen Werbeanzeigen zum Verteilen von schädlichem Code genutzt wurden. Um das eigene Netzwerk werbefrei zu halten, gibt es verschiedene Möglichkeiten. Die bekanntesten sind Pi-hole und AdGuard Home.
Dank dieser Programme kann das Auspielen von Werbung auf allen mit dem Netzwerk verbundenen Geräten verhindert werden. Dieser Text beschäftigt sich mit der Einrichtung und Konfiguration von Pi-hole, während unser Blogartikel von letzter Woche AdGuard Home genauer unter die Lupe nimmt.

Was ist Pi-hole?

Pi-hole ist eine Open-Source-Software, die als Werbe- und Trackingblocker fungiert. Welche Inhalte dabei für welches Gerät im lokalen Netzwerk geblockt werden, lässt sich individuell konfigurieren. Die Anwendung basiert auf Linux und ist dafür optimiert, um auf Computern mit minimaler Ausstattung, etwa dem Raspberry Pi, zu funktionieren.

Damit die Blockfunktion von Pi-hole wie gewünscht funktioniert, fungiert das Programm als DNS-Server für das eigene Netzwerk, über den der komplette Netzwerkverkehr sowohl ausgehend als auch eingehend geleitet wird. Mithilfe dieser Schnittstellenfunktion bekommt Pi-hole Zugriff auf alle eingehenden IP-Adressen, die mit dem Abruf einer Homepage oder eines Dienstes verbunden sind.
Diese Funktion sorgt dafür, dass Filter angewendet werden können, die Werbe- und Tracking-IP’s herausfiltern und z. B. die Website in einer werbefreien Form anzeigen. Die Werbung wird also verhindert, bevor das Endgerät überhaupt die Chance hat, den entsprechenden Inhalt zu laden.

Die angesprochenen Filter werden in Form von Filterlisten implementiert, die verschiedene Ziele erfüllen können. Neben dem bekannten Werbe- und Trackingblocker kann auch der Zugriff auf spezielle Seiten, etwa mit Inhalten der Erwachsenenunterhaltung oder soziale Netzwerke, eingeschränkt oder komplett verhindert werden. Sollten aufgrund einer oder mehrerer angewendeter Blocklisten Seiten gesperrt werden, auf die eigentlich zugegriffen werden soll, besteht die Möglichkeit, diese über eine Whitelist explizit für die gewünschten Clients freizugeben.

Technische Voraussetzungen

Um ein eigenes funktionierendes Pi-hole zu installieren, sind nicht viele Komponenten nötig. Die technischen Voraussetzungen sind:

  • Ein Raspberry Pi mit Raspberry Pi OS+ Zubehör & Netzteil
  • Eine MicroSD-Karte (mindestens 8GB Speicherkapazität)
  • Ethernet- oder WiFi-Verbindung (bei Raspis mit WLAN-Modul) zum Router des lokalen Netzwerks, damit Pi-hole als DNS-Server fungieren kann
  • Zugang zur Command Line Interface (CLI) des Pi

Die Einrichtung des Raspberry Pi vor der Installation von Pi-hole ist simpel und unkompliziert. Es gibt ausreichend Guides, die diese Arbeit Schritt-für-Schritt erklären.

Installation von Pi-hole

-HINWEIS-
Nach der Installation von Pi-hole kann der Raspberry Pi problemlos ohne Peripheriegeräte betrieben werden. Für den Zugriff auf die Weboberfläche der Anwendung ist jedoch die statische IP-Adresse des Pi nötig, welche über das Terminal des Betriebssystems ausgelesen werden kann. Aus diesem Grund ist es sinnvoll, dass für die Dauer der Installation des Betriebssystems und des Werbeblockers Monitor und Tastatur angeschlossen sind.

Die Pi-hole Installation ist unkompliziert und wird von einem ausführlichen Installationsassistenten begleitet, der jeden Schritt mit einer kurzen Erklärung begleitet. Um das Installationsskript zu starten, muss zunächst das Pi-hole git-Repository geklont werden, in der das Skript enthalten ist. Anschließend wird das Skript ausgeführt. Die entsprechenden Befehle dafür sind:

git clone --depth 1 https://github.com/pi-hole/pi-hole.git Pi-hole
cd "Pi-hole/automated install/"
sudo bash basic-install.sh

Der automatisierte Pi-hole Installer konfiguriert die Punkte:

  • Statische IP-Adresse
  • Auswahl des von Pi-hole verwendeten Upstream DNS-Providers
  • Einfügen einer ersten, von den Pi-hole-Entwickler:innen kuratierten Blockliste
  • Installation des Webinterface (kann ausgeschalten werden, wenn die Konfiguration komplett über SSH und CLI gemacht werden will)
  • Installation des Webservers lightttpd (Ist für die Anzeige des Webinterface unerlässlich)
  • Privacy level und loggen von Anfragen

Nachdem der Installer seine Arbeit getan hat, ist die Weboberfläche erreichbar und Pi-hole ohne weitere Einstellungen direkt einsetzbar.

Individuelle Konfiguration von Pi-hole …

Mit der vom Installer vorgegebenen Grundkonfiguration ist der Einsatz des Werbe- und Trackingblocker Pi-hole ohne weitere Einstellungen möglich. Es wäre jedoch kein anständiges Linux- bzw. Open Source-Projekt, wenn es nicht vielfältige Konfigurationsmöglichkeiten geben würde, um Pi-hole an die eigene Umgebung und die persönlichen Präferenzen anzupassen.

Zugriff auf die verschiedenen Konfigurationsmöglichkeiten bekommt man über das Dashboard, welches im Browser über http://IP-Adresse-des-Pi/admin (z. B. 192.168.123.456/admin o. Ä.) aufgerufen werden kann. Nachfolgend werde ich einige wichtige Einstellungen vorstellen.

… als DNS-Server

Wie bereits angesprochen, agiert Pi-hole im lokalen Netzwerk als DNS-Server. Damit das funktioniert, muss im Menü unter Settings -> DNS ein Upstream DNS Server ausgewählt werden, mit dem der Pi kommunizieren kann. Zur Auswahl stehen einige vorkonfigurierte Möglichkeiten (u.A. Google, OpenDNS oder Quad9). Zudem können bis zu vier weitere DNS-Server hinzugefügt werden, indem die entsprechende IP-Adresse eingetragen wird. Somit haben Nutzer die volle Kontrolle über den genutzten Upstream DNS und können z. B. datenschutzfreundliche DNS-Anbieter verwenden.

… und Benutzer- / Gruppenmanagement

Die individuelle Konfigurierbarkeit ist einer der Gründe, warum sich Pi-hole seit Jahren großer Beliebtheit erfreut. Dazu gehört besonders das Benutzer- und Gruppenmanagement.
Du möchtest verschiedene Gruppen anlegen, um für einen oder mehrere Client(s) Content zu sperren, für die anderen aber nicht? Kein Problem!
Du willst einen Client mehreren Gruppen hinzufügen? Kein Problem!
Um individuelle Gruppen anzulegen, muss einfach Group Management -> Groups aufgerufen werden. Die Client-Verwaltung wiederum befindet sich im gleichen Menü jedoch unter dem Unterpunkt Clients.

… und Adlists

Bei der Grundkonfiguration über den Pi-hole-Installer wird eine kuratierte Adlist mitgeliefert, dass Pi-hole direkt einsatzbereit ist. Bei dieser einen Liste muss es aber nicht bleiben. Egal was geblockt werden soll, es gibt die passende Liste dafür. Die folgenden drei Links bieten eine vielfältige Auswahl an regelmäßig aktualisierten Blocklisten:

Eingefügt werden die gewünschten Listen über Group Management -> Adlists. Hier lassen sich alle Listen zentral verwalten (z. B. Kommentare zu einzelnen Listen, Zuweisung zu Nutzergruppen, u.v.m.).

Es existieren noch viele weitere Einstellungsmöglichkeiten wie DHCP, Domainmanagement oder Whitelists, aber diese vorzustellen würde den Rahmen sprengen. Deshalb nun noch ein Punkt, der nicht unerwähnt bleiben sollte.

Grenzen von Pi-hole

Wer bis hierhin gelesen hat, kann den Eindruck bekommen, dass Pi-hole eine großartige Möglichkeit ist, um Werbung und Tracking aus dem eigenen Netzwerk zu verbannen. Und das ist auch zu 95 Prozent richtig. Doch Ehrlichkeit muss sein: NICHT JEDE WERBUNG lässt sich blockieren.

Wenn sich der abgerufene Inhalt und die Werbung den Server und die IP-Adresse teilen, führt ein Blockieren der Werbung zu einem Blockieren des Inhalts. Das bekannteste Beispiel für dieses Vorgehen ist YouTube, dass damit DNS-Werbeblockern wie Pi-hole oder AdGuard Home zuvorkommen will. Um diese Inhalte abzurufen, muss man in den meisten Fällen ein wenig Werbung in Kauf nehmen.
Besonders für Nutzer von Smart-TVs oder TV-Sticks ist das eine bedauerliche Nachricht. (Während es auch hier Optionen gibt, hust SmartTube hust).

Wenn du nun auch Lust auf abwechslungsreiche Projekte in einem modernen IT-Unternehmen im wunderschönen Nürnberg hast und aktuell noch einen spannenden Ausbildungsplatz suchst, dann solltest du noch heute deine Bewerbung an NETWAYS schicken.

Adblocker und Pi-Hole

Pi-Hole ist ein netzwerkweiter Adblocker, aber was ist eigentlich Adblocker? Ein Werbeblocker bzw. Adblocker ist ein Programm, mit dem verschiedene Arten von Werbung aus der Webanfragen eines Webbenutzers entfernt werden. Diese Programme zielen auf bestimmte Arten von Anzeigen ab, wie z. B. Popups, Bannerwerbung und andere gängige Formen der Online-Werbung, sodass ein Benutzer ohne störende Ablenkungen oder Unterbrechungen im Internet surfen kann. Die Adblock-Technologie basiert auf einfachen Listen, sogenannten Filterlisten, die festlegen was blockiert und ausgeblendet werden soll oder was auf den von Ihnen besuchten Seiten angezeigt werden soll. Diese Listen bestehen einfach aus einer Liste von URLs in Form einer „Zulassungsliste“ oder einer „Sperrliste“.

Wenn Sie eine Website besuchen, überprüft der Adblocker schnell, ob diese Website in einer dieser Filterlisten enthalten ist. Wenn dies der Fall ist, wird die Anforderung an externe Inhalte blockiert und die Anzeige wird nicht auf die Webseite heruntergeladen. Kurz gesagt, die Adblock-Technologie besteht aus einer Reihe von Regeln, die in diesen Filterlisten festgelegt sind und festlegen, was auf den von Ihnen besuchten Webseiten blockiert oder nicht blockiert werden soll. Es gibt die Möglichkeit den Adblocker entweder auf Browser installieren oder im Netzwerk konfiguriere.

Pi-Hole ist eine kostenlose Open-Source-Software zum Einrichten eines DNS- (Domain Name Service) und DHCP-Servers (Dynamic Host Configuration Protocol) mit integrierten Funktionen, mit denen Anzeigen, Tracker und andere Websites blockiert werden können. Anstatt Adblocker auf jedem Gerät und jedem Browser zu installieren, können wir Pi-Hole einmal in unserem Netzwerk als DNS-Server installieren und alle unsere Geräte schützen. Da Pi-Hole anders funktioniert als ein browserbasierter Werbeblocker, blockiert Pi-Hole Anzeigen auch an nicht traditionellen Orten, z. B. in Spielen und auf Smart-TVs. Pi-Hole braucht nicht so viel Rechenpower, daher funktioniert er problemlos auf alle Raspberry-Pi Modellen mit ein laufendem Linux-Betriebssystem wie Ubuntu oder Raspbian. Pi-hole funktioniert auf DNS-Ebene (Domain Name Service). DNS wird von Ihrem Computer verwendet, um einen in einen Webbrowser eingegebenen Domainnamen (z. B. build5nines.com) in die IP-Adresse (z.B. 8.8.8.8) umzuwandeln, mit der der Computer eine Verbindung herstellt, um den angeforderten Namen herunterzuladen und anzuzeigen. Diese DNS-Suche wird nicht nur im Webbrowser durchgeführt, sondern von jeder Software, die die Kommunikation mit einem Server im Internet anfordert. z.B. Apps auf Ihrem Smartphone, Computer, Tablet oder anderen Geräten. Durch das Einrichten von Pi-Hole als DNS-Server in Ihrem Netzwerk werden alle DNS-Namensauflösungsanforderungen abgefangen und Sie können diejenigen blockieren, die Sie nicht möchten. wie Anzeigen, Tracker oder sogar NSFW-Websites. Als DNS-Server ist es so eingerichtet, dass unerwünschter / unerwünschter Datenverkehr in Ihrem gesamten Netzwerk blockiert wird, ohne dass etwas auf Ihrem Smartphone, Laptop oder anderen Geräten installiert werden muss. Sie richten einfach das Pi-Hole ein, konfigurieren Ihr Netzwerk und alles funktioniert für alle mit dem Netzwerk verbundenen Geräte.

Am häufigsten wird von Pi-Hole gesprochen, um Website-Werbung in einem Heimnetzwerk zu blockieren. Dies ist nur ein sehr spezifischer Anwendungsfall. Pi-Hole kann in jedem Netzwerk verwendet werden, sofern die Hardware, auf der es installiert ist, über die Ressourcen verfügt, um alle DNS-Abfragen dieses Netzwerks zu verarbeiten. Daher können Sie Pi-hole auch in einem Netzwerk für kleine Unternehmen installieren, um unerwünschte Websites zu blockieren. Dies ist eine wirklich günstige Option für Unternehmen.

Saeid Hassan-Abadi
Saeid Hassan-Abadi
Systems Engineer

Saeid hat im Juli 2022 seine Ausbildung als Fachinformatiker für Systemintegration bei uns abgeschloßen, und arbeitet nun in Operation-Team. Der gebürtige Perser hat in seinem Heimatland Iran Wirtschaftsindustrie-Ingenieurwesen studiert. Er arbeitet leidenschaftlich gerne am Computer und eignet sich gerne neues Wissen an. Seine Hobbys sind Musik hören, Sport treiben und mit seinen Freunden Zeit verbringen.

Adfree Internet with pi-hole

There are two ways to motivate people: intrinsic, motivation stems from the person her/himself or extrinsic, where an external force pushes a person to do something.
I myself experienced this external motivation when I bought a new TV and wanted to test the YouTube-Application.
Using ublock origin on both private and work-related devices, I was surprised by the amount of advertisements being displayed – before and during the video.

mildly annoying, no offense Ben Schmid!


I don’t want to dive to deep into the discussion whether ads and tracking are good or bad, but show you a way how to get rid of most of the ads in your network.
One of the most basic protocol of the internet is DNS. It resolves Domain Names (like nws.netways.de) that you type into your browser to IP Adresses (185.11.252.146) which the browser then invokes. A common analogy would be „phone directory of the Internet“. This is the part we’re going to have closer look on.
Most ad blocking techniques use lists of hosts which deliver the ads (like noisy.popups.com) to your device and direct your device to 127.0.0.1 (localhost) instead. You’re essentially calling yourself.
For web browsers, there are very popular plugins available, even for (rooted) mobile phones similar solutions are known, but have you ever tried to root your TV or Apple device and side load an application?
This is exactly the point where pi-hole is getting handy.
It uses aforementioned lists to block ads but not only for the device you installed an adblocker on but for all devices in your network.
You just have to use pihole as DNS-Server in your network – if you can’t configure a specific DNS fuss-free on your device or router you might want to use pi-hole as your DHCP-Server.
This way it pushes itself as DNS to your devices.
If you want to have a look at it, there are several very good installation guides in multiple languages available.
Feel free to invest one hour of setting it up and enjoy a new ad free network and don’t forget to support the project 🙂

Tim Albert
Tim Albert
Senior Systems Engineer

Tim kommt aus einem kleinen Ort zwischen Nürnberg und Ansbach, an der malerischen B14 gelegen. Er hat in Erlangen Lehramt und in Koblenz Informationsmanagement studiert. Seit Anfang 2016 ist er bei uns tätig. Zuerst im Managed Services Team, dort kümmerte Tim sich um Infrastrukturthemen und den internen Support, um dann 2019 - zusammen mit Marius - Gründungsmitglied der ITSM Abteilung zu werden. In seiner Freizeit engagiert sich Tim in der Freiwilligen Feuerwehr – als Maschinist und Atemschutzgeräteträger -, spielt im Laientheater Bauernschwänke und ist auch handwerklich ein absolutes Allroundtalent. Angefangen von Mauern hochziehen bis hin zur KNX-Verkabelung ist er jederzeit...