jimeh.adguardhome
Ansible Rolle: AdGuard Home
Installieren Sie den AdGuard Home Datenschutz- und Werbeblockierungs-DNS-Server mit Ansible.
Anforderungen
- Ansible >= 2.9 (kann auch mit früheren Versionen funktionieren)
Unterstützte Betriebssysteme
Getestet auf:
- Ubuntu 16.04 und 18.04
- Debian Stretch und Buster
- EL 7 und 8 abgeleitete Distributionen
Es wird wahrscheinlich auch auf anderen Debian- und RHEL-abgeleiteten Distributionen und Versionen funktionieren, die hier nicht aufgeführt sind.
Rollenvariablen
Konfigurierbare Rollenvariablen sind alle in defaults/main.yml
definiert:
# Version von AdGuard Home, die installiert werden soll (ohne "v" Präfix). Wenn auf "latest" gesetzt,
# wird die neueste Version über die GitHub-API abgerufen.
adguardhome_version: "latest"
# Wenn die gewünschte Version "latest" ist, verwenden Sie die GITHUB_TOKEN-Umgebungsvariable,
# wenn die neueste Version über die GitHub-API abgerufen wird. Wenn Sie Fehler zur
# Ratebeschränkung von der GitHub-API erhalten, aktivieren Sie dies und setzen Sie die GITHUB_TOKEN-Umgebungsvariable
# auf ein Personal Access Token mit "repo" und "user" Berechtigungen.
adguardhome_use_github_token: false
# Benutzer, unter dem AdGuard Home ausgeführt werden soll. Muss anfangs "root" sein, wenn keine
# Konfigurationsdatei auf der Festplatte vorhanden ist. Nach dem Durchlaufen des
# Einrichtungsassistenten oder dem manuellen Hinzufügen einer Konfigurationsdatei kann dies
# auf etwas anderes, wie zum Beispiel "adguard", gesetzt werden.
adguardhome_user: root
adguardhome_group: "{{ adguardhome_user }}"
# Wenn adguardhome_user auf etwas anderes als "root" gesetzt ist, bestimmt dies,
# ob der Benutzer als Systembenutzer erstellt wird oder nicht. Faustregel: Wenn der
# Benutzer von Menschen angemeldet wird, ist er wahrscheinlich kein Systembenutzer.
adguardhome_system_user: true
# Standardpfade.
adguardhome_bin_dir: "/opt/{{ adguardhome_service_name }}/bin"
adguardhome_config_dir: "/opt/{{ adguardhome_service_name }}/config"
adguardhome_config_name: AdGuardHome.yml
adguardhome_data_dir: "/opt/{{ adguardhome_service_name }}"
adguardhome_tmp_dir: /tmp
# Systemd-Dienst aktivieren und starten?
adguardhome_service_name: "adguardhome"
adguardhome_service_enable: true
adguardhome_service_start: true
# DNSStubResolver deaktivieren, wenn der systemd-resolved Dienst läuft.
adguardhome_disable_systemd_dnsstubresolver: true
Beispiel Playbook
Das folgende Beispiel installiert die neueste verfügbare Version von AdGuard Home:
- hosts: all
roles:
- { role: jimeh.adguardhome }
Wenn Sie noch keine Konfigurationsdatei hatten, wird AdGuard Home jetzt mit seinem
Einrichtungsassistenten auf Port 3000
ausgeführt. Nachdem Sie den Einrichtungsassistenten durchlaufen haben,
sollte die Admin-Oberfläche auf den Ports 80
und 443
erreichbar sein.
Nicht-root Benutzer
Sie können AdGuard Home als Nicht-Root-Benutzer ausführen, sobald Sie eine Konfigurationsdatei haben.
Ohne eine Konfigurationsdatei weigerte sich das Programm zu starten, wenn es nicht als
root
ausgeführt wird.
Wenn Sie bereits keine Konfigurationsdatei von einer anderen Installation von AdGuard Home haben, ist der beste Ansatz:
- Führen Sie die Rolle aus, wobei
adguardhome_user
aufroot
gesetzt ist. - Gehen Sie durch den Einrichtungsassistenten, der auf Port
3000
verfügbar ist. - Führen Sie die Rolle erneut aus, diesmal mit
adguardhome_user
auf einen Nicht-Root Benutzer gesetzt. Wenn der angegebene Benutzer nicht existiert, wird er erstellt.
Persönlich führe ich AdGuard Home unter einem Benutzer namens adguard
.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
Autor Informationen
ansible-galaxy install jimeh.adguardhome