Pi-Hole auf einer Synology NAS installieren [Erweitert]

Im Zeitraum vom 09.04.2024 - 28.03.2025 ist der Support eingeschränkt. In dem genannten Zeitraum, befinde ich mich auf einer Weiterbildung.

Warum Pi-Hole?

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 Pi-Hole der Vergangenheit angehören, denn Pi-Hole 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.


[tabmenu]

Pi-Hole Installieren (Erweitert)

Mit dieser Variante der Pi-Hole Installation, funktioniert auch der interne DHCP-Server (DSM - Synology)!

Docker Installation und Ordner erstellen

Installieren Sie im Paket-Zentrum den Container Manager. Anschließend müssen Sie in DSM - FileStation im Ordner Docker 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.

SSH aktivieren

Nachdem Sie SSH aktiviert haben, verbinden Sie sich mit Ihrer NAS. Am einfachsten via Windows Terminal (wenn Sie Windows nutzen), PuTTY oder ein anderer SSH-Client.

  • ssh <USER>@IP-Adresse

Führen Sie hier angekommen folgenden Befehl aus ifconfig. Hier erfahren Sie, auf welche Schnittstelle Sie beim Einrichten eines macvlan achten müssen.


Code
sudo docker network create -d macvlan -o parent=ovs_eth0 --subnet=192.168.1.0/24 --gateway=192.168.1.1 --ip-range=192.168.1.5/32 foxly_macvlan

Passen Sie obigen Befehl an Ihr Netzwerk an.

  • parent = Die mit ifconfig herausgefundene Schnittstelle
  • subnet = Die von Ihrem Router verwalteten IP-Adressen.
  • gateway = Die IP-Adresse des Routers
  • ip-range = Die IP-Adresse, welche der Docker Container erhalten soll. Die Subnetzmaske /32 sorgt dafür, dass nur die eingegebene IP-Adresse genutzt wird.
  • foxly_macvlan = Dieser Name kann frei definiert werden.

Einrichten des Containers

Nachdem nun das Abbild von Pihole heruntergeladen wurde, muss es eingerichtet werden. Hierfür gehen Sie zum Reiter Image im Container Manager 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

Zum Schluss müssen Sie noch das Netzwerk auswählen, hier wählen Sie das zuvor erstellte macvlan.

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 somit auch direkt starten.

Sollte das Passwort, welches in den Umgebungsvariablen definiert wurde, nicht funktionieren, kann dies recht einfach korrigiert werden. Sie müssen sich hierfür, via SSH nochmals mit Ihrer NAS verbinden. Jetzt können Sie mit diesem Befehl im Docker-Container des PiHole Befehle ausführen.

sudo docker exec -it {Containername} /bin/bash

Jetzt führen Sie noch dies aus:

pihole -a -p

Ü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