>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
HTML

Comment nettoyer le trafic au niveau DNS sans listes de filtres gonflées

Last commit activity Repo size

Si vous avez déjà configuré un Pi-hole domestique ou AdGuard Home, vous avez probablement traversé une phase de gigantomanie. Je l'ai moi-même vécu : vous trouvez une bonne douzaine de listes de blocage différentes, vous les lancez dans le résolveur, et vous vous régalez du compteur affichant trois millions de domaines bloqués.

La joie ne dure généralement que jusqu'au premier soir. D'abord, quelqu'un dans la maison perd l'authentification dans son application bancaire, puis les aperçus des messageries cessent de se charger, et la moitié des services nécessaires exigent la désactivation du bloqueur de publicités. Vous finissez par passer des heures à examiner les journaux de requêtes et à traquer les faux positifs.

Le dépôt 1Hosts du développeur badmojr résout ce problème avec une approche radicalement différente. Le projet existe depuis décembre 2017 et mise sur la compacité des listes sans compromettre la qualité du filtrage.

Quelle est l'idée du projet

De nombreuses listes de blocage populaires souffrent de duplications et d'entrées obsolètes. Des domaines qui ont fermé depuis longtemps ou changé de propriétaire traînent pendant des années. Le résolveur gaspille toujours de la RAM à les stocker et à parcourir l'arbre des règles.

L'auteur de 1Hosts curate les règles de sorte que la liste occupe un espace minimum mais intercepte les publicités, les trackers et les ressources de phishing. Au lieu de centaines de fichiers dispersés, il propose seulement deux versions de base, mais dans des dizaines de formats prêts à l'emploi pour des logiciels spécifiques.

Deux versions pour différents scénarios

Le projet est divisé en deux branches, et les confondre est difficile :

  1. Lite — une version équilibrée basée sur le principe « configurez et oubliez ». Elle est destinée à une utilisation quotidienne à la maison ou au bureau. Le risque de casser des sites web, des applications ou des appareils intelligents normaux est minimal. Les faux positifs sont réduits au minimum.

  2. Xtra (actuellement en Beta) — une option radicale pour les passionnés de confidentialité et ceux qui veulent un blocage agressif. La liste coupe agressivement la télémétrie, les nouveaux domaines suspects et les ressources controversées. Préparez-vous à ce que certains sites légitimes cassent, et vous devrez les ajouter manuellement à la liste blanche ou soumettre un rapport au dépôt.

Une astuce intéressante suggérée par l'auteur : utilisez la version Lite directement sur un appareil local via le fichier hosts du système, et placezvous le filtrage plus agressif plus haut dans la chaîne sur le serveur DNS. De cette façon, les indésirables de base sont filtrés localement et n'encombrent pas les journaux de votre résolveur DNS, tandis que les erreurs dans les cas limites sont immédiatement visibles dans le journal réseau.

Des formats pour tous les logiciels et toutes les piles

Le principal casse-tête lors de la configuration des filtres réseau est l'incompatibilité de syntaxe. AdGuard utilise un ensemble de règles, Unbound nécessite sa propre configuration, et dnsmasq a besoin d'un format séparé.

Dans 1Hosts, les listes sont générées automatiquement pour la plupart des solutions populaires :

  • Fichier hosts standard (fonctionne pour Windows, Linux, Android via AdAway)
  • Listes de domaines pour Pi-hole et OpenSnitch
  • Format de règles pour uBlock Origin et AdGuard Home
  • Configurations pour les démons DNS locaux : dnsmasq, Unbound, Knot, Bind9, PowerDNS
  • Règles pour les pare-feux comme Little Snitch

Voici à quoi ressemble la connexion de la version Lite dans une configuration dnsmasq :

# Скачиваем готовый конфиг правил
curl -o /etc/dnsmasq.d/1hosts-lite.conf https://badmojr.github.io/1Hosts/Lite/dnsmasq.conf

# Перезапускаем службу
systemctl restart dnsmasq

Si vous exécutez Unbound à la maison, il suffit de récupérer le fichier de configuration généré en utilisant la directive include :

# В секции server файла unbound.conf
include: "/etc/unbound/1hosts-lite.conf"

DNS publics prêts à l'emploi sans déployer son propre serveur

Tout le monde ne veut pas configurer son propre serveur juste pour bloquer les trackers sur son téléphone en voyage. L'auteur de 1Hosts l'a anticipé et a préparé des intégrations avec des services DNS publics sécurisés qui prennent en charge DNS-over-HTTPS (DoH) et DNS-over-TLS (DoT).

Par exemple, dans ControlD, la liste se met à jour toutes les 30 minutes avec la prise en charge des règles joker. Vous pouvez simplement entrer l'adresse dans les paramètres DNS privé sur Android :

DoT: x-1hosts-lite.freedns.controld.com
DoH: https://freedns.controld.com/x-1hosts-lite

Des profils similaires sont configurés pour NextDNS, AdGuard DNS et RethinkDNS. Pour les appareils mobiles, c'est souvent plus que suffisant sans installer d'applications tierces.

1Hosts Banner

Support et communauté

Le dépôt a recueilli plus de 2,1k étoiles et continue d'être régulièrement mis à jour. Il y a pas mal de issues ouvertes, environ neuf cents, mais presque toutes sont des rapports de faux positifs. Le mainteneur supprime rapidement les domaines des listes s'ils interfèrent avec des services populaires.

Le dépôt lui-même est distribué sous la licence libre MPL 2.0 (Mozilla Public License). Cela vous permet d'utiliser librement ces listes comme base pour vos propres builds ou politiques de filtrage d'entreprise.

Qui devrait essayer

Si vous êtes fatigué de maintenir manuellement un monstre combinant dix listes de blocage différentes, essayez de réinitialiser vos paramètres et d'installer seulement la version 1Hosts Lite. Pour 95 % des tâches réseau domestiques quotidiennes, c'est plus que suffisant : les bannières disparaissent, les analytiques sont bloquées, et les pages des boutiques en ligne et des services bancaires continuent de s'ouvrir sans surprises.

La version Xtra ne vaut la peine d'être essayée que pour ceux qui sont consciemment prêts à gérer des requêtes bloquées et qui aiment affiner les règles réseau selon leurs besoins.

Projets similaires