Blog de benji1000

Bloquer les publicités avec un DNS alternatif

Le 27 février 2025 dans Informatique

43%, c'est le volume de requêtes DNS bloquées depuis que je suis passé par NextDNS en tant que fournisseur de DNS depuis 2 semaines... essentiellement des requêtes publicitaires et de suivi :

Si vous aussi, vous en avez marre des publicités sur vos écrans, du suivi publicitaire et comportemental, et du blocage intempestif de vos sites favoris, lisez cet article !

Qu'est-ce que le DNS ?

DNS est l'acronyme de Domain Name System, signifiant "système de résolution de noms". C'est le mécanisme qui permet à tous nos systèmes informatiques de traduire un nom de domaine, par exemple benji1000.net, vers son adresse IP, par exemple 37.187.6.3. Nos ordinateurs, smartphones, téléviseurs connectés et autres ont en effet besoin de l'adresse IP du serveur qui héberge un site Internet pour vous permettre de naviguer sur ce dernier, de la même manière que vous avez besoin de savoir que votre ami Paul Dupont habite 10 rue des Prés à Chouetteville pour lui rendre visite, car la seule connaissance de son nom ne vous permettra pas de vous rendre chez lui.

Le schéma ci-dessous issu du site hosteur.uk permet de visualiser le fonctionnement de ce système.

Quel est le lien avec la publicité en ligne ?

Aujourd'hui, quand nous utilisons nos équipements informatiques, de nombreuses publicités s'affichent pour nous proposer moult services commerciaux, voire moult arnaques. Pire : les sites Internet et applications que nous utilisons communiquent avec des régies publicitaires et autres "courtiers de données", qui s'échangent nos données personnelles pour comprendre nos goûts, nos envies, nos tendances politiques, sexuelles, religieuses... et nous afficher de la publicité, manipulant notre comportement voire notre démocratie au passage.

Les plus avertis d'entre nous utilisent déjà des mécanismes permettant de bloquer la communication vers ces régies publicitaires et courtiers de données sous forme d'extensions de navigateurs. La plus efficace, intègre et connue est à mon avis uBlock Origin. C'est la solution que j'utilisais jusqu'à ce début de mois.

Ça fonctionne bien, mais il y a un problème : ces extensions de navigateurs ne fonctionnent... que dans un navigateur. Sur mobile, les applications continueront d'envoyer nos données personnelles et d'utilisation à toutes ces sociétés qui ne nous veulent pas du bien, et nous afficher des publicités.

En outre, la justice d'un pays peut ordonner le blocage de certains sites. Ce blocage s'opère en demandant aux Fournisseurs d'Accès à Internet, voire plus récemment, à des fournisseurs de DNS mondiaux, de configurer leurs systèmes DNS pour "mentir" à nos équipements informatiques. Quand notre ordinateur tentera d'obtenir l'adresse IP de site-interdit.fr, le système DNS lui répondra qu'il n'y a aucune adresse IP associée, empêchant d'accéder au site.

Quelle est la solution ?

Une solution à ces deux problèmes est d'utiliser un service DNS qui permet de bloquer des listes de domaines malveillants, tout en ne bloquant pas l'accès aux sites que nous souhaitons consulter. L'un de ces services que j'ai choisi d'utiliser et dont je vais vous présenter le fonctionnement aujourd'hui est NextDNS.

NextDNS est une société américaine fondée par deux Français, qui fournit un service gratuit en-dessous d'un certain volume de requêtes DNS. Ce volume gratuit est largement suffisant pour deux smartphones et un ordinateur ayant chacun une utilisation assez significative d'Internet.

J'ai choisi cette solution :

  • du fait qu'elle soit utilisée par Mozilla, l'éditeur de Firefox, pour son système de résolution DNS,
  • du fait des possibilités de paramétrage et de journalisation qu'elle offre,
  • du fait de sa politique de confidentialité à priori respectueuse de ses utilisateurs,
  • du fait qu'elle ne soit pas contrainte de bloquer des domaines par la justice française,
  • des bons retours que j'en ai eu et lu,
  • et du fait qu'elle soit gratuite.

Comment ça se met en place ?

Deux étapes principales :

En cliquant sur le lien ci-dessus, on arrive vers une page nous informant que le compte est temporaire.

En descendant un peu sur la page, on tombe sur le cadre Guide d'installation qui nous donne les étapes pas-à-pas pour l'installer sur nos appareils, quel que soit le système d'utilisation, ou presque. Le système n'est en effet pas disponible sur les versions anciennes de Windows, macOS, iOS ou Android. Pour faire court, l'appareil sur lequel on souhaite l'utiliser doit supporter le mécanisme DNS-over-TLS ou DNS-over-HTTPS.

Comment ça se configure ?

