AdGuard Home + Unbound in einer VM

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

In meinen Docker Anleitungen habe ich bereits ausführlich erklärt, was AdGuard Home und Pi-hole ist, sowie was diese in unserem Netzwerk machen. Eine weitere Möglichkeit, diese zu nutzen, ist in einer virtuellen Maschine (VM). Bei der Nutzung von Pi-hole und AdGuard in einer VM gibt es einige Vorteile, die über Docker Container nicht so leicht umzusetzen sind.

In diesem Tutorial beschäftige ich mich diesmal mit AdGuard Home, welches in einer virtuellen Debian 11 Installation läuft. Des Weiteren kommt ein eigener rekursiver DNS-Server (hier Unbound) zum Einsatz.

Was ist Unbound

Unbound ist ein validierender, rekursiver, zwischenspeichernder DNS-Revolver. Er ist auf Schnelligkeit und Schlankheit ausgelegt und enthält moderne, auf offenen Standards basierende Funktionen. Ende 2019 wurde Unbound einer strengen Prüfung unterzogen, was bedeutet, dass die Codebasis stabiler denn je ist.

Voraussetzungen:
- Eingerichteter Virtual Machine Manager (VMM)

Einrichtung einer Debian 11 VM

Die Einrichtung einer virtuellen Maschine im Synology VMM gestaltet sich genauso simpel wie in jedem anderen Virtualisierungsprogramm. Damit dieses Tutorial allerdings nicht zu lang wird, habe ich hierfür ein Video erstellt, wie eine VM eingerichtet wird. Auch die Grundeinstellungen unter Debian, dies beinhaltet eine statische Netzwerkeinstellung sowie die Erreichbarkeit via SSH unter Port 22. Eine explizite Härtung des Systems nehme ich hier nicht vor.

Externer Inhalt youtu.be
Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

Die Gasterweiterung sollte in jedem Fall noch installiert werden!

Installation AdGuard Home & Unbound

AdGuard Home

Die Installation ohne Docker ist fast genauso schnell wie mit. Auf GitHub befindet sich das AdGuard Repository. Darin findet sich in der Dokumentation ein automatisiertes Script zur Installation. Dieses muss lediglich ausgeführt werden um AdGuard Home zu installieren.

Code: install.sh
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v

Nach der Installation kann wie gewohnt die Oberfläche unter <IP-Adresse>:3000 aufgerufen werden. Hier angekommen, erfolgt die Ersteinrichtung von AdGuard. Wählen Sie also ein Netzwerk Interface aus und erstellen Sie Ihr Administratorkonto. Nun sollten Sie auch schon in der regulären Arbeitsoberfläche des AdGuard sein. Sollte hier ein Update verfügbar sein, können Sie dieses starten.

Konfiguration/Einrichtung

Damit AdGuard auch Ihren eigenen DNS-Server (Unbound) nutzt, müssen Sie unter Einstellungen > DNS-Einstellungen > Upstream-DNS-Server folgendes eingetragen werden:

Code
127.0.0.1:5335

Wenn Sie eine Namensauflösung der verbundenen Clients bevorzugen, müssen Sie unter Private inverse DNS-Server, Ihre IP-Adresse des DHCP-Servers angeben.

Sie sollten auch den Begrenzungswert unter DNS-Serverkonfiguration auf 0 setzen oder an einen angepassten Wert nach Ihrem Nutzungsverhalten.

Sämtliche weiteren Einstellungen können Sie frei nach Ihrem Belieben wählen.

Unbound

Auch Unbound ist kein Hexenwerk zu installieren und konfigurieren. Führen Sie folgende Befehle aus.

Code
sudo apt install unbound

Damit die root DNS-Server auch auf den aktuellsten Stand sind, laden Sie diese bitte herunter.

Code
wget https://www.internic.net/domain/named.root -qO- | sudo tee /var/lib/unbound/root.hints

Jetzt erstellen Sie mit folgendem Befehl eine Datei unter /etc/unbound/unbound.conf.d/ und füllen Sie mit unten angegeben Inhalt. Lassen Sie sich bitte nicht beirren, folgende Config ist aus der Pi-hole Dokumentation. Sie funktioniert sowohl mit Pi-hole als auch mit AdGuard Home. Des Weiteren ist die Konfigurationsdatei für Unbound so, wie sie ist, gut und kann eins zu eins übernommen werden.

Code
nano /etc/unbound/unbound.conf.d/pi-hole.conf

Nachdem Sie die Konfigurationsdatei erstellt haben, muss Unbound neu gestartet werden, damit die Änderungen in Kraft treten.

Code
sudo service unbound restart

Testen Sie Ihren lokalen DNS-Server.

Code
dig foxly.de @127.0.0.1 -p 5335

Die erste Anfrage über den eigenen DNS-Server dauert eine Weile, da die Root-DNS-Server abgefragt werden, im Anschluss legt Unbound die Abfrage/Antwort in den Cache und die Seiten werden blitzschnell angezeigt.

Test

Auf der Seite canyoublockit.com können Sie testen, ob alles funktioniert.

Troubleshooting

Sollten Sie beim Absenden einiger Befehle auf einen Fehler stoßen, ist i. d. R. das Paket lokal nicht vorhanden, welches hierfür benutzt wird. Dies können Sie unkompliziert beheben.

Code
apt update && apt upgrade -y && apt install curl wget sudo net-tools nano -y
Quellen:

Ü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