Du möchtest nervige Werbung im gesamten Heimnetzwerk blockieren, deine Privatsphäre schützen und sogar die Geschwindigkeit deiner Internetverbindung verbessern? Dann ist die Kombination aus Pi-hole und Unbound genau das Richtige für dich. In diesem Beitrag erkläre ich dir, was diese Tools können, wie du sie mit Docker ganz einfach installieren kannst und welche Vorteile dir das bringt – auch wenn du kein Technik-Profi bist.

# Was ist Pi-hole?

Pi-hole ist ein Netzwerk-weiter Werbeblocker, der auf DNS-Ebene arbeitet. Anders als Browser-Addons blockiert Pi-hole Werbung auf allen Geräten in deinem Heimnetzwerk – vom Smart-TV bis zum Smartphone, ohne dass du auf jedem Gerät extra Software installieren musst.

Was macht Pi-hole genau? Wenn du eine Webseite besuchst, fragt dein Gerät einen DNS-Server: „Wo finde ich diese Seite?“. Pi-hole fängt diese Anfragen ab und prüft sie gegen eine schwarze Liste. Anfragen an Werbeserver werden direkt blockiert, bevor sie überhaupt dein Netzwerk verlassen können.

# Was ist Unbound?

Unbound ist ein rekursiver DNS-Resolver. Normalerweise übernimmt dein Internet-Provider oder ein Dienst wie Google (8.8.8.8) die DNS-Auflösung. Mit Unbound betreibst du deinen eigenen DNS-Server und musst dich nicht auf externe Dienste verlassen.

Warum ist das wichtig? Ein externer DNS-Server kann sehen, welche Webseiten du besuchst. Mit deinem eigenen DNS-Server behältst du die Kontrolle über deine Daten und steigerst deine Privatsphäre erheblich.

# Warum Docker?

Docker vereinfacht die Installation und Wartung der Software erheblich:

  • Keine komplizierten Abhängigkeiten
  • Einfaches Aktualisieren
  • Saubere Trennung vom restlichen System
  • Problemloses Einrichten auf fast jedem Linux-System

# Vorteile der Pi-hole + Unbound Kombination

  1. Werbung blockieren auf allen Geräten im Netzwerk
  2. Mehr Privatsphäre durch eigenen DNS-Server
  3. Schnelleres Surfen durch weniger Inhalte und DNS-Caching
  4. Geringerer Datenverbrauch ohne Werbung
  5. Schutz vor Malware durch Blockieren bekannter schädlicher Domains
  6. Übersicht über dein Netzwerk durch informatives Dashboard
  7. Familienfreundlich mit der Möglichkeit, bestimmte Inhalte zu blockieren

# Voraussetzungen

  • Ein Linux-System (z.B. Debian, Ubuntu, CentOS)
  • Grundlegende Kenntnisse der Kommandozeile
  • Docker und Docker Compose (wird vom Installationsscript automatisch installiert)
  • Eine statische IP-Adresse für den Pi-hole Server

# Installation

Die Installation ist dank eines benutzerfreundlichen Scripts sehr einfach.

Schritt 1 curl installieren

sudo apt update && sudo apt install -y curl

Schritt 2 Installation ausführen

bash -c "$(curl -fsSL https://raw.githubusercontent.com/sakis-tech/docker-pihole-unbound/main/install-pihole-unbound.sh)"

Und schon wird man vom Benutzerfreundlichen Script begrüßt:

Pi-hole Install Script

# Was passiert bei der Installation?

Das Installationsscript führt folgende Schritte durch:

  1. Prüfen der Voraussetzungen (Docker, Git)
  2. Installation fehlender Software
  3. Abfragen wichtiger Parameter:
    • IP-Adresse für Pi-hole
    • Weboberflächen-Port
    • Admin-Passwort für die Weboberfläche
    • Hostname und Zeitzone
    • Design-Theme (hell oder dunkel)
  4. Netzwerkkonfiguration mit macvlan für direkte Netzwerkintegration
  5. Container starten für Pi-hole und Unbound
  6. Portainer (optional) zur einfachen Container-Verwaltung

# Wichtige Hinweise zur Konfiguration

// IP-Adresse wählen

Bei der Installation wirst du nach einer IP-Adresse für Pi-hole gefragt. WICHTIG: Diese IP-Adresse darf nicht mit der IP-Adresse deines Hosts übereinstimmen!

Beispiel: Wenn dein Server die IP 192.168.10.5 hat, könnte die Pi-hole IP 192.168.10.20 sein.

// DNS-Server im Netzwerk einrichten

