Fandrich IT Consulting

Fandrich IT Consulting

Endlich werbefrei dank Blocker: So installierst du Pi-hole in deinem Netzwerk

Pi-hole lässt sich leicht installieren und hält dir und deiner Familie jede Menge lästige Werbung vom Hals. Die Einrichtung ist relativ einfach und lohnt sich. Doch es gibt einige Schwächen und die Einrichtung am häufig verwendeten Provider-Modem kann holprig sein. Eine Anleitung.

1. Benötigte Hardware / Voraussetzungen

Ich verwende einen Raspberry Pi 3, ein älteres Modell hätte es laut einigen Reddit-Nutzern auch getan. Die notwendige microSD-Karte gibt es meist zum Raspberry Pi dazu. Wer keine hat, kann günstig eine kaufen und wird mit 4 GB zunächst gut fahren. Pi-hole hebt in der Standardkonfiguration jede einzelne geloggte Adresse für immer auf, demzufolge kann ich noch nicht abschätzen, wie schnell die Logdateien an Größe gewinnen. Dem Raspberry sollte ein Adapter für die microSD-Karte beiliegen, mit dem du die Karte in die meisten Notebooks stecken kannst. Falls nicht, gibt es auch günstige microSD-USB-Adapter.

2. Vorbereitung der Speicherkarte

Die microSD-Karte kann vorheer formatiert werden, normalerweise ist das aber nur notwendig, wenn sie zuvor in ein spezielles Format formatiert wurde. Anschließend können wir uns um die Installation des Betriebssystems kümmern, das benötigt wird. Am einfachsten geht das mit dem Tool Raspberry Pi Imager. Nachdem es heruntergeladen und geöffnet wurde, sollte es wie folgt aussehen:

Raspberry Pi Imager - Startscreen

Mit einem Klick auf Choose OS kann das Betriebssysstem ausgewählt werden. Hier klicken wir auf Raspberry Pi OS (32bit).

Raspberry Pi Imager - OS Auswahl

Zurück auf dem Startscreen klicken wir unten rechts auf das Zahnrad-Symbol. Hier können einige Einstellungen vorgenommen werden. Ich entscheide mich für folgende, die per Klick auf das Kästchen aktiviert werden müssen. Alle, die auf dem Screenshot nicht sichtbar sind, habe ich auf dem Standardwert gelassen. Klicke auf Save, wenn du fertig bist.

Raspberry Pi Imager - Einstellungen

Im letzten Schritt musst du die Speicherkarte auswählen, auf die die Dateien geschrieben werden solle. Klicke dazu auf Chooses Storage und wähle die microSD-Karte, die du vorher angeschlossen hast. Nun brauchst du nur noch auf Write klicken und abwarten, bis der Prozess abgeschlossen ist. Entferne die Speicherkarte anschließend vom Computer.

3. Raspberry Pi testen (anpingen)

Steck die microSD-Karte in den Pi, schließ den Pi an den Strom an und verbinde ihn mittels eines LAN-Kabels mit dem Router. Am besten baust du den Raspberry Pi vorher in ein passives Kühlgehäuse ein und nimmst ihn erst danach in Betrieb. Insbesondere bei hohen Außentemperaturen erreicht der Pi schnell 60°C. Zwar macht ihm das nichts aus, sollte er aber mal unter hoher Last stehen, sind auch Temperaturen von 80°C möglich. Im schlimmsten Fall verkürzen solche Temperaturen die Lebenszeit deines Pi. Mit einem Gehäuse für etwas mehr als 10 Euro kannst du dem vorbeugen.

Nach einigen Minuten sollte getestet werden, ob der Raspberry Pi erfolgreich gebootet hat und im Netzwerk erreichbar ist. Unter Windows funktioniert das mit dem CLI-Kommando ping <HOSTNAME>. In meinem Fall lautet der Hostname raspberry.local. Antwortet der Pi, hat die Installation geklappt und du entfernst ihn wieder vom Strom. Denn im nächsten Schritt müssen wir noch eine Änderung auf der Speicherkarte machen.

Raspberry Pi mit der Kommandozeile anpingen

4. SSH-Zugriff aktivieren

Bevor Pi-hole installiert werden kann, sollten noch der Zugriff via SSH aktiviert werden. Am einfachsten geht das, indem die microSD-Karte noch mal mit dem Computer verbunden wird. Erstelle im Root-Verzeichnis der Speicherkarte eine leere Datei mit dem Namen ssh (ohne Dateiendung). Das war’s schon! Jetzt kannst du die Speicherkarte wieder in den Raspberry Pi stecken und ihn erneut mit dem Strom verbinden. Nach einigen Minuten hat er erneut gebootet und sollte wieder via Ping erreichbar sein. Ab sofort kann auch via SSH auf den Pi zugegriffen werden.

5. Pi-hole installieren

Machen wir uns nun an die Installation von Pi-hole. Verbinde dich zunächst via SSH-Client mit dem Raspberry Pi. Ich verwende dafür Putty. Sofern es in Schritt 2 nicht geändert wurde, kann der Raspberry Pi über den Hostnamen raspberry.local erreicht werden. Der Benutzername konnte in Schritt 2 in den Einstellungen von Raspberry Pi Imager ebenfalls angepasst werden. Wurden die Daten nicht angepasst, ist der Benutzername pi und das Passwort raspberry.

Schritt 1

Bist du verbunden, müssen zunächst alle Pi-hole-Dateien heruntergeladen werden. Gib dazu folgendes Kommando in die Konsole ein. Anschließend sollte der Installationsprozess starten und sich die unten sichtbare Ansicht öffnen.

$ curl -sSL https://install.pi-hole.net | bash

Pi-hole Installation - Installation Startscreen

Solltest du Probleme mit dem Kommando haben, kannst du hier nachlesen, wie sich der Installationsprozess anders starten lässt. (Sobald du die Ansicht oben erreichst, fahre mit dieser Anleitung hier fort).

Schritt 2

Im zweiten Schritt wird man darauf hingewiesen, dass dem Raspberry Pi eine statische IP-Adresse zugeordnet sein muss, da das Pi-hole sonst nicht richtig funktioniert. Bestätige diesen Schritt mit dem Drücken der Enter-Taste.

Pi-hole Installation - Hinweis statische IP-Adresse

Schritt 3

Im dritten Schritt muss ein Upstream DNS-Server gewählt werden. Natürlich benötigt auch der eigene Pi eine Quelle zur Namensauflösung. Dafür stehen einige Anbieter zur Auswahl. Ich entscheide mich für den DNS-Dienst von Quad9, der bereits vorab potenziell schädliche Quellen filtert.

Pi-hole Installation - Auswahl des Upstream DNS Servers

Schritt 4

In diesem Schritt wird gefragt, ob man das Admin Web Interface installieren möchte. Es handelt sich hierbei um die graphische Web-Oberfläche, die später über den Browser abgerufen werden kann und in der das Pi-hole verwaltet werden kann. Hier sollte man absolut Yes auswählen.

Pi-hole Installation - Admin Web Interface Auswahl

Schritt 5

Damit das Admin Web Interface auf dem Pi ausgeführt werden kann, werden lighthttp und PHP benötigt. Stimme in diesem Schritt einfach der Installation zu und fahre fort.

Pi-hole Installation - Installation lighthttp und PHP bestätigen

Schritt 6

In Schritt 6 wird der Privatsphäremodus festgelegt. Show everything loggt alle Daten, Anonymous mode anonymisiert Log-Einträge so weit wie möglich und lässt damit keine Rückschlüsse auf einzelne Geräte im Netzwerk zu. Diese Einstellung lässt sich später jederzeit ändern.

Pi-hole Installation - Privatsphäremodus festlegen

Schritt 7

Die Konfiguration ist nun abgeschlossen und Pi-hole kann installiert werden. Die Zusammenfassung verrät unter Anderem, unter welcher Adresse Pi-hole verfügbar sein wird. Sie erinnert auch noch mal daran, dass dem Pi-hole eine statische IP-Adresse zugeordnet sein muss. Wurde das noch nicht erledigt, sollte das jetzt getan werden. Kann man auch bequem machen, während die Installation im nächsten Schritt läuft.

Pi-hole Installation - Installation starten

Schritt 8

Pi-hole wird nun installiert und lädt einige Komponenten runter. Ist die Installation beendet, erscheint eine entsprechende Meldung in der Konsole.

Pi-hole Installation - Installationsprozess

Schritt 9

Fertig! Pi-hole wurde erfolgreich installiert. Im nächsten Schritt kann das Admin Web Interface im Browser geöffnet werden. Der Konsole kann das Start-Passwort entnommen werden. Sollte dieses Passwort verloren gehen, kann es einfach über die Konsole zurückgesetzt werden:

$ sudo pihole -a -p

Pi-hole Installation - Admin Web Interface Login

Schritt 10

Nach dem ersten Login gibt es noch nicht viele Daten, aber es funktioniert alles ordnungsgemäß.

Pi-hole Installation - Web Admin Interface Startseite

Über den Menüpunkt Adlists können Filterlisten hinzugefügt werden, die ähnlich wie bei jedem Werbeblocker als Blacklist genutzt werden. Wichtig ist, dass unter dem Menüpunkt Clients noch alle Geräte, die Pi-hole verwenden sollen, der Default Gruppe hinzugefügt werden. Am besten trägt man im Feld Client description ein, um welches Gerät es sich handelt. So lässt es sich später leichter wiederfinden. Dann noch auf Add klicken und das Gerät kann Pi-hole als DNS-Server nutzen.

Pi-hole Installation - Geräte einer Gruppe zuordnen

Das war’s zur Installation. Im nächsten Schritt wollen wir uns ansehen, wie Pi-hole nun aktiv als DNS-Server genutzt werden kann.

6. Pi-hole verfügbar machen

Das Ziel ist es, den gesamten Netzwerk-Traffic über Pi-hole laufen zu lassen. Um das zu erreichen, gibt es zwei Möglichkeiten:

Möglichkeit 1

Wenn das Modem die Option bietet, kann man in dessen Web-Oberfläche den DNS-Server ändern, den es zur Namensauflösung verwenden soll. Hier trägt man als ersten DNS-Server die statische IP-Adresse ein, die dem Raspberry Pi zugewiesen wurde. In meinem Fall ist das zum Beispiel die IP 88.99.36.60. (Der zweite DNS-Server dient als Alternative, falls das Pi-hole aus irgendeinem Grund nicht richtig funktioniert. Damit die Internetverbindung in solch einem Fall nicht gestört wird, sollte hier ein hochverfügbarer DNS-Server eingetragen werden, etwa der von Google oder Cloud Flare).

Möglichkeit 2

Sollte das Modem diese Option nicht bieten, muss auf jedem Endgerät manuell der DNS-Server geändert werden. Das geht üblicherweise in den WLAN- bzw. Netzwerk-Einstellungen. Das Vorgehen ist wie im oberen Abschnitt (erster DNS-Server – 88.99.36.60 | zweiter DNS-Server – bspw. 8.8.8.8).

7. Fazit

Ein Pi-hole ist eine richtig gute DIY-Maßnahme gegen Werbung im gesamten Netzwerk. Einige Einschränkungen gibt es jedoch. Anzeigen, die direkt über die Hauptdomain ausgeliefert werden, können nicht blockiert werden. So lassen sich die Werbeanzeigen bei YouTube zum Beispiel nicht mit dem Pi-hole blockieren.

Wie fast jedes Stück Software auf der Welt hat auch Pi-hole mit einigen Problemen zu kämpfen. Für die Core-Software gibt es auf GitHub im September dieses Jahres zwar nur 25 Bug Reports, die Probleme sitzen aber tiefer. Für altbekannte Werbedomains wie die von Google ähnelt Pi-hole einem Vorschlaghammer. So blockiert Pi-hole beispielsweise als Werbung ausgelieferte Suchergebnisse in der Google-Suche, die ja potenziell nützlich sein können. Sichtbar sind die Einträge, beim Anklicken jedoch erscheint eine Fehlermeldung.

Man möge mich nicht missverstehen, an sich ist das ja richtig, da es sich um eine Domain handelt, über die Werbeanzeigen ausgeliefert werden. Berichten auf Reddit zufolge aber führt das Blocking an der Stelle zu einer „holprigen Usability“, die unerwünscht sei (weil man die erwähnten werbenden Suchergebnisse als legitim wahrnehme und halt auch öffnen wolle). Die von Nutzern vorgeschlagene Lösung lautet Sensibilisierung. Für Werbeblocker, für Werbeanzeigen, für das Internet an sich – das ließen die Autoren offen. 😉

Picture of Über den Autor
Über den Autor

Ich bin Niklas Fandrich. Ich berate, entwickle und gestalte. Hier im Blog schreibe ich über Themen aus dem Alltag als Consultant und teile mein Wissen zu IT-Themen.

LinkedIn-Profil

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert