Il y a aura deux parties dans ce tutoriel.
Le premier cas de figure, vous avez déjà un serveur qui tourne et vous voulez ajouter Adguard Home. Afin d'éviter des problèmes de ports 🐖 , il vaut mieux utiliser la méthode avec un MacVLAN.
Mais c'est quoi un MacVLAN? Un nouvel hamburger? Non.
MacVLAN est un module du noyau Linux. Sa fonction est de permettre la configuration de plusieurs adresses MAC sur la même carte réseau physique, c’est-à-dire plusieurs interfaces. Chaque interface peut être configurée avec sa propre IP. MacVLAN est essentiellement une technologie de virtualisation de carte réseau.
Le second cas de figure, vous voulez dédier un NUC (comme un Raspberry Pi) ou encore une VM à Adguard Home, dans ce cas vous pouvez utiliser la méthode sans MacVLAN.
Si vous avez la moindre difficulté, n'oubliez pas que vous pouvez rejoindre belginux sur Discord et Matrix!
AdGuard Home est un logiciel à l'échelle du réseau permettant de bloquer les publicités et le suivi. Une fois configuré, il couvrira TOUS vos appareils domestiques et vous n'avez besoin d'aucun logiciel côté client pour cela.
Il fonctionne comme un serveur DNS qui redirige les domaines de suivi vers un « trou noir », empêchant ainsi vos appareils de se connecter à ces serveurs. Il est basé sur le logiciel que nous utilisons pour nos serveurs DNS publics AdGuard, et les deux partagent beaucoup de code.
L'installation avec MacVLAN
Peut-être bien la partie la plus chiante quand on ne l'a jamais fait. Mais pas de panique.
Pour commencer, il va falloir identifier quelle est le nom de l'interface réseau. Tapez ceci en SSH:
ip addr
Ce qui retourne quelque chose dans le style:
Dans mon cas, le nom de l'interface réseau qui se rapporte à l'IP locale du serveur est ens18. Notez bien le nom de l'interface réseau pour plus tard, enfin le vôtre, bien entendu.
Pour créer le MacVLAN il faudra utiliser cette commande:
docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 --ip-range=192.168.1.119/32 -o parent=ens18 adguard-network
Mais il est n'est pas dit que ça fonctionne chez vous tel-quel car on a pas forcément tous le même sous-réseau ou la même IP du routeur.
On va décortiquer tout cela:
- subnet => le sous-réseau, chez moi c'est 192.168.1.1 donc je vais mettre dans subnet, 192.168.1.0.
Si chez vous c'est, par exemple, 192.168.0.1, vous indiquerez 192.168.0.0. - gateway => c'est l'IP de votre routeur, dans mon cas 192.168.1.1.
- range => c'est ici que l'on va déterminer l'IP pour se connecter à Adguard Home. Dans mon cas le serveur est sur l'IP 192.168.1.118 donc je vais choisir 192.168.1.119/32 pour Adguard Home. Donc l'IP pour se connecter à Adguard Home sera 192.168.1.119.
- parent => indiquez le nom de l'interface réseau, comme on l'a vu un peu plus haut.
Maintenant il faudra adapter la commande suivant les éléments correspondants à votre réseau. Vous collez la commande dans votre terminal:
docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 --ip-range=192.168.1.119/32 -o parent=ens18 adguard-network
Ce qui retourne:
Une fois que votre MacVLAN est créé, on va installer Adguard Home dans /srv/appdata/adguard, adaptez le chemin suivant votre configuration, copiez et collez ceci dans votre terminal:
docker run -d --name adguardhome --net adguard-network -v /srv/appdata/adguard/workdir:/opt/adguardhome/work -v /srv/appdata/adguard/conf:/opt/adguardhome/conf --restart unless-stopped adguard/adguardhome
Pour joindre la page d'installation il faudra taper l'IP choisie plus haut suivie du port 3000:
http://192.168.1.119:3000
On arrive sur la page d'installation. Si vous êtes un adepte du mode sombre, cliquez en bas sur la lune, ensuite sur C'est parti:
S'il n'y a pas de messages d'erreur, et il ne devrait pas y en avoir, cliquez sur Suivant:
Créez votre compte d'authentification, validez avec Suivant:
Vous avez ici le récapitulatif pour paramétrer vos clients ou mieux, si votre routeur le supporte. Il faudra indiquer dans tous les cas, l'adresse IP 192.xxx.x.xxx, validez avec Suivant:
C'est maintenant terminé! Cliquez sur Ouvrir le Tableau de bord. Vous allez être redirigé vers l'IP principale, sans le port 3000, qui ne servait qu'à l'installation de Adguard Home:
Yeah!
L'installation sans MacVLAN
- Créez votre docker-compose.yml:
sudo nano docker-compose.yml
- Collez ça dedans en prenant soin d'adapter le port et les volumes suivant votre configuration:
version: "3"
services:
adguardhome:
image: adguard/adguardhome
container_name: adguardhome
ports:
- 53:53/tcp
- 53:53/udp
- 784:784/udp
- 853:853/tcp
- 3000:3000/tcp
- 80:80/tcp
- 443:443/tcp
volumes:
- /srv/appdata/adguard/workdir:/opt/adguardhome/work
- /srv/appdata/adguard/confdir:/opt/adguardhome/conf
environment:
TZ: Europe/Brussels
restart: unless-stopped
Veillez à régler votre TZ suivant ou vous vous trouvez. Non, sur la chaise, ça ne compte pas.
- On installe l'application:
docker-compose up -d
ou avec docker-compose V2:
docker compose up -d
- Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local suivie du port 80:
http://ip:80/
Le reste de l'installation est identique à celui pour l'installation avec le MacVLAN.
Listes de blocage DNS
Il existe de nombreuses listes de blocages DNS dans Adguard Home, certains spécialisées pour les smartphones, d'autres contre les malwares, contre le pishing,...
Rendez-vous dans Filtres, ensuite Listes de blocage DNS:
Cliquez sur Ajouter liste de blocage:
Cliquez sur Choisissez dans la liste:
Cochez les listes de votre choix et valider avec Enregistrer:
Vous pouvez également ajouter des listes vous-même, voici une liste... de listes: