Zum Hauptinhalt springen

Pi-hole unterwegs mit WireGuard nutzen

·596 Wörter·3 min
Inhaltsverzeichnis
Raspberry Pi Homelab - Dieser Artikel ist Teil einer Serie.
Teil 3: Dieser Artikel

Der eigene Pi-hole filtert Werbung und Tracker zuverlässig, aber nur zu Hause. Dieser Artikel zeigt, wie du Pi-hole auch unterwegs nutzen kannst: mit FritzBox WireGuard und automatischer VPN-Aktivierung auf iOS beim Verlassen des Heimnetzwerks.

Beispiele beziehen sich auf FritzBox (Fritz!OS 7.50+) und iOS. Andere WireGuard-fähige Router und mobile Clients funktionieren analog.

Voraussetzung: ein funktionierendes Pi-hole Setup wie in den vorherigen Artikeln der Serie beschrieben.

Übersicht
#

flowchart TD
    A["Unterwegs
(Mobilfunk / fremdes WLAN)"] --> B[iOS WireGuard App] B --> C[FritzBox WireGuard VPN] C --> D["🏠 Pi-hole"]

FritzBox WireGuard einrichten
#

Voraussetzungen
#

  • FritzBox mit Fritz!OS 7.50 oder neuer
  • MyFRITZ!-Konto für DynDNS (oder eigene Domain)
  • Zugriff auf die FritzBox-Oberfläche

VPN-Verbindung anlegen
#

  1. FritzBox-Oberfläche öffnen: http://fritz.box
  2. Internet → Freigaben → VPN (WireGuard) navigieren
  3. VPN-Verbindung hinzufügen klicken
  4. Einzelgerät verbinden auswählen
  5. Namen vergeben (z.B. iPhone)
  6. Fertigstellen klicken

Die FritzBox generiert automatisch:

  • WireGuard-Schlüsselpaar
  • Konfigurationsdatei
  • QR-Code für die mobile App

Konfiguration exportieren
#

Die generierte Konfiguration enthält bereits alle nötigen Einstellungen. Für die iOS-App kann entweder der QR-Code gescannt oder die Konfigurationsdatei exportiert werden.

Wichtig: Die Konfiguration enthält private Schlüssel; sicher aufbewahren und nicht teilen.

iOS WireGuard einrichten
#

App installieren
#

Die offizielle WireGuard App aus dem App Store installieren.

Tunnel hinzufügen
#

  1. WireGuard App öffnen
  2. Tunnel hinzufügenAus QR-Code erstellen
  3. QR-Code aus der FritzBox-Oberfläche scannen
  4. Namen vergeben (z.B. FritzBox Home)
  5. Speichern

Die DNS-Einstellungen werden automatisch von der FritzBox übernommen; Pi-hole ist dort bereits als lokaler DNS-Server eingetragen.

Auto-VPN beim Verlassen des Heimnetzwerks
#

Die WireGuard App unterstützt On-Demand-Aktivierung nativ, keine Shortcuts nötig.

On-Demand aktivieren
#

  1. WireGuard App öffnen
  2. Für den angelegten Tunnel onDemand aktivieren und antippen → Bearbeiten
  3. Nach unten scrollen zu Aktivierung auf Wunsch
  4. Mobil aktivieren
  5. WLAN aktivieren

WLAN-Ausnahmen konfigurieren
#

Unter WLANAußer für bestimmte SSIDs:

  1. SSID hinzufügen antippen
  2. Name des Heimnetzwerks eingeben (exakt wie in den WLAN-Einstellungen)
  3. Speichern

Die Logik:

  • Im Heimnetzwerk (SSID match): VPN deaktiviert, direkter Zugriff auf Pi-hole
  • In fremden WLANs: VPN aktiviert, Pi-hole über VPN
  • Mobile Daten: VPN aktiviert, Pi-hole über VPN

VPN-Verbindung prüfen
#

  1. WLAN deaktivieren (Mobile Daten nutzen)
  2. WireGuard App öffnen, Tunnel sollte automatisch aktiv sein
  3. In Safari https://pi-hole-primary.fritz.box öffnen
  4. Pi-hole Dashboard sollte erreichbar sein

Bonus: Secondary Pi-hole einrichten
#

Für Hochverfügbarkeit kann ein zweiter Pi-hole eingerichtet werden. Dank Ansible ist das nur eine Inventory-Änderung.

Inventory erweitern: hosts.yml
#

Das komplette Projekt findest du hier:

Dieses Tutorial basiert auf der Version 1.0.0 .

---
all:
  vars:
    ansible_python_interpreter: /usr/bin/python3
  children:
    podmen:
      children:
        piholes:
          hosts:
            pi-hole-primary:
              ansible_host: pi-hole-primary.fritz.box
            pi-hole-secondary:                          # NEU
              ansible_host: pi-hole-secondary.fritz.box # NEU

Host-spezifische Variablen
#

Für unterschiedliche Update-Zeiten separate host_vars anlegen:

host_vars/pi-hole-primary.yml:

---
pihole_fqdn: pi-hole-primary.fritz.box
pihole_autoupdate_time: "03:00"

host_vars/pi-hole-secondary.yml:

---
pihole_fqdn: pi-hole-secondary.fritz.box
pihole_autoupdate_time: "04:30"

Durch die zeitversetzten Updates bleibt immer mindestens ein Pi-hole verfügbar.

Playbook ausführen
#

ansible-playbook play.yml

Ansible erkennt den neuen Host und konfiguriert ihn identisch zum Primary.

FritzBox DNS-Einstellungen
#

Nun kann auch die IP-Adresse des secondary Pi-hole in der FritzBox als zusätzlicher lokaler DNS-Server eingetragen werden. Bei Ausfall des Primary nutzt die FritzBox automatisch den Secondary.

Fazit
#

Mit FritzBox WireGuard und der On-Demand-Funktion der iOS WireGuard App ist Pi-hole auch unterwegs verfügbar:

  • Automatische Aktivierung beim Verlassen des Heimnetzwerks
  • Werbung und Tracker werden auch in fremden WLANs und im Mobilfunknetz gefiltert
  • Einfaches Setup ohne zusätzliche Server oder komplizierte Konfiguration

Der optionale Secondary Pi-hole sorgt für Ausfallsicherheit, und dank Ansible ist die Einrichtung nur eine Inventory-Änderung.

Verwendete Projekte
#

  • WireGuard - schnelles, modernes VPN-Protokoll
  • Pi-hole - DNS-basierter Werbe- und Tracker-Filter
  • Ansible - Automatisierung und Configuration Management

Eigene Rollen und Playbooks
#


Hat dir das hier geholfen?
Unterstütze gerne via:

Raspberry Pi Homelab - Dieser Artikel ist Teil einer Serie.
Teil 3: Dieser Artikel