Damit alle Geräte Pi-hole nutzen:

  1. Option A: DHCP-Server konfigurieren (empfohlen)
    • Trage in deinem Router (z.b. FritzBox) die Pi-hole IP als DNS-Server ein (Wie das geht, habe ich in diesem Beitrag geschrieben).
  2. Option B: Manuell pro Gerät
    • Stelle bei jedem Gerät den DNS-Server auf die Pi-hole IP um

// Zugriff auf die Weboberfläche

Nach erfolgreicher Installation kannst du auf die Weboberfläche zugreifen:

http://PI-HOLE-IP/admin

oder falls du einen anderen Port gewählt hast:

http://PI-HOLE-IP:PORT/admin

// Konfiguration deines Hosts

Eine Besonderheit bei Docker macvlan: Der Host-Computer selbst kann nicht direkt mit dem Pi-hole Container kommunizieren. Dies lässt sich aber einfach lösen:

Stelle auf deinem Host-System den Router (FritzBox) als DNS-Server ein:

sudo nano /etc/resolv.conf

Dort trägst du dann folgendes ein:

nameserver 192.168.10.1 # Trage hier die IP-Adresse deines Routers ein

Im Router stellst du dann Pi-hole als DNS-Server ein (Wie das geht, habe ich in diesem Beitrag geschrieben).

So erreichen DNS-Anfragen vom Host-System den Pi-hole Container über diesen Umweg:

HostRouterPi-holeInternet

# Mögliche Probleme und Lösungen

// Portainer Timeout

Wenn du nach dem ersten Start folgende Nachricht siehst:

New Portainer installation
Your Portainer instance timed out for security purposes. To re-enable your Portainer instance, you will need to restart Portainer.

Starte den Portainer-Container einfach neu:

docker restart portainer

// Aktualisieren von Pi-hole und Unbound

Das Update ist dank des mitgelieferten Scripts sehr einfach, dazu einfach folgenden Befehl beim Host eingeben und bestätigen:

sudo bash -c "$(curl -fsSL https://raw.githubusercontent.com/sakis-tech/docker-pihole-unbound/main/update-pihole-unbound.sh)"

Zu Beginn erklärt das Update-Skript dem Benutzer auf einfache Weise, was das Script macht.

welcome update script

// Was macht das Update-Script genau?

  1. Lädt die neuesten Container-Images herunter
  2. Startet die Container neu
  3. Testet die DNS-Auflösung
  4. Zeigt eine Versionsübersicht an

// DNS-Tests fehlgeschlagen

Wenn die DNS-Tests nicht funktionieren, installiere die dnsutils für bessere Diagnose:

sudo apt install dnsutils

Das Update-Script bietet dir auch an, dieses Paket automatisch zu installieren.

// Webzugriff funktioniert nicht

Überprüfe:

  • Ist der Port korrekt konfiguriert und nicht durch eine andere Anwendung belegt?
  • Läuft der Container? Prüfe mit docker ps | grep pihole
  • Firewall-Einstellungen erlauben den Zugriff auf den konfigurierten Port?

// DNS-Cache leeren

Da wir einen neuen DNS-Server verwenden, ist es notwendig, den DNS-Cache zu leeren. Wie das unter Windows funktioniert, habe ich in diesem Beitrag Schritt für Schritt erklärt.

# Erweiterte Anpassungen

// Eigene Blocklisten hinzufügen

In der Weboberfläche unter „Group Management“ > „Adlists“ kannst du weitere Blocklisten hinzufügen, zum Beispiel:

  • OISD – Eine umfangreiche, gut gepflegte Liste
  • Firebog – Verschiedene Listen für unterschiedliche Bedürfnisse

Fazit

Mit Pi-hole und Unbound in Docker hast du eine mächtige Kombination zur Verbesserung deiner Online-Erfahrung eingerichtet. Du blockierst lästige Werbung, schützt deine Privatsphäre durch einen eigenen DNS-Resolver und hast volle Kontrolle über die DNS-Anfragen in deinem Netzwerk.

Die Installation und Wartung wurden durch Docker und die mitgelieferten Scripts so einfach wie möglich gestaltet, sodass auch Einsteiger davon profitieren können.

Wenn du bei der Einrichtung Hilfe brauchst oder etwas unklar ist, schreib mir gern unten in die Kommentare. Ich freue mich auf dein Feedback und helfe dir gerne weiter!

signoff
0 0 Stimmen
Wie gefällt Ihnen der Artikel?
Abonnieren
Benachrichtige mich bei
0 Kommentare
Inline-Feedbacks
Alle Kommentare anzeigen