Filtrage DNS

Installer un filtrage DNS, quelle est son utilité ?
Cela permet, à condition de disposer de listes de "mauvais" sites, de ne pas prendre le risque d'y être envoyés ou redirigés par un site piraté ou peu scrupuleux. Cela peut aussi éviter certains sites de phishing. 
Plusieurs sources de liste de noms de domaines à éviter sont récupérables sur Internet, l'une de ces listes est maintenue par "abuse.ch" qui présente aussi d'autres listes liées à la sécurité. 
Si vous disposez d'un DNS bind9 la prise en compte d'une telle liste est extrêmement facile et ne nécessite que quelques petits ajouts dans le paramétrage de Bind9/named et l'installation d'un commande en "crontab" pour tenir à jour le fichier de référence. 
1) La première modification doit être faite dans le fichier de paramètres qui contient la définition de vos "zones" (en général "named.conf"). Cette modification consiste à créer une nouvelle "zone" ce qui se fait en ajoutant en fin de fichier la description de la nouvelle zone : 
zone "urlhaus.zone" { 
    type master; 
    file "/etc/bind/urlhaus.rpz"; 
    allow-query { any; }; 
    allow-update { none; }; 
    allow-transfer { none; }; 
};

2) Il faut ensuite définir la nouvelle fonctionnalité dans les "options" (en général dans le fichier "named.conf.local"). Il suffit d'y ajouter la ligne suivante dans le paragraphe "options" : 
response-policy { zone "urlhaus.zone"; }; 
Attention à bien placer cette ligne entre les deux accolades du paragraphe "options".

3) Récupérer ensuite le fichier sur le site, à l'aide du script suivant que vous pourrez référencer dans votre "crontab" (au moins une fois par jour) :

#!/bin/bash 
# 
#    GET new RPZ file 
# --------------------------------------------------------------- 
cp /etc/bind/urlhaus.rpz /etc/bind/urlhaus.rpz_old 
wget -O /etc/bind/urlhaus.rpz https://urlhaus.abuse.ch/downloads/rpz/ 
chmod +r /etc/bind/urlhaus.rpz

Un simple "reload" de Bind9 suffit à activer cette nouvelle fonctionnalité et les sites "douteux" ne pourront plus être atteints par votre machine. 
On peut même (avec un gentil petit script) y ajouter des noms de domaines si on le désire. La seule bizarrerie (?) c'est que je n'arrive pas à me débarrasser de domaines en ".top", pour les autres cela fonctionne très bien. 
Mettez dans votre fichier personnel les lignes suivantes : 
toto.com CNAME .    ; commentaire 
*.toto.com CNAME .  ; autre commentaire 
et ... tout le domaine "toto.com" deviendra inaccessible ... c'est pas mal pour certaines pubs, le DNS réponds instantanément que le site n'existe pas, donc aucun risque d'aller y faire un tour pour qu'il vous en joue de mauvais.