Pi-Hole auf einer Synology NAS installieren

Pihole

Der Werbeblocker auf DNS Ebene

Warum Pihole?

Diverse Webseiten im Internet finanzieren sich durch Werbung, was grundsätzlich nicht schlimm ist. Dennoch ist es möglich, dass durch zu viel Werbung die Webseite unbenutzbar wird. Auch der Sicherheitsaspekt kommt hinzu, denn in der Vergangenheit kam es des Öfteren dazu, dass Schadcode über Werbeeinblendungen verteilt wurde und somit Endgeräte infiziert wurden. Hier helfen in den meisten Fällen Browser Erweiterungen wie uBlock oder Adblocker+, doch es gibt keine effiziente Lösung auf dem Smartphone oder Tablet. Kostenlose Apps werden auch mit Werbung teils überflutet oder sind einfach an nervigen Stellen angeordnet. All das kann mit Pihole der Vergangenheit angehören, denn Pihole ist ein eigenständiger DNS-Server. Sämtliche Inhalte werden automatisch gefiltert. Das heißt, es werden nicht nur Werbung, sondern auch verseuchte Webseiten oder gar nicht jugendfreie Inhalte blockiert.

Pihole Installieren (Methode 1)

Installation des Container Managers

Mit dieser Variante der Pihole Installation, funktioniert der interne DHCP-Server (DSM – Synology) nicht mehr. Sollten Sie diesen nutzen wollen, folgen Sie diesem Tutorial: Pi-Hole auf einer Synology NAS installieren [Erweitert]

Navigieren Sie zum Paket-Zentrum und suchen Sie unter Alle Pakete die Docker Erweiterung.

Ordner erstellen

Öffnen Sie die File Station im Ordner Docker legen Sie folgende Ordner anlegen:

[tabmenu]

Pihole Image herunterladen

Öffnen Sie den eben heruntergeladenen Container Manager. Navigieren Sie zum Reiter Registrierung und suchen Sie im Suchfeld nach pihole. Mit einem Rechtsklick auf das pihole/pihole Image, kann das Abbild heruntergeladen werden. Hier sollten Sie latest auswählen.

Einrichten des Containers

Nachdem nun das Abbild von Pihole heruntergeladen wurde, muss es eingerichtet werden. Hierfür gehen Sie zum Reiter Image und tätigen einen Doppelklick auf das Pihole Image. Hier angekommen, geben Sie dem Container einen passenden Namen, z. B. pihole. Aktivieren Sie auch den automatischen Neustart und klicken Sie jetzt auf weiter.

Volume-Einstellungen

Im Einrichtungsassistenten unter Volumeneinstellungen fügen Sie die zuvor erstellten Ordner hinzu. Außerdem ergänzen Sie die Mountpoints, wie auf dem Bild ersichtlich:

[tabmenu]

Umgebungsvariablen

Im Abschnitt Umgebung ergänzen Sie die Umgebungsvariablen, wie aus der Tabelle zu entnehmen. Vergessen Sie hierbei nicht, den DNSMASQ_USER auf root zu ändern. Und bei FTLCONF_LOCAL_IPV4 die IP-Adresse Ihrer NAS einzutragen.

VariableWert
WEBPASSWORDHier ein Passwort für den Admin Login eingeben.
WEB_PORTHier geben wir den Port 8080 an.
DNSMASQ_LISTENINGlocal
DNSMASQ_USERroot
FTLCONF_LOCAL_IPV4IP-Adresse

Der Container hat jetzt alle benötigten Informationen, welche im nächsten Fenster noch einmal zusammengefasst dargestellt werden. Der Einrichtungsassistent kann jetzt mit dem Klick auf Fertig, geschlossen werden.

Der Container sollte inzwischen starten und Sie können die Weboberfläche mit Ihrer IP sowie dem vergebenen Port öffnen.

Methode 2 (Bevorzugt zu verwenden)

Pihole installieren

Installieren Sie, wie in Methode 1 erwähnt, den Container Manager. Erstellen Sie zudem wie in Methode 1 erwähnt die Ordner.

Öffnen Sie anschließend die Systemsteuerung und klicken Sie auf Aufgabenplaner.

In diesem Menü angekommen, erstellen Sie über den Button Erstellen > Geplante Aufgabe > Benutzerdefiniertes Skript eine neue Aufgabe.