Dans la configuration par défaut, le système ne bloque presque rien. Pour configurer les blocages, il faut se rendre sur les onglets Sécurité, Configuration, ou Contrôle parental, et activer les blocages suivant votre besoin. Je vais vous expliquer la configuration que j'ai faite dans chacun de ces onglets, en me basant sur cet article de yokoffing. L'interface est très propre et claire, ce sera rapide et pas très compliqué !

Onglet Sécurité

Là c'est très simple, j'ai coché toutes les cases, hormis la Détection des menaces basée sur l'IA (j'essaie d'utiliser l'IA le moins possible pour différentes raisons), mais libre à vous de l'activer si vous le souhaitez.

Onglet Confidentialité

Suivant les recommandations de yokoffing, j'utilise uniquement les listes OISD et HaGeZi PRO++. Cette dernière est un système de listes de blocage très puissant en plusieurs niveaux (Normal, Pro, Pro++...), je vous invite à regarder la description de ces listes. Les autres listes proposées par NextDNS sont incluses directement par OISD ou HaGeZi, ou agrégées par l'une des listes qu'ils incluent.

Je suis également en train de migrer de la liste HaGeZi PRO++ à la liste HaGeZi Ultimate. Celle-ci est encore plus agressive dans son blocage. Vous pouvez l'utiliser si vous le souhaitez, mais je vous conseille de le faire uniquement si vous êtes prêts à éventuellement voir quelques dysfonctionnements sur vos sites ou applications, et si vous êtes prêts à ajouter fréquemment des exceptions (voir la section Et en cas de blocage non souhaité ? ci-dessous). Sinon, vous pouvez vous contenter de la liste PRO++ qui est puissante et fonctionne très bien.

J'ai également ajouté toutes listes de Protection contre le suivi natif, et coché les deux dernières cases.

Je n'ai rien configuré dans les trois onglets suivants, mais l'onglet Contrôle parental peut vous être utile si vous souhaitez protéger vos enfants de certaines catégories de sites. L'onglet Liste noire peut vous être utile si vous possédez des équipements Apple, car certaines fonctionnalités peuvent empêcher NextDNS de fonctionner correctement. Je vous laisse lire les précisions de yokoffing à ce sujet.

Onglet Paramètres

J'ai activé tous les onglets, sauf celui de l'enregistrement des adresses IP des clients, et celui la page de blocage. J'ai également configuré la Suisse comme emplacement de stockage des journaux, pour une durée d'un mois.

Et en cas de blocage non souhaité ?

Si une application que vous utilisez, ou un site sur lequel vous naviguez, dysfonctionne ou ne se charge tout simplement pas, la 1e chose à faire est de se rendre dans l'onglet Logs et voir les dernières requêtes bloquées. Ensuite, vous pourrez les ajouter dans l'onglet Liste blanche. yokoffing a déjà préparé le terrain, et liste sur sa page des exceptions connues à ajouter à la liste blanche et concernant des sites ou applications spécifiques. Pour ma part, j'ai pour l'instant uniquement ajouté nextdns.io pour ne pas qu'une liste qui deviendrait un jour "foireuse" m'empêche l'accès à la console de configuration, et pour le reste, je verrai au moment venu !

Conclusion

En un mois, j'ai découvert l'étendue du volume de requêtes qu'effectuent mes appareils à mon insu. Ne bloquant que les domaines publicitaires ou de suivi et les domaines malveillants, je constate que près de la moitié des requêtes de mes appareils vont vers des domaines que je ne souhaite pas consulter, voire qui peuvent me nuire. Étant dans le domaine de la cybersécurité et très intéressé par les problématiques de confidentialité depuis des années, j'ai toujours eu connaissance de ce genre de choses, mais pas d'une telle ampleur. Merci NextDNS !

Comme indiqué dans l'article, le fait que l'entreprise soit soumise à la juridiction américaine, et le fait d'utiliser gratuitement un service aussi qualitatif, me dérange un peu. Pour ces raisons, il est possible que j'opte à terme pour une société de service DNS d'une autre juridiction, tel que AdGuard, basé à Chypre (payant), ou dns0 et DNSForge, basés respectivement en France et en Allemagne (gratuits, mais limités dans leur configuration).

Mais pour l'instant, j'apprécie la facilité d'utilisation, les possibilités de paramétrage et de statistiques de NextDNS. Cela m'a également permis de mettre un pied dans l'écosystème de DNS alternatifs, moi qui n'utilisais que uBlock Origin jusqu'à présent. Je continue toutefois à l'utiliser, car tout ne peut pas se bloquer par DNS.

Et vous, utilisez-vous déjà des systèmes DNS alternatifs ? Avez-vous mis en place NextDNS, et êtes-vous arrivés facilement à le configurer ? Avez-vous été rebutés par l'aspect "juridiction américaine" ?