Comment marche AdHole
Deux moteurs : un filtre DNS pour cet ordinateur et les appareils que vous réglez sur lui, et un filtre qui regarde l’intérieur des pages. L’application Android porte les deux, sur le téléphone lui-même.
- Deux filtres sur ordinateur
- Deux sur le téléphone
- Windows, Linux, Android
- Télé, console, téléphone, cet ordinateur . Service : filtre DNS · port 53 . Ensuite : résolveur chiffré
- Les navigateurs de cet ordinateur . Service : filtre des pages · port 8085 . Ensuite : le site, ou en direct
- Vous . Service : tableau de bord · port 8053 . Ensuite : rien venu d’internet
Toute la maison
Le filtre DNS, pour toute la maison.
Avant de joindre un site, chaque appareil demande son adresse. AdHole répond à ces questions pour cet ordinateur, et pour chaque appareil dont vous réglez une fois le DNS sur l’adresse de cet ordinateur, dans ses paramètres réseau. AdHole ne règle pas vos appareils à votre place.
Chaque nom reçoit l’une de quatre réponses
- Un domaine de pub ou de pistage reçoit une adresse nulle : l’appareil ne trouve pas le serveur et abandonne aussitôt.
- Un nom qui n’existe que chez vous, comme l’interface de la box ou une imprimante, part vers la box. AdHole trouve tout seul l’adresse de votre box.
- Le DNS chiffré automatique de Firefox est désactivé : il contournerait sinon le filtre.
- Tout le reste part chez Cloudflare, en liaison chiffrée, avec Quad9 en secours. Tant qu’ils répondent à temps, votre fournisseur d’accès ne voit pas les noms des sites que vous ouvrez ; Cloudflare, lui, les voit. Vous pouvez changer de résolveur.
Les listes : AdHole s’appuie sur des listes publiques reconnues (AdGuard, HaGeZi), téléchargées là où leurs auteurs les publient et rafraîchies une fois par jour. Chaque liste se coupe d’un clic, et une ligne dans le tableau de bord bloque ou autorise un site.
AdHole ne répond qu’aux appareils de votre réseau local : il ne devient jamais un résolveur ouvert sur internet.
Les appareils réglés sur cet ordinateur perdent internet quand il est éteint ou en veille. Sous Windows, son réseau doit être classé « privé » pour qu’ils puissent le joindre.
Quand les résolveurs chiffrés tombent en panne, ou tardent plus de trois secondes, AdHole pose vos questions en clair, le temps que ça dure : à Cloudflare, dernier résolveur de la liste par défaut, puis à votre box s’il se tait aussi : votre fournisseur d’accès revoit alors ces noms. C’est un pis-aller assumé, parce qu’un nom résolu en clair vaut mieux qu’un ordinateur sans internet. Le filtrage ne s’arrête pas pour autant, et AdHole revient au chiffré dès qu’un résolveur répond.
Cet ordinateur
Le filtre des pages, pour les navigateurs de cet ordinateur.
Sur l’ordinateur où il est installé, AdHole va plus loin : vos navigateurs passent par lui, il peut donc regarder l’intérieur des pages. Il bloque les requêtes publicitaires dans les pages, masque les emplacements de pub, obtient pour le lecteur YouTube une réponse sans publicité, et clique « tout refuser » sur les bandeaux de cookies qui le proposent.
Les navigateurs le trouvent grâce à un petit script de configuration : si AdHole ne répond pas, ils vont en direct.
Il marche tel quel dans Chrome, Edge et Brave. Firefox demande un réglage. Sous Windows, le filtrage des pages et de YouTube s’applique au compte avec lequel AdHole a été installé ; le filtre DNS, lui, vaut pour tout l’ordinateur.
Il peut se tromper de bouton : sur quelques sites, il clique « Accepter », ou un refus qui mène à une page de paiement. Les fenêtres qui exigent votre accord sans proposer de refus gratuit ne sont retirées que si vous l’activez dans les réglages. Les contenus réservés aux abonnés ne sont jamais débloqués.
Sur Android
Les deux filtres, portés par le téléphone.
Sur un téléphone ou un boîtier Android, le filtre DNS tourne dans une application, sur l’appareil. Mêmes trois listes et mêmes résolveurs que sur ordinateur, lues à travers un index tenu pour la mémoire d’un téléphone et comparé au moteur de l’ordinateur sur 5 000 noms — mais rien à régler sur le réseau, et aucun ordinateur à laisser allumé.
Pour recevoir les demandes du système, l’application se déclare auprès d’Android comme VPN local. Tout le trafic du téléphone passe désormais par elle, sur l’appareil : le tunnel ne mène toujours nulle part hors du téléphone, aucun serveur de l’éditeur ne se trouve derrière, votre adresse IP n’est pas masquée, et aucun de vos flux ne passe par l’éditeur.
Le filtre des pages y tourne aussi, pour les seuls navigateurs. L’application fabrique un certificat racine sur le téléphone ; vous l’installez vous-même dans les réglages d’Android, puis vous activez le nettoyage, pour les navigateurs que vous laissez cochés. Elle masque alors les emplacements de pub, retire les pubs vidéo de YouTube et refuse les bandeaux de cookies, avec le même moteur que sur ordinateur et des listes choisies pour le téléphone. Tant que le certificat n’est pas installé, rien n’est ouvert et aucun navigateur n’affiche jamais d’erreur de certificat.
Là où cela s’arrête : Android n’autorise pas une application à lire le trafic chiffré d’une autre, donc rien n’est touché à l’intérieur d’une appli qui n’est pas un navigateur. Firefox demande un réglage de plus. Les navigateurs sont tenus à l’écart de HTTP/3 pendant le nettoyage des pages, et une page peut donc se charger un peu différemment. Le nettoyage des pages demande Android 10, le filtre par nom Android 8.0. Et désinstaller l’application laisse le certificat dans le magasin d’Android : vous le retirez à la main.
Certificat
Le certificat racine, et les sites laissés chiffrés.
Pour lire une page en HTTPS, AdHole a besoin d’un certificat auquel vos navigateurs font confiance. Il le fabrique sur votre ordinateur à l’installation, et l’application Android en fabrique un sur le téléphone, que vous installez vous-même. Sa clé privée ne quitte jamais l’appareil qui l’a fabriquée, et sur un ordinateur seuls les administrateurs peuvent la lire : l’éditeur n’en a aucune copie.
Le risque existe : quelqu’un qui copierait cette clé pourrait lire votre trafic. Ne copiez donc jamais le dossier « ca » des données d’AdHole. Sur un ordinateur, la désinstallation retire le certificat ; sur Android, il reste dans le magasin du système tant que vous ne l’enlevez pas à la main, dans les paramètres de sécurité d’Android, sous Chiffrement et identifiants → Identifiants de l’utilisateur (les intitulés varient selon les marques).
AdHole ne regarde jamais à l’intérieur de certains sites : paiement, principales banques et assurances françaises, impôts, Ameli, Doctolib, messageries chiffrées, magasins de jeux. Cette liste n’est pas complète. Ajoutez-y votre banque, votre mutuelle ou votre employeur dans les réglages, avant votre prochaine connexion sensible.
Sous Linux, sudo ./adhole setup -no-proxy n’installe que le filtre DNS, sans certificat : les pages et YouTube ne sont alors pas filtrés, jusqu’à la mise à jour suivante, qui installe le certificat. Sous Windows, l’installateur pose toujours le certificat ; vous pouvez couper ensuite le filtre des pages.
YouTube
Pourquoi YouTube ne se nettoie que dans le navigateur.
Les pubs de YouTube viennent des mêmes serveurs que ses vidéos. Rien, sur le réseau, ne permet de les distinguer : un filtre DNS, celui d’AdHole comme un autre, les laisse passer.
Dans le navigateur, le lecteur demande à YouTube quoi jouer. AdHole modifie cette demande pour que la réponse ne programme aucune publicité, et retire les pubs des listes de vidéos : dans les navigateurs de cet ordinateur, et dans ceux d’un téléphone Android dont le certificat est installé, les vidéos démarrent sans publicité. Il évite aussi, en général, l’écran d’attente que YouTube impose quand il ne peut pas jouer de pub.
Sur la télé, la console ou l’application YouTube du téléphone, AdHole ne retire pas les pubs YouTube.
Google teste l’insertion des pubs dans la vidéo elle-même. Si elle se généralise, plus aucun bloqueur ne pourra les retirer de cette façon, AdHole compris.
S’il s’arrête
Si AdHole s’arrête, internet continue sur cet ordinateur.
- Les pages web : vos navigateurs passent par AdHole, et vont en direct s’il ne répond pas. Plantage, redémarrage, mise à jour, arrêt : les pages s’ouvrent toujours, simplement sans filtrage le temps de l’absence.
- Les noms de sites : votre box reste inscrite derrière AdHole. S’il ne répond plus, c’est elle qui répond ; et si AdHole ne peut plus répondre, il rend lui-même le DNS à la box avant de s’arrêter.
- Le service redémarre tout seul : au bout de 1 s sous Windows, 5 s sous Linux.
Ce qui peut quand même se produire : un téléchargement ou un appel vidéo en cours au moment d’un plantage est coupé, et repart quand vous le relancez. Pendant une mise à jour, le filtrage s’interrompt le temps de l’installation (les conditions d’utilisation prévoient une trentaine de secondes).
Mises à jour
Il se met à jour tout seul, la nuit.
L’installation se fait entre 3 h et 5 h, à l’heure locale. Si l’ordinateur est éteint à ces heures, une mise à jour qui attend depuis plus de sept jours s’installe au premier moment possible.
Une mise à jour n’est installée que si elle vient d’une adresse HTTPS et que son empreinte SHA-256 correspond exactement à celle annoncée. Sinon, rien n’est installé.
Une mise à jour accompagnée de nouvelles conditions d’utilisation ne s’installe pas toute seule : le tableau de bord affiche « Lire les nouvelles conditions d’utilisation » et « Accepter les nouvelles conditions et installer ». Tant que vous n’avez pas accepté, votre version continue de fonctionner. Vous préférez décider à chaque fois ? Coupez l’installation automatique : AdHole se contentera de vous prévenir.
Vie privée
Ce qui reste sur votre ordinateur.
Tout ce qu’AdHole voit de votre navigation est traité sur votre ordinateur, en mémoire. Le tableau de bord garde les 1 000 dernières requêtes ; elles disparaissent quand le service s’arrête. Aucun historique de navigation n’est écrit sur le disque : seul le journal technique peut y noter un nom de domaine, en cas d’erreur.
Rien de votre navigation n’est envoyé à l’éditeur. Une statistique anonyme part à chaque démarrage puis une fois par jour, avec la vérification de version : un numéro tiré au hasard et changé chaque mois, la version, le système, et le nombre de requêtes bloquées depuis l’envoi précédent — un simple nombre, sans nom de domaine ni date, qui alimente le total affiché sur ce site. Elle est active par défaut ; l’interrupteur « Statistiques anonymes » la coupe et efface le numéro.