Es öffnet sich ein Fenster, mit drei Tabs. Im ersten Tab (Allgemein) vergeben Sie einen eindeutigen Namen für die Aufgabe, wählen den Benutzer root aus und entfernen Sie den Haken ganz unten.

Im nächsten Tab (Zeitplan), wählen Sie das aktuelle Datum aus und das Script soll nicht wiederholt werden.

Im letzten Tab (Aufgabeneinstellung) können Sie noch Ihre E-Mail-Adresse angeben, um Ausführungsdetails per Mail zu erhalten. Unterhalb in dem Feld Befehl Ausführen, kopieren Sie folgendes in das Feld benutzerdefiniertes Script.

Mit dem Klick auf Ok schließen Sie den Dialog und erhalten folgende Warnung. Bestätigen Sie die Warnung, mit einem weiteren Klick auf Ok. Die Fehlermeldung weist hier darauf hin, dass das Ausführen von Dateien als Root-User ein Sicherheitsrisiko sein kann.

Sie sollten jetzt wieder im Aufgabenplaner sein. Hier markieren Sie die eben erstellte Aufgabe und drücken auf Ausführen.

Im Hintergrund wird jetzt der Docker Container heruntergeladen, und für Sie eingerichtet. Dies kann einige Zeit in Anspruch nehmen, je nach Internetverbindung, sowie der eingesetzten Hardware.

Zum Einloggen können Sie nun folgende Adresse aufrufen: http://IP_der_Synology_NAS:8080

Update

Ein Update des Containers ist simpel gehalten. Löschen Sie im Container Manager den Container und das Image, führen Sie das Script erneut aus. Es wird im Anschluss das aktuelle Image heruntergeladen und gestartet. Keine Sorge, da Sie die Volume eingerichtet haben, liegen alle Einstellungen gesichert auf der NAS.

Über den Autor

Ich bin IT-Spezialist im Fachbereich der IT-Administratoren. Neben Beruf und Familie, erstelle ich als, Teil meines Hobbys, gerne Tutorials, sowie WoltLab Stile. Aktuell befinde ich mich auf meinem Informationstechnikermeister.

Foxly Team

Kommentare 29

Die Anleitung ist echt Super aber bei mir läuft es leider trotzdem nicht.

Egal ob ich die Methode 1 oder die Methode 2 verwende. Das Webinterface ist einfach nicht erreichbar.


Diese Seite funktioniert im Moment nicht.

192.168.1.18 hat keine Daten gesendet.

ERR_EMPTY_RESPONSE


Zur Anmerkung, 2022 habe ich mich damit schon mal beschäftigt und damals lief piHole auch bis zu einem Update. Danach existiere das gleiche Probleme wie nun und ich habe piHole deinstalliert und auch sämtliche Ordner dazu im Docker gelöscht. Seitdem habe ich mich damit auch nicht mehr beschäftigt. Nun wollte ich es mal wieder einrichten aber leider habe ich schon wieder das gleiche Problem mit der nicht Erreichbarkeit der Seite.

Huhu!

Hat deine NAS eine statische IP? Gab es im Docker Container eine Fehlermeldung?

Ja mein NAS hat eine statische IP. Es laufen im Docker auch schon diverse andere Dinge (HomeAssistant, deCONZ, TeamSpeak 3 Server, jDownloader) und piHole lief ja auch mal. Nein der Docker Container gab keine Fehlermeldung aus, die Protokollierung ist komplett Leer geblieben. Eine E-Mail ging auch nicht raus, falls das Skript nicht richtig ausgeführt werden hätte können.

Hab nun noch weiter rumgespielt und den Port von 8080 auf 8100 geändert nun geht es. Der Port 8080 wird aber fürs nichts anders verwendet.

Immerhin läuft es jetzt :saint:. Vielleicht hat die NAS den Port mal verwendet und ihn nicht mehr freigegeben

Muss dann von der ersten piHole geh versuchen gewesen sein aber nach diversen Updates zwischen 2022 und jetzt hätte der NAS den ja mal wieder freigeben können. Ja ist wunderbar dass es wieder läuft auch wenn ich nicht verstehe dass es echt nur an den Port liegt. Hätte ja wenigsten irgend eine Meldung geben können die mich darauf hinweist aber da waren ja leider keine da.

Bin aber trotzdem froh dein Tut gefunden zu haben, denn über das Skript dass ganze zu installieren und auch später mal updaten zu können ist schon echt eine Erleichterung.

Wieso ist Methode 2 bevorzugt zu verwenden?

Weil Sie für viele einfacher ist und sich dabei weniger Fehler einschleichen können.

Hallo Mark,
auf meinem NAS läuft DHCP und DNS fürs LAN.

Ich müsste also pihole eine eigene IP-Adresse geben. Wie ist das anzustellen, kenne mich mit Docker noch nicht aus. Event. Docker auf einem virtuelle DSM laufen lassen?

Gruß Rudi

Moin, da DHCP auf Port 67 und DNS auf Port 53 läuft sollte es hier keine Probleme geben.

Grüße

Mark

Hallo Rudi, hat die Installation/Einrichten des Docker Containers geklappt? Oder benötigst du Unterstützung?

Grüße

Hallo,

ich habe deine Anleitung auch soweit befolgt. Hat auch alles geklappt. Sprich habe auch Zugriff auf die WebOberfläche von Pi-Hole. Aber es wird nicht geblockt. Die Query ist leer. Testweise habe ich in meiner Fritzbox meine dns auf die Synology IP geleitet. Bringt aber auch nichts, kannst du mir weiterhelfen?

Ja, ich schreibe hier später die Lösung. Bin grad nur Mobil unterwegs.

Führen Sie bitte einmal unter Tools --> Update Gravity durch.Sollte hier ein Fehler auftauche wie z.B. Unable to build gravity tree in [...]Führen Sie bitte in der Kommandozeile des Docker Containers pihole -g -r aus um die Gravity Database neu zu erstellen. Anschließend überprüfen Sie, ob die Listen im Groupmanagment aktiviert sind.

Hallo,

das hat leider nichts gebracht. Nach wie vor ist der query leer. Und es besteht keine Verbindung zu keinem meiner Geräte, muss sonst noch etwas ggf. in der Fritzbox verändert werden?

Ja die IP der NAS muss als lokaler DNS in der FritzBox eingetragen.

Auch bei allen Geräten muss der DNS geändert werden. Entweder über DHCP und einem neuen Lease oder manuell.

Habe ich die Frage falsch verstanden.

Kleine Anmerkung, der NAS hat nicht nur eine IPv4 Adresse sondern auch eine IPv6, entsprechend muss der DNSv4 und der DNSv6 geändert werden auf die Adressen vom NAS bei der FritzBox aber nur der Bevorzugten. Die Alternativen sollte weiterhin die von Cloudflare (1.1.1.1 / 2606:4700:4700::1111) oder Google (8.8.8.8 / 2001:4860:4860::8888) sein oder die man halt bevorzugt.

Und bei den Endgeräten (also PC, Laptops, Smartphones, etc. etc.) müsst der DNS doch nicht extra geändert werden, dort ist im Normalfall ja eh der DNS des Routers drinnen und der Router verwendet ja den DNS von piHole/NAS.

Die Installation hatte zwar geklappt, aber pihole blockte noch nicht. Durch die schnelle und kompetente Hilfe von Mark waren die Probleme schnell gelöst und nun freue ich mich über weitgehende Werbefreiheit!

Vielen Dank an Mark und das Team!!!

Danke für das Lob. Freut mich, dass jetzt alles klappt. ;)

Anscheinend gibt es Docker nicht für meine DS215..... :(

Leider bietet Synology das nur für gewisse Modelle an. Aber man könnte das umgehen How to install Docker on an unsupported Synology NAS – Tyler Woods

Super Anleitung!!!

Danke

Danke, freut mich das es funktioniert :) .

Super Anleitung, hat auf Anhieb so geklappt wie beschrieben. Top.

Eigentlich eine sehr gute Anleitung. Leider stürzt der Docker-Container pihole bei mir im Minuten-Takt ab und ich komme gar nicht auf die Oberfläche (selbst wenn pihole mal läuft). Was mache ich evtl. falsch?

Guten Tag,

leider kann ich den Fehler nicht reproduzieren. Gibt es eine Fehlermeldung? Wird Port 8080 von einem anderen Dienst genutzt?

Grüße

Das wird er tatsächlich, weshalb ich aber im Setup einen anderen Port angegeben habe.

Hallo malakai,

dann sollte eigentlich der Container auch laufen. Gibt es denn seitens des Containers eine Fehlermeldung?