Home / Blog-Center / Tips & Tutorials /

Pi-hole auf UGREEN NAS installieren: Werbung im Heimnetz blockieren

Pi-hole auf UGREEN NAS installieren: Werbung im Heimnetz blockieren

04/08/2026

Pi-hole filtert Werbe- und Tracking-Domains auf DNS-Ebene, bevor die zugehörigen Inhalte geladen werden. Anders als ein Browser-Adblocker wirkt es nicht nur auf einem einzelnen Gerät: Alle Geräte im Heimnetz, die Pi-hole als DNS-Server verwenden, können von der Filterung profitieren, darunter Smartphones, Smart-TVs und Tablets. Einen Überblick über die Funktionsweise und die Einsatzmöglichkeiten findest du auf der offiziellen Pi-hole-Website.

Pi-hole lässt sich auf allen UGREEN-NAS-Modellen mit Docker-Unterstützung als Container betreiben. Prüfe daher vor der Installation, ob dein Modell Docker unterstützt. Das DH2300 ist davon ausgeschlossen und eignet sich nicht für diese Anleitung.

Pi-hole als Docker-Container auf einem UGREEN NAS

Kurzantwort: Pi-hole auf dem UGREEN NAS installieren

  1. NAS-IP fest vergeben. Richte im Router eine DHCP-Reservierung oder statische IP für das NAS ein. Ohne feste IP-Adresse können Router und Clients Pi-hole nach einem Netzwerkneustart nicht mehr erreichen.
  2. Compose-Datei vorbereiten. Erstelle eine docker-compose.yml mit dem offiziellen pihole/pihole-Image, Port-Mapping für DNS (53) und die Weboberfläche (z. B. 8081), Upstream-DNS-Servern, Webpasswort und Zeitzone.
  3. Container über die UGOS-Pro-Docker-App bereitstellen. Lade die Compose-Datei auf das NAS hoch und starte das Projekt.
  4. Weboberfläche öffnen. Rufe http://NAS-IP:8081/admin im Browser auf und melde dich mit dem konfigurierten Passwort an.
  5. Erst ein einzelnes Gerät testen. Setze den DNS-Server auf deinem Laptop oder Smartphone manuell auf die NAS-IP. Prüfe im Pi-hole Query Log, ob Anfragen erscheinen.
  6. Danach den Router umstellen. Trage die NAS-IP als DNS-Server in den DHCP-Einstellungen deines Routers ein. Damit verwenden alle Geräte im Netzwerk automatisch Pi-hole.

Kurzdefinitionen: DNS, DHCP und Upstream-DNS

  • DNS: Domain Name System. Wenn ein Gerät example.com aufruft, übersetzt DNS den Domainnamen in eine IP-Adresse. Pi-hole filtert auf dieser Ebene: Blockierte Domains werden nicht aufgelöst, sodass die zugehörigen Inhalte gar nicht erst laden.
  • DHCP: Dynamic Host Configuration Protocol. Weist Geräten im Netzwerk automatisch IP-Adressen und DNS-Server zu.
  • Upstream-DNS: Der DNS-Server, an den Pi-hole erlaubte Anfragen weiterleitet, z. B. Cloudflare (1.1.1.1) oder Google (8.8.8.8).
  • Blocklist: Eine Liste mit Domains, die Pi-hole blockieren soll. Pi-hole bringt eine Standardliste mit. Weitere Listen können ergänzt werden.
  • Allowlist: Domains, die Pi-hole ausdrücklich nicht blockieren soll, auch wenn sie auf einer Blocklist stehen.
  • Query Log: Das Protokoll der DNS-Anfragen. Zeigt, welche Domains angefragt, zugelassen oder blockiert wurden.

Voraussetzungen auf dem UGREEN NAS

Pi-hole läuft als Docker-Container. Die DXP-Serie und das DH4300 Plus unterstützen Docker in UGOS Pro. Das DH2300 unterstützt Docker offiziell nicht und ist für diese Installation nicht geeignet.

Port 53, Web-Port und mögliche Konflikte prüfen

Pi-hole braucht zwei Arten von Ports: DNS-Ports für die eigentliche Namensauflösung und einen Web-Port für die Administrationsoberfläche.

  • DNS-Ports: Port 53/tcp und 53/udp müssen frei sein. DNS-Clients erwarten die Namensauflösung auf Port 53.
  • Web-Port: Die Pi-hole-Weboberfläche nutzt standardmäßig Port 80 (HTTP) und optional 443 (HTTPS). Empfehlung: Mappe den Web-Port auf einen freien NAS-Port, z. B. 8081:80 für HTTP und optional 8443:443 für HTTPS.

NAS-IP, Router-Zugang und Fallback vorbereiten

  • Feste NAS-IP einrichten. Öffne die DHCP-Einstellungen deines Routers und erstelle eine Reservierung für die MAC-Adresse deines NAS.
  • Router-Zugang bereithalten. Du brauchst die Zugangsdaten für die Admin-Oberfläche deines Routers, um später die DNS-Einstellungen zu ändern.

Checkliste vor dem Start

  • Docker-App in UGOS Pro verfügbar
  • NAS-IP fest vergeben oder reserviert
  • NAS-Schlafmodus deaktiviert
  • Router-Login bekannt
  • Aktueller DNS-Wert im Router notiert
  • Port 53 auf dem NAS frei
  • Web-Port festgelegt (z. B. 8081)

Pi-hole-Ordnerstruktur und Docker-Compose-Datei anlegen

Öffne die App Dateien in UGOS Pro und erstelle im Docker-Verzeichnis einen Ordner pihole mit einem Unterordner für die Pi-hole-Konfiguration:

/volume1/docker/pihole/
├── docker-compose.yml
└── etc-pihole/
Ordner Beispielpfad Zweck
pihole /volume1/docker/pihole Projektordner mit Compose-Datei
etc-pihole /volume1/docker/pihole/etc-pihole Persistente Pi-hole-Konfiguration, Datenbank, Blocklisten und Einstellungen


Der Ordner etc-pihole sorgt dafür, dass deine Konfiguration bei Container-Updates erhalten bleibt. Ohne dieses persistente Verzeichnis können Blocklisten, Allowlists und Einstellungen verloren gehen, wenn der Container neu erstellt oder aktualisiert wird.

Pi-hole v6 benötigt für frische Installationen kein separates etc-dnsmasq.d-Verzeichnis. Dieses Verzeichnis ist nur relevant, wenn du von einer älteren Pi-hole-Version migrierst oder eigene dnsmasq-Konfigurationen verwendest.

Docker-Compose-Datei für Pi-hole vorbereiten

Erstelle auf deinem lokalen Computer eine Datei docker-compose.yml mit folgendem Inhalt:

services:
  pihole:
    image: pihole/pihole:latest
    container_name: pihole
    ports:
      - "53:53/tcp"      # DNS über TCP
      - "53:53/udp"      # DNS über UDP
      - "8081:80/tcp"    # Web-UI (HTTP)
      - "8443:443/tcp"   # Web-UI (HTTPS, optional)
    environment:
      TZ: "Europe/Berlin"
      FTLCONF_webserver_api_password: "DeinSicheresPasswort"
      FTLCONF_dns_upstreams: "1.1.1.1;8.8.8.8"
      FTLCONF_dns_listeningMode: "ALL"
    volumes:
      - ./etc-pihole:/etc/pihole
    restart: unless-stopped

Passe vor dem Upload diese Werte an:

  • FTLCONF_webserver_api_password: Ersetze DeinSicheresPasswort durch ein eigenes Passwort für die Weboberfläche.
  • FTLCONF_dns_upstreams: Die DNS-Server, an die Pi-hole nicht-blockierte Anfragen weiterleitet. 1.1.1.1 (Cloudflare) und 8.8.8.8 (Google) sind gängige Optionen. Mehrere Server werden durch Semikolon getrennt.
  • TZ: Deine Zeitzone. Für Deutschland, Österreich und die Schweiz verwendest du Europe/Berlin, Europe/Vienna beziehungsweise Europe/Zurich.

Zwei Einstellungen, die in der Datei stehen und die du in der Regel nicht ändern musst:

FTLCONF_dns_listeningMode: "ALL" wird für das standardmäßige Docker-Bridge-Netzwerk empfohlen. Damit beantwortet Pi-hole DNS-Anfragen über die veröffentlichten Ports unabhängig davon, über welches Interface sie ankommen.

Für die in dieser Anleitung beschriebene DNS-Filterung sind keine zusätzlichen Linux-Capabilities erforderlich. NET_ADMIN wird nur benötigt, wenn Pi-hole selbst als DHCP-Server eingesetzt wird. SYS_TIME ist nur nötig, wenn Pi-hole als NTP-Client die Systemzeit des Hosts setzen soll; SYS_NICE ist optional.

restart: unless-stopped startet den Container automatisch nach einem NAS-Neustart, es sei denn, du hast ihn bewusst gestoppt. Für einen DNS-Server, der das gesamte Netzwerk versorgt, ist automatischer Neustart wichtig.

Umgebungsvariablen, die mit FTLCONF_ gesetzt werden, sind in der Pi-hole-Weboberfläche schreibgeschützt. Das ist beabsichtigt: Die Compose-Datei ist die zentrale Konfigurationsquelle. Einstellungen, die nicht über FTLCONF_-Variablen definiert sind, lassen sich weiterhin über die Weboberfläche ändern.

Pi-hole über die UGOS-Pro-Docker-App installieren

Öffne in UGOS Pro die App Dateien und gehe zum Ordner „pihole“:

/volume1/docker/pihole

Lade die Datei docker-compose.yml in diesen Ordner hoch. Prüfe danach, ob die Ordnerstruktur so aussieht:

/volume1/docker/pihole/
  docker-compose.yml
  etc-pihole/

Achte darauf, dass die Datei wirklich docker-compose.yml heißt. Wenn dein Computer die Datei versehentlich als docker-compose.yml.txt speichert, kann die Docker-App sie nicht korrekt als Compose-Datei verwenden.

Projekt in der Docker-App erstellen

  1. Öffne die Docker-App in UGOS Pro.
  2. Gehe im linken Navigationsbereich zu Projekt und klicke auf Erstellen.
  3. Vergib den Projektnamen pihole.
  4. Wähle Vom lokalen Computer importieren und lade die docker-compose.yml hoch.
  5. Das System erkennt den Dienst pihole. Klicke auf Bereitstellen.

UGOS Pro lädt das Pi-hole-Image herunter und startet den Container. Der erste Start kann einen Moment dauern, weil Pi-hole die interne Datenbank, Standardlisten und Weboberfläche initialisiert.

Containerstatus und Logs prüfen

Gehe in der Docker-App zum Reiter Container und prüfe den Status des Containers pihole. Er sollte den Status „In Betrieb“ zeigen.

Wenn der Container nicht startet oder ständig neu startet, öffne die Logs. Typische Ursachen sind ein bereits belegter Port 53, ein belegter Web-Port 8081, ein falscher Pfad zu etc-pihole oder ein Tippfehler bei einer FTLCONF_-Variable.

Weboberfläche öffnen

Öffne einen Browser und rufe die Pi-hole-Administrationsoberfläche auf:

http://NAS-IP:8081/admin

Ersetze NAS-IP durch die IP-Adresse deines UGREEN NAS. Melde dich mit dem Passwort an, das du in der Compose-Datei als FTLCONF_webserver_api_password festgelegt hast.

Nach dem Login zeigt das Dashboard eine Übersicht mit Statistiken. Query Log, blockierte Anfragen und Client-Aktivität sind anfangs leer oder zeigen nur wenige interne Anfragen. Das ist korrekt: Solange kein Gerät im Netzwerk Pi-hole als DNS-Server verwendet, gibt es nichts zu protokollieren.

Netzwerk aktivieren: Erst Testgerät, dann Router

Netzwerk aktivieren: Erst Testgerät, dann Router

Nach der Installation müssen die Geräte Pi-hole als DNS-Server verwenden. Stelle deshalb nicht sofort den Router um, sondern teste zuerst mit einem einzelnen Gerät.

Erst ein einzelnes Gerät testen

Öffne die Netzwerkeinstellungen deines Laptops oder Smartphones und setze den DNS-Server manuell auf die IP-Adresse deines NAS.

  • Windows: Einstellungen → Netzwerk und Internet → Adapteroptionen → Eigenschaften von Ethernet oder WLAN → Internetprotokoll Version 4 (TCP/IPv4) → DNS-Server manuell eintragen.
  • macOS: Systemeinstellungen → Netzwerk → Ethernet oder WLAN → Details → DNS → NAS-IP als DNS-Server eintragen.
  • iOS: Einstellungen → WLAN → Info-Symbol neben dem verbundenen Netzwerk → DNS konfigurieren → Manuell → NAS-IP eintragen.
  • Android: Einstellungen → WLAN → Netzwerk bearbeiten → Erweiterte Optionen → IP-Einstellungen auf Statisch → DNS 1 auf NAS-IP setzen.

Öffne danach eine beliebige Webseite im Browser. Wenn die Seite lädt, funktioniert die DNS-Auflösung über Pi-hole. Prüfe zur Bestätigung das Query Log in der Pi-hole-Weboberfläche (http://NAS-IP:8081/admin). Dort sollten jetzt Anfragen von der IP deines Testgeräts erscheinen, einige davon als blockiert markiert.

Falls die Seite nicht lädt, prüfe drei Dinge: Ist der Pi-hole-Container im Status „In Betrieb“? Ist die NAS-IP korrekt eingetragen? Hat dein Gerät möglicherweise einen DNS-Cache, der geleert werden muss (unter Windows: ipconfig /flushdns, unter macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder)?

Router-DNS ändern

Wenn der Einzeltest funktioniert, kannst du Pi-hole für das gesamte Heimnetz aktivieren. Öffne die Admin-Oberfläche deines Routers und suche die DHCP-Einstellungen. Trage dort die NAS-IP als DNS-Server für DHCP-Clients ein.

Wo genau diese Einstellung liegt, unterscheidet sich je nach Router-Hersteller. Typische Pfade:

  • Fritz!Box: Heimnetz → Netzwerk → Netzwerkeinstellungen → IPv4-Adressen → Lokaler DNS-Server
  • TP-Link / ASUS / Netgear: DHCP-Einstellungen → Primary DNS

Nach dem Speichern verteilt der Router Pi-hole als DNS-Server an alle Geräte, die per DHCP eine IP-Adresse beziehen. Geräte übernehmen die neue DNS-Einstellung nicht sofort. Sie erhalten den neuen DNS-Server erst bei der nächsten DHCP-Lease-Erneuerung. Das passiert automatisch nach einigen Stunden, du kannst es aber beschleunigen, indem du WLAN-Geräte kurz trennst und neu verbindest oder den Router einmal neu startest.

Keinen öffentlichen DNS als parallelen Fallback eintragen

Manche Router erlauben die Eingabe eines zweiten DNS-Servers. Trage dort nicht 8.8.8.8, 1.1.1.1 oder einen anderen öffentlichen DNS ein. Der Grund: Wenn ein zweiter DNS-Server parallel zu Pi-hole eingetragen ist, können Geräte Pi-hole umgehen und Anfragen direkt an den öffentlichen DNS senden. Werbung und Tracker werden dann nicht blockiert.

Blocklisten, Allowlist und erste Tests

Pi-hole bringt eine vorinstallierte Standardblockliste mit, die gängige Werbe- und Tracking-Domains abdeckt. Für den Einstieg reicht diese Liste.

Wenn du nach der Testphase weitere Listen ergänzen willst, füge jeweils eine Liste hinzu, teste einige Tage und ergänze die nächste erst danach. So erkennst du sofort, welche Liste ein Problem verursacht.

Blockierung testen

Öffne das Pi-hole-Dashboard unter http://NAS-IP:8081/admin und gehe zum Query Log. Dort siehst du in Echtzeit, welche DNS-Anfragen eingehen, ob sie zugelassen oder blockiert werden und von welchem Gerät sie stammen.

Dashboard beobachten. Sobald du mit deinem Testgerät (oder nach der Router-Umstellung mit allen Geräten) im Netz surfst, steigen die Zähler für blockierte Anfragen auf dem Dashboard. Wenn die Zahl bei null bleibt, nutzen die Geräte Pi-hole noch nicht als DNS.

Bekannte Werbedomains testen. Öffne im Browser eine Webseite, die normalerweise Werbung anzeigt. Wenn Pi-hole korrekt arbeitet, fehlen Werbebanner oder werden durch leere Flächen ersetzt. Im Query Log tauchen die zugehörigen Werbedomains als blockiert auf.

DNS-Cache beachten. Falls eine Seite trotz Pi-hole noch Werbung zeigt, kann ein lokaler DNS-Cache die Ursache sein. Dein Gerät hat die Domain vor der Pi-hole-Umstellung aufgelöst und nutzt die zwischengespeicherte Antwort. Leere den DNS-Cache (Windows: ipconfig /flushdns, macOS: sudo dscacheutil -flushcache) oder warte einige Minuten, bis der Cache abläuft.

Falsch blockierte Domains freigeben

Wenn eine App oder Webseite nach der Pi-hole-Einrichtung nicht mehr funktioniert, prüfe zuerst das Query Log. Filtere nach dem betroffenen Gerät und suche nach blockierten Domains, die zeitlich mit dem Problem zusammenfallen.

Wenn du die verursachende Domain identifiziert hast, setze sie in Pi-hole auf die Allowlist:

  1. Öffne das Pi-hole-Dashboard und gehe zu Domains.
  2. Trage die betroffene Domain ein und wähle Allowlist.
  3. Klicke auf Add to Allowlist.

Teste danach die betroffene App oder Webseite erneut.

FAQ zu Pi-hole auf UGREEN NAS

Welchen Port braucht Pi-hole?

DNS läuft über Port 53/tcp und 53/udp. Dieser Port muss auf dem NAS frei sein und darf nicht auf einen anderen Wert geändert werden, weil alle Geräte DNS-Anfragen ausschließlich an Port 53 senden. Die Weboberfläche kann auf einen beliebigen freien Port gemappt werden, etwa 8081 für HTTP und 8443 für HTTPS.

Warum sehe ich keine Anfragen im Pi-hole Dashboard?

Dann nutzt noch kein Gerät Pi-hole als DNS-Server. Prüfe drei Dinge: Hast du den DNS-Server auf deinem Testgerät manuell auf die NAS-IP gesetzt? Hast du den Router-DNS bereits umgestellt? Falls ja, haben die Geräte den neuen DNS möglicherweise noch nicht übernommen, weil die DHCP-Lease noch nicht erneuert wurde. Verbinde ein WLAN-Gerät kurz neu oder starte den Router einmal neu.

Kann ich als zweiten DNS Google oder Cloudflare neben Pi-hole eintragen?

Technisch ja, aber dann funktioniert Pi-hole nicht zuverlässig.Wenn der Router zwei DNS-Server verteilt (z. B. Pi-hole und 8.8.8.8), entscheidet jedes Gerät selbst, welchen es nutzt. Anfragen, die an den öffentlichen DNS gehen, umgehen Pi-hole komplett. Für echte Redundanz ist ein zweiter Pi-hole auf einem separaten Gerät die saubere Lösung. Für den Notfall reicht es, den ursprünglichen DNS-Wert im Router zurückzusetzen.

Blockiert Pi-hole YouTube-Werbung?

Nicht zuverlässig. YouTube liefert Werbung zunehmend über dieselben Domains und IP-Bereiche wie reguläre Videoinhalte. Pi-hole kann diese Anfragen nicht unterscheiden, ohne gleichzeitig die Videos selbst zu blockieren. Pi-hole ist stark bei klassischen Werbedomains, Tracking-Diensten und bekannten Datensammlern. Für YouTube-Werbung im Browser bleibt ein Browser-basierter Adblocker die wirksamere Lösung.

Funktioniert Pi-hole auch für Smartphones und Smart-TVs?

Ja, wenn diese Geräte Pi-hole als DNS-Server verwenden. Bei der Router-DNS-Methode passiert das automatisch für alle Geräte, die per DHCP eine IP-Adresse vom Router beziehen. Geräte mit fest eingetragenem DNS-Server (etwa 8.8.8.8 in den Netzwerkeinstellungen) umgehen Pi-hole. Prüfe bei Geräten, die trotz Router-Umstellung nicht gefiltert werden, ob ein manueller DNS-Eintrag die Ursache ist.

Fazit

Pi-hole auf einem UGREEN NAS verwandelt dein NAS in einen netzwerkweiten Werbe- und Tracking-Filter.

Behandle Pi-hole wie einen grundlegenden Netzwerkdienst, nicht wie eine gewöhnliche App. Wenn das NAS schläft, ausgeschaltet ist oder Pi-hole nicht läuft, kann die DNS-Auflösung im Heimnetz ausfallen. Sichere deshalb docker-compose.yml und etc-pihole, dokumentiere die Router-DNS-Einstellungen und halte einen Fallback bereit, bevor du Pi-hole produktiv für das gesamte Netzwerk nutzt.

Schnellnavigation