Digitale Selbstverteidigung: Pi-hole | AzubiBlog von Axians
Digitale Selbstverteidigung: Pi-hole

Digitale Selbstverteidigung: Pi-hole

Ein schwarzes Loch für das Heimnetzwerk

Liebe Leserin und lieber Leser,

in diesem Artikel erkläre ich, wie du dich in Zukunft besser vor Werbung und Tracking schützen kannst. Zusätzlich wird es am Ende des Artikels auch noch eine Schritt-für-Schritt Installationsanleitung für das Tool „Pi-hole“ geben, welches die Gefahren – gerade für Werbung und Tracking – minimiert. (Solltest du mit den Begriffen Werbung und Tracking nichts anfangen können, schaue dir zunächst die Bedeutung beider Begrifflichkeiten an.)

Jeder kennt die nervigen Werbeanzeigen im Netz. Einige schützen sich sogar schon vor solchen Anzeigen mit Browser Erweiterungen, wie z. B. Adblock Plus. Aber viele tun auch einfach gar nichts, wobei sich auf jeder Webseite potenzieller Schadcode hinter Werbung befinden kann.

Adblocker sind aber auch keine optimale Lösung, da diese in der Regel nur für Webbrowser am Computer verfügbar sind. Weitere Probleme sind, dass das Tracking meist nicht vom Adblocker unterbunden und die Werbung erst am Endgerät gefiltert wird (dein Computer). Somit sind die Werbung und der möglicherweise enthaltene Schadcode immer noch eine potenzielle Gefahr für deinen Computer, denn der Code ist bereits auf dem Computer gespeichert und wird erst im Anschluss durch die Adblocker Erweiterung gefiltert.

Allerdings gibt es in der heutigen Zeit bereits Mittel, um sich deutlich effektiver vor Werbung und insbesondere Tracking zu schützen – und das sogar ganz kostenlos! Pi-hole bietet eine Open Source Lösung an, die die oben genannten Probleme zentral im Netzwerk löst. Das bedeutet, dass du nicht nur am Computer werbefrei und ohne Tracking surfen kannst, sondern auch am Handy, Tablet oder Smart TV: Also auch Schluss mit In-App Werbungen. Bedenke jedoch, dass niemand einen hundertprozentigen Schutz garantieren kann.

Das Prinzip von Pi-hole ist recht simpel: Du rufst eine Webseite auf und Pi-hole entscheidet, welche Inhalte angezeigt werden. Das funktioniert über sogenannte Blacklists und Whitelists, die in einem DNS Server eingepflegt sind. Die Aufgabe eines DNS-Servers ist die Beantwortung von Anfragen zur Namensauflösung. Im Grunde rufst du im Moment die Seite ausbildung.axians.de auf. Tatsächlich rufst du jedoch eine IP-Adresse (z. B. 192.168.178.1) auf. Der DNS Server hat den Namen der Webseite in die IP-Adresse aufgelöst (=Namensauflösung). Die IP-Adresse ist für Server eine „eindeutige“ Adresse, über die der jeweilige Server erreicht werden kann (in der Regel fest zugewiesen) und die Domain zeigt nur auf eine IP-Adresse. Um es auf das wesentliche zu beschränken: Das DNS kann man sich wie ein dickes Telefonbuch vorstellen, in dem für jede Domain die dazugehörige IP-Adresse gespeichert ist. DNS-Server übersetzen dann die Anfragen in IP-Adressen und steuern dabei, welche Server die Endbenutzer erreichen, wenn er in seinen Webbrowser eine Domain eingibt

Rufst du nun eine Webseite auf, so wird deine Anfrage zunächst auf dem DNS-Server bearbeitet. Über die IP-Adresse wird nun die Webseite aufgerufen. Diese liefert dann die Homepage als Ergebnis mit weiteren externen Inhalten zurück. Sollte ein Teil der Inhalte in der definierten Blacklist vorkommen, so wird dieser Inhalt schlichtweg blockiert. Die restlichen Inhalte werden wie sonst auch an dein Endgerät weitergeleitet. Ein Vorteil dieser Methode ist – anders als beim Adblocker – dass Werbung und Tracker gar keinen Zugriff auf deinen Computer erhalten können, da Pi-hole die tatsächliche Adresse mit der eigenen Adresse ersetzt hat. Das bedeutet im Umkehrschluss, dass der Inhalt gar nicht geladen werden kann, da dieser nicht vorhanden ist.

Natürlich kann die Blacklist von Pi-hole auch „zweckentfremdet“ und weitere Schutzmechanismen eingebaut werden. Ein Beispiel ist die Erweiterung um eine Anti-Phishing Blacklist. Es ist jedoch wichtig daran zu denken, dass solche Listen nie zu 100% Schutz bieten können, da täglich neue Domains erstellt werden. Das bedeutet, dass du die Blacklists regelmäßig auf Aktualität überprüfen musst, sofern die Liste nicht automatisch aktualisiert wird.

Nun zur Installationsanleitung des Pi-hole.

Zunächst benötigst du natürlich die Hardware:

  • Raspberry Pi 3 Model B+ (Preise vergleichen)
  • Netzteil inkl. Gehäuse und Kühlkörper (gibt es hier)
  • MicroSD Karte (mind. 4 GB) (Schreib-/Leserate von mind. 80 MB/s wird empfohlen) (gibt es hier)
  • Für die Einstellungen im Netzwerk benutze ich eine Fritz!Box. (Solltest du daheim einen anderen Router haben, können die Menüpunkte in der Anleitung anders heißen!)

Schritt 1: Vorbereitungen des Raspberry Pi

Als erstes musst du das Raspberry Pi mit einem Betriebssystem ausstatten. Dazu wird hier „Raspbian Lite“ verwendet, welches auf der offiziellen Webseite von Raspberry Pi heruntergeladen werden kann (https://www.raspberrypi.org/downloads/raspbian/). Sobald die Datei heruntergeladen ist, sollte diese auch entpackt werden.

Um das heruntergeladene Image nun auf der MicroSD Karte zu installieren und bootfähig zu machen wird noch ein weiteres Tool benötigt: Win32 Disk Imager (https://sourceforge.net/projects/win32diskimager/). Sobald du das Tool heruntergeladen und auf deinem Computer installiert hast, musst du den Win32 Disk Imager ausführen. (Vergiss nicht, die Speicherkarte am PC einzustecken.)

  1. Pfad zu dem Betriebssystem(-image) finden und setzen.
  2. Den Laufwerkbuchstaben deiner Speicherkarte auswählen. (Achtung: Sollte ein falscher Datenträger ausgewählt sein, sind nach (3) alle Daten des Datenträgers weg und können nicht wiederhergestellt werden.)
  3. Sind (1) und (2) durchgeführt, auf den Button „Schreiben“ klicken und warten bis die Meldung „Fertiggestellt“ kommt.

Bevor du die Speicherkarte in dein Raspberry Pi einlegen kannst, musst du nun mit dem Explorer auf die Speicherkarte zugreifen. Im Wurzelverzeichnis muss jetzt eine Datei erzeugt werden, die nur „ssh“ genannt wird. Es darf im Namen kein Punkt oder sonstiges Zeichen vorkommen. Nun kann die Speicherkarte in das Raspberry Pi eingelegt werden. Danach sollte es an ein Netzwerkkabel angeschlossen und mit einem Netzstecker verbunden werden.

Schritt 2: Verbindung zum Raspberry Pi herstellen

Sobald das Raspberry Pi an Strom angeschlossen ist, startet es. Während das Pi hochgefahren wird, setzt du dich an deinen Computer und loggst dich auf der Fritz!Box ein. Dort navigierst du zu „Heimnetz“ und wählst als Unterpunkt „Heimnetzübersicht“ aus. Dort suchst du nach dem Raspberry Pi. Sobald du es gefunden hast klickst du auf Details. Dort siehst du die IP-Adresse deines Einplatinencomputers. Auf dieser Seite musst du jetzt den Haken bei „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“ setzen und mit „Ok“ speichern.

Nun benötigst du ein SSH Client. Zu empfehlen ist hier Putty (https://www.putty.org/). Auf der Webseite einfach im Downloadbereich die „putty.exe“ suchen und herunterladen. Sofern das geschehen ist, kannst du Putty ausführen. Von der Fritz!Box Seite kopierst du die IPv4-Adresse des Raspberry Pi in das markierte Feld und klickst auf „Open“. Nun sollte sich das Fenster ändern und in der Anzeige „login as:“ stehen. Der Benutzername lautet pi. Diesen bestätigst du mit Enter. Die anschließende Frage nach dem Passwort beantwortest du mit „raspberry“ und bestätigst wieder mit Enter. Beachtet jedoch, dass während der Passworteingabe die eingetippten Zeichen nicht angezeigt werden. Nun hast du Zugriff auf dein Raspberry Pi.

Schritt 3: Einrichten des Raspberry Pi

Zunächst muss die Speicherkapazität erweitert werden. Dazu gibst du in die Kommandozeile diesen Befehl ein: sudo raspi-config

Dort kannst du nun mit den Pfeiltasten zu „Advanced Options“ und weiter zu „Expand Filesystem“ navigieren und bestätigen. Sobald das erledigt ist, kannst du „Finish“ auswählen.

Nun solltest du das Raspberry Pi durch „shutdown –r –t 0“ neustarten, damit die Änderung der Speicherkonfiguration übernommen werden kann. Während des Neustarts wird Putty die Verbindung zu deinem Raspberry Pi verlieren, weshalb du nach kurzer Zeit Putty neustarten und dich erneut einloggen musst. Ist das geschehen so kannst du nun diesen Befehl ausführen: „sudo apt-get update && sudo apt-get upgrade -y“. Dieser Befehl startet einen Updateprozess, um das Pi auf den neusten Stand zu bringen. Das könnte einige Zeit in Anspruch nehmen, da hier deine Internet Geschwindigkeit eine große Rolle spielt. Anschließend startest du das Raspberry Pi erneut neu mit dem oben genannten Befehl.

Schritt 4: Pi-hole installieren

Nachdem du dich wieder auf dem Raspberry Pi eingeloggt hast, startest du den Befehl, um das Pi-hole zu installieren: „curl –sSL https://install.pi-hole.net | bash“ (Sollte der Befehl nicht funktionieren, schau einfach auf der Pi-hole Webseite, ob es einen neuen gibt (https://pi-hole.net/)).

Ist der Befehl ausgeführt, startet ein Installationsassistent. Die ersten zwei Seiten musst du nur bestätigen. Im Fenster „Upstream DNS Provider“ wählst du „Cloudflare DNS“. Anschließend musst du entscheiden, welche Adressen gefiltert werden sollen. Hier kannst du beide Optionen auswählen. Dann kommt eine Kontrollfrage, ob die Einstellungen korrekt sind. Das bestätigst du mit „Yes“. Jetzt erscheinen nochmals Hinweise darüber, dass sich die IP-Adresse des Raspberry Pi nicht ändern darf. Danach kommt die Frage, ob du das Webinterface installieren willst. Das bestätigst du mit „Yes“. Nun startet die Installation, die einige Zeit in Anspruch nehmen kann. Wichtig: Schließ deine Konsole nicht! Sobald die Installation abgeschlossen ist kannst du die IP-Adresse des Raspberry Pi in deinem Webbrowser aufrufen und dich einloggen. Dort solltest du zunächst zu „Tools“ und dem Unterpunkt „Update Lists“ gehen und den Updateprozess starten, damit die Listen auf den neusten Stand gebracht werden. Nun ist dein Pi-hole eingerichtet – aber du bist noch nicht ganz fertig.

Schritt 5: Netzwerk einrichten

Gehe nun wieder auf die Webseite deiner Fritz!Box. Öffne den Punkt „Heimnetz“ und anschießend „Heimnetzübersicht“ aus. Irgendwo auf der Seite muss es dann den Punkt „Netzwerkeinstellungen“ geben. Diesen solltest du öffnen und anschließend die Überschrift „IP-Adressen“ suchen. Unterhalb der Überschrift findest du einen Button auf welchen du klicken musst. Auf der darauffolgenden Seite findest du nun den Punkt „Lokaler DNS-Server“. Dort trägst du die IP-Adresse des Raspberry Pi ein. Für Techniker: Alternativ kann der DNS-Server per DHCP direkt bei der IP-Vergabe an das Endgerät übermittelt werden. Dadurch wäre der Weg zum DNS verkürzt und eventuell schneller.

Und das war‘s. Nun wird dein gesamter Datenverkehr über das Raspberry Pi gefiltert. Zwar bietet die Pi-hole Lösung keinen hundertprozentigen Schutz, aber einen großen Teil kann man erfolgreich blockieren.

 

Hinweis: Pi-hole® is a registered trademark of Pi-hole LLC

2 Kommentare

  1. Avatar
    Januar 04, 2019

    Hallo, vielen Dank für den tollen Beitrag. Ich habe den Pi-hole erfolgreich eingerichtet und frage mich ob es nun auch möglich ist, sich durch erweiterte Blocklisten auch Schadsoftware herunterzuladen?

    Generell besteht die Frage ob der Pi-Hole ein Sicherheitsrisiko sein kann?

    Reply

    • Avatar
      Januar 08, 2019

      Hallo Kapusta,
      es freut uns, dass du mit deinem Vorhaben erfolgreich warst! 🙂

      Du kannst neben den standardmäßig mitgelieferten Blockierlisten auch weitere hinzufügen. Dadurch vergrößert sich die Anzahl an blockierten Ad- und Tracking-Domains.
      Generell ist kein System oder Netzwerk hundertprozentig sicher, selbst mit einem Pi-hole nicht. Doch kannst du einen Großteil an mehr Sicherheit und Privatsphäre dadurch zurückerlangen.
      Dabei sollte jedoch der gesunde Menschenverstand eingeschaltet bleiben und nicht blind vertraut werden. So entsteht auch kein falsches Gefühl von Sicherheit.

      Weitere Infos und Anleitungen zu Pi-hole finden sich in deren offiziellen Dokumentation: https://docs.pi-hole.net/ (Englisch)

      Reply

Leave a comment

Sicherheitsschutz: Bitte trage die unten erfragten Ziffern in das Feld ein. *