jimeh.adguardhome
Rôle Ansible : AdGuard Home
Installez le serveur DNS AdGuard Home pour la protection de la vie privée et le blocage des publicités avec Ansible.
Exigences
- Ansible >= 2.9 (peut fonctionner sur des versions précédentes)
Systèmes d'exploitation pris en charge
Testé sur :
- Ubuntu 16.04 et 18.04
- Debian stretch et buster
- Distributions dérivées de EL 7 et 8
Cela fonctionnera probablement sur d'autres distributions dérivées de Debian et RHEL non mentionnées ci-dessus.
Variables du rôle
Les variables configurables du rôle sont toutes définies dans defaults/main.yml
:
# Version d'AdGuard Home à installer (sans le préfixe "v"). Si défini sur "latest",
# rechercher la dernière version via l'API GitHub.
adguardhome_version: "latest"
# Lorsque la version désirée est "latest", utilisez la variable d'environnement GITHUB_TOKEN
# lors de la recherche de la dernière version via l'API GitHub. Si vous obtenez des erreurs
# de limite de taux de l'API GitHub, activez cette option et définissez la variable
# d'environnement GITHUB_TOKEN sur un jeton d'accès personnel avec les autorisations
# "repo" et "user".
adguardhome_use_github_token: false
# Utilisateur sous lequel faire tourner AdGuard Home. Doit initialement être "root"
# si aucun fichier de configuration n'est présent sur le disque. Après avoir
# passé l'assistant de configuration ou ajouté manuellement un fichier de configuration,
# cela peut être changé pour autre chose, comme "adguard" par exemple.
adguardhome_user: root
adguardhome_group: "{{ adguardhome_user }}"
# En définissant adguardhome_user sur autre chose que "root", cela détermine
# si l'utilisateur sera créé en tant qu'utilisateur système ou non. La règle générale
# est que si l'utilisateur est connecté par des humains, ce n'est probablement pas
# un utilisateur système.
adguardhome_system_user: true
# Chemins par défaut.
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
# Activer et démarrer l'unité de service systemd ?
adguardhome_service_name: "adguardhome"
adguardhome_service_enable: true
adguardhome_service_start: true
# Désactiver DNSStubResolver si le service systemd-resolved est en cours d'exécution.
adguardhome_disable_systemd_dnsstubresolver: true
Exemple de Playbook
L'exemple suivant installera la dernière version disponible d'AdGuard Home :
- hosts: all
roles:
- { role: jimeh.adguardhome }
Si vous n'avez pas déjà un fichier de configuration en place, AdGuard Home sera maintenant
en cours d'exécution avec son assistant de configuration sur le port 3000
. Une fois que vous avez
terminé l'assistant de configuration, l'interface d'administration devrait être accessible sur
les ports 80
et 443
.
Utilisateur non-root
Vous pouvez exécuter AdGuard Home sous un utilisateur non-root une fois que vous avez
un fichier de configuration en place. Sans un fichier de configuration, il refusera
simplement de démarrer si ce n'est pas exécuté en tant que root
.
Si vous n'avez pas déjà de fichier de configuration d'une autre installation d'AdGuard Home, la meilleure approche est :
- Exécutez le rôle avec
adguardhome_user
défini surroot
. - Passez par l'assistant de configuration disponible sur le port
3000
. - Exécutez à nouveau le rôle, cette fois en définissant
adguardhome_user
sur un utilisateur non-root. Si l'utilisateur spécifié n'existe pas, il sera créé.
Personnellement, j'exécute AdGuard Home sous un utilisateur appelé adguard
.
Licence
Ce projet est sous licence MIT.
Informations sur l'auteur
ansible-galaxy install jimeh.adguardhome