Pi-Hole auf der APU

Pi-Hole wird seit 2015 von Jacob Salmela entwickelt. Die Basis bildet dnsmasq und der Webserver Lighttpd.

 

Pi-hole ist eine Software welche ähnlich wie Ad-Blocker im Browser, Werbung und Trackern unterbietet.

Im Browser können wir diese Funktionen mittels Add-Ons wie dem Ad-Blocker nachrüsten, aber für Mobiletelefone, Tablets oder sonstige Netzwerkgeräte gibt es kaum Möglichkeiten.

Hier hilft uns Pi-hole, welcher den gesamten Netzwerktraffic überprüft und ggf. verhindert.

 

Wie funktioniert dies?

Pi-hole macht DNS Funktionen zu nutze.

Unser Netzwerk/Internet funktioniert mittels IP Adressen, aber wieso sollte ich für den Aufruf einer Webseite deren IP Adresse eingeben, wenn es doch mit dem DNS Name viel einfacher geht.

Pi-hole hat im Hintergrund eine Domain Liste mit über 100'000 Einträgen von DNS Adressen welche als Werbung eingestuft sind. Diese Liste wird automatisch aktualisiert und erlaubt eine einfache Handhabung.

Möchte ich nun auf die Webseite https://www.philippebrandenberger.ch zugreifen, wird diese Anfrage an den DNS Server gestellt, welcher dann die hinterlegte IP Adresse zurück gibt und somit der Browser eine Verbindung aufbauen kann.

Nun muss nur noch der gesamte DNS Verkehr in meinem Netzwerk via dem Pi-hole geleitet werden und schon kann er alles kontrollieren und ggf. blockieren.

Ist also gar keine Hexerei und funktioniert tadellos.

Ansicht meines Pi-hole nach 12 Stunden Laufzeit:

Beeindruckend was da alles gesperrt wird, ohne das ich einen Qualitätsverlust bemerkte. Einzig die Webseite zattoo.com und mein Gratis Account wollten dort partu nicht funktionieren.

Ich denke das ohne Werbeeinblendung nichts angespielt wird.

Als Vergleich typische Webseiten mit viel Werbung und Popups.

Links ohne Pi-hole

Rechts mit Pi-hole

Grundsätzlich würden all diese Werbeeinblendungen auch mit dem Ad Blocker in meinem Browser entfernt werden, aber nun habe ich auch auf dem Handy, Tablet und selbst auf meinem Smart TV Ruhe.

 

In den Logfiles des Pi-hole ist auch schön zu sehen wieviel "Müll" eine einfache Webseite zusätzlich ladet.

Ohne Werbung fühlt sich das Bedienen der Webseite auch angenehmer an.

Installation

Genug von den schönen Fotos, jetzt geht es an die Installation.

Ich verwende dazu Debian 9.6 auf der PC Engines APU2 Hardware. Mehr dazu hier

 

Empfehlenswert ist es dem Debian System vor der Installation die spätere fixe IP Adresse im System zuzuweisen.

Eine fixe IP Adresse ist so oder so später für den dauerhaft korrekten Betrieb nötig.

 

Die Installation ist ganz einfach, muss aber mit Root Rechten ausgeführt werden.

Dazu in der Shell folgenden Befehl eingeben und alles nach Anleitung durchklicken.

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

Bei der Installation werdet Ihr für die verwendete Netzwerkschnittstelle gefragt, nutzt Ihr das APU2 Board sollten drei Schnittstellen zur Auswahl stehen. Wählt die erste sofern Ihr denn Netzwerkanschluss direkt neben der seriellen Schnittstelle nutzt. 

Bei der nächsten Auswahl könnt Ihr den externen DNS Server für die Anfragen angeben.

Ich gebe dort meine pfSense an, da diese nochmals eine DNS Filterung mittels Squid installiert hat.

Normalerweise würde man dort einen Server aus der Liste auswählen, empfehlen kann ich den Quad9.

Nach der Installation bekommt Ihr euer Passwort für den Zugriff auf die Administratorebene angezeigt.

Zum Ändern des Passworts, einfach auf Passwort vergessen klicken und den angezeigten Code als Root ausführen.

 

Zugriff auf die Administratoreben: http://[IP des Pi-hole]/admin

 

Nun muss im Netzwerk noch der gesamte DNS Traffic zum Pi-hole gleitet werden.

Meist ist euer Router für die DHCP/DNS Verwaltung im Netzwerk zuständig, bei mir ist es eine pfSense.

Ich muss nun nur sagen das der DHCP Server als DNS Server meinen Pi-hole an gibt.

Falls Ihr einen anderen DHCP Server im Einsatz habt, schaut bitte direkt im Handbuch oder via Google.

Ich gehe auf meine pfSense und wähle "Services" -> "DHCP Server"

Dort gehe ich zum Reiter "servers" und gebe die IP Adresse meines Pi-hole ein.

Hier seht Ihr als Eintrag nun die IP des Pi-hole:

Nun müssen alle Netzwerkgeräte einmal kurz vom Netzwerk getrennt werden oder Ihr wartet einfach bis der DHCP Lease abgelaufen ist (kann bis zu 1 Tag oder mehr dauern).

Danach sollten alle Geräte in eurem Netzwerk via Pi-hole gehen.

 

Denkt daran Netzwerkgeräte welche eine fixe IP Adresse haben, ebenfalls anzupassen. (Bsp. Drucker, NAS oder Wireless Access Point ect.)

 

Ich gehe auf Nummer sicher und sperre via Firewall Regeln den Zugriff auf DNS Abfragen für alle Netzwerkgeräte ausser dem Pi-hole:

Funktionstest:

Unter Windows kann mittels dem Befehl "nslookup" die DNS Auflösung getestet werden.

Öffnet mittels Windows-Taste + R das Ausführungsfenster, dort gebt Ihr den Befehl "cmd" ein und klickt auf OK.

Nun sollte ein schwarzes Fenster aufgehen, dort gebt Ihr "nslookup" ein und klickt ENTER.

 

Ihr könnt dort eine www Adresse eingeben und so die Auflösung mit eurem via DHCP zugewiesenen DNS Server testen.

Ebenso könnt Ihr auch den zu verwendenden DNS Server manuell angeben.

Dazu gebt Ihr "server" gefolgt von der gewünschten IP Adresse ein und drückt wieder ENTER. 

Nun werden Abfragen über diesen DNS Server geleitet.

 

Nachfolgend ein Test mit dem Pi-hole als DNS Server und einmal meine pfSense, welche via Firewall Regel keine Abfrage für sonstige Clients zulässt.

Abfrage wird durch pfSense blockiert
Abfrage wird durch pfSense blockiert

Freigabe von DNS Adressen:

 

In meinem Netzwerk greife ich auf viele Server und Dienste via lokaler DNS Adresse zu.

Da Pi-hole diese nicht kennt, werden Sie nicht aufgelöst.

Nun müsste ich wieder mittels Eingabe der IP Adresse arbeiten, aber dies ist mühsam.

Ich muss nur meine lokalen DNS Adressen in die Whitelist von Pi-hole eintragen und schon hab ich wieder Zugriff.


Update nach 7 Tagen Laufzeit:

Bisher habe ich keine Verschlechterung oder nicht funktionierende Webseiten oder Dienste bemerkt.

Gewisse Webseiten laufen wesentlich flüssiger und mein Notebook hat deutlich weniger Last bei bisher zugemüllten Webseiten.

Einzige Seite welche nicht funktioniert: www.zattoo.com (Live TV)

 

Sehr Interessant finde ich die blockierten Top 10 Domains der letzten 7 Tage.

Sehr oft findet sich da Seiten von Microsoft.

Was wird da wohl im Hintergrund übertragen?


Update nach 90 Tagen Laufzeit:

Kurz und bündig, ich gebe meinen Pi-hole nicht mehr her.

Das Bedienen der Webseiten ist wesentlich angenehmer und ich hab auch keine nervenden Werbeeinblendungen mehr.

 

Auf Online Plattformen wie Ebay, Ricardo, Amazon oder Alibaba erhalte ich auch nicht mehr Angebote, welche ich früher bereits einmal angeschaut habe.

Das bedeutet für mich das der Tracking Schutz effektiv wirkt.


Systemupdate von Pi-hole

Irgendwann ist es soweit und im Web GUI steht etwas von einer neuen Version oder man ist via Herstellerseite darauf gestossen.

 

Nun stellt sich die Frage wie mache ich das Systemupdate?

 

Ganz einfach, einloggen via SSH/Konsole als Root und folgenden Befehl absetzen:

pihole -up

Und schon wird das Update gestartet.

 

Wenn du schon dabei bist, Update auch gleich das Debian System mit folgenden Befehlen:

sudo apt-get update
sudo apt-get upgrade

Spezielle DNS Einträge

Ich sperre grundsätzlich lieber zuviel als zuwenig, leider kann es dabei aber vorkommen das gewisse Funktionen nicht mehr so funktionieren wie es soll.

Sollte eines der unten aufgeführten Probleme auftretten, nehmt den FQDN wieder von der Blacklist.

 

Bei Google werden nur wenige Bilder angezeigt, alles weitere bleibt in uni-farbigen Quadraten:

encrypted-tbn0.gstatic.com


Kommentare: 0