pi-hole ist eine Serveranwendung, die als DNS-Filter unerwünschte Anfragen an Webserver ausfiltert und alle anderen Anfragen vor mithören schützt. pi-hole läuft auch sehr zuverlässig als Appliance auf dem Raspberry Pi.

Fast jede Information, die man sich aus dem Internet holt und jeder Kontakt dorthin wird über eine IP-Adresse gesteuert. Diese Adresse besteht aus einer 32-stelligen (IPv4) oder 128-stelligen (IPv6) Binärzahl. Jedoch wird diese Binärzahl – wie jeder weiß – über Namenslisten in alphanumärische Adressen übersetzt. Aus 134.119.24.29 wird dann z.B. wikipedia.de. Dieser Dienst heißt DNS (Domain Name System).

Woher kommen die Namen der Webseiten

DNS-Server gibt es zahllose im Internet. Theoretisch kann jeder Rechner – auch der lokale Arbeitsplatzrechner so einen DNS-Dienst vorhalten – und tut es für seine lokalen Zwecke auch. Da dies aber chaotisch und fehleranfällig ist, hat sich ein System von DNS-Servern herausgebildet, das streng hirarchisch organisiert ist und sich die Arbeit der Namensverteilung teilt. Wozu aber dieser Aufwand? Theoretisch ließe sich auf die Namensverwaltung verzichten, so brauchte man nur die IP-Adresse zu übersenden und alle Rechner im Internet wüssten, was sie zu tun hätten.
Als Argument wird immer wieder genannt, dass die Namensvergabe uns Menschen das Aufrufen einer Webseite vereinfachen würde. wikipedia.de läßt sich nunmal einfacher merken als 134.119.24.29.

Das ist aber nur die halbe Wahrheit. Da Webseiten mittlerweile oft nicht nur auf einem Server gelagert, sondern über viele Server hinweg gecached werden, ist es eine einfache Lösung, die Namensadresse “domain.tld” dynamisch auf den nächsten oder wenig belasteten Server umzulenken. Das geht, wenn man nur die IP-Adresse hat, wesentlich schwerer.

So oder so – bei jeder Informationsabfrage sendet der lokale Rechner als erstes eine IP-Abfrage an den nächsten Nameserver. Und genau da beginnt ein Datenschutz-Problem – und gleichzeitig eine Chance, viele Tracking-Probleme zu umgehen.

Wie aber da? Nun, zuerst einmal besteht das Problem, dass der jeweilige Nameserver über jede Webseitenanfrage informiert wird. Er ist also bestens informiert über den kompletten Datenverkehr des jeweiligen Geräts – und damit auch des Benutzers. Gar nicht selten ist der DNS-Server des eigenen Providers im Router oder jener von Google in den Smartphones voreingestellt.

Zweitens sind alle Anfragen unverschlüsselt. Interessierte Dritte – nennen wir sie einmal um unser Wohl besorgte Instanzen – können diese Anfragen unschwer an zentralen Knotenpunkten herausfiltern und -protokollieren. Versuche, diese Anfragen zu verschlüsseln, stecken immernoch in den Kinderschuhen.

Dieses alles kann man mit einem eigenen DNS-Dienst lenken und kontrollieren. Überdies können an dieser Stelle elegant und einfach die unmengen Trackingabrufe gefiltert und umgelenkt werden. Dazu bedient sie sich Filterlisten.

Genau das macht pi-hole, eine Kombination aus dem Dienst dnsmasq, dhcp-Server und einer schicken Weboberfläche mit vielen Übersichten.

Installation und Einrichtung

pi-hole ist eigentlich schnell eingerichtet – wenn man über ein paar kleine Grundlagen verfügt. Gehen wir davon aus, wir richten den Dienst als Appliance auf einem Raspberry Pi ein. Dann sollte ein solcher zur Verfügung stehen. Es darf auch gerne ein älteres Modell sein, denn pi-hole läuft auch prima auf einem Modell 2 oder 3. Entsprechend muss eine SD-Karte mit einem Raspian oder Debian-OS bespielt bereit liegen. Und das heißt: Linux muss es schon sein.

Aber keine Angst, wir absolvieren dafür kein Informatik-Studium. Die notwendigen Handgriffe reduzieren sich auf wenige Befehle. Wenn der Raspberry Pi läuft und erreichbar ist, geben wir ihm eine feste IP-Adresse im Heimnetz. Dazu wird in die Datei /etc/network/interfaces folgender Block eingetragen:

auto eth0
iface eth0 inet static
adress 192.168.178.10 # Gehen wir davon aus, das Heinnetz ist – wie an einer Fritzbox – im Subnetz 192.168.178.0 angesiedelt
netmask 255.255.255.0
gateway 192.168.178.1 # Die Adresse des Router zum Internet
dns-nameservers 192.168.178.1

Installation der Programmdateien

pi-hole wird über ein Script installiert. Dieses und alle notwendigen Dateien holt man sich mit einem Befehl frisch aus dem Internet. Dieser lautet:

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

oder:

wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh

Das ist eigentlich schon alles. Das Script basic-install.sh lädt alle benötigten Komponenten wie dem lighttpd-Webserver, den dnsnmasq und die verschiedenen Scripte für pi-hole aus dem Internet herunter und konfiguriert sie.

Damit ist pi-hole einsatzbereit. Damit es seine ganze Wirkung entfalten kann, muss jedem Gerät der DNS-Server unter der IP-Adresse des Raspberry Pi, also zum Beispiel 192.168.178.10, zugewiesen werden. Und wo? Am einfachsten ist das, wenn Sie in ihrem Router beim DHCP-Server den DNS-Dienst auf diese Adresse verweisen.

Wollen Sie den Filter nur für bestimmte Rechner (oder mobile device) einschalten, so gibt es auch die Möglichkeit, den Aufruf im Gerät in den LAN oder WLAN Einstellungen zu ändern.

Bei Android-Geräten ist das etwas versteckt im jeweiligen WLAN-Netzwerk zu erreichen, indem man von DHCP auf manuelle Einstellungen umschaltet. Dort werden Sie auch feststellen, dass Googles DNS-Server als Grundeinstellung vorgegeben sind. Ein Schelm, wer dabei Böses denkt.

Übersicht verschaffen

pi-hole steuert die DNS-Anfragen und filtert zukünftig alle Anfragen aus, die zum Beispiel auf Trackingserver verweisen. Damit dies auch funktioniert, nutzt es Regeln und Filterlisten. Diese und vieles mehr stellen Sie in einer übersichtlichen Weboberfläche ein, die über http://pi.hole/ (übrigends nicht verschlüsselt !) ereichbar ist. Dort sieht man auch umfangreiche Statistiken, die zeigen, wieviele Anfragen verhindert werden können bei ganz durchschnittlichen Webseitenbesuchen.

Fazit

pi-hole ist das Schweizer Messer für die Abwehr von Tracking und Spionage. Es ist einfach zu installieren und einzustellen, leistet aber umfangreiche Arbeit. Die Software ist Open Source und gratis zu verwenden, jedoch freuen sich die Entwickler immer über eine kleine Donation.

 

  • pro: sicherer Trackingfilter, unmfangreicher Schutz, übersichtlich,
  • contra: ein bisschen kompliziert zu installieren, Netzwerk-Kenntnisse von Vorteil

 

Links: