BBox 3, Dnsmasq et mega.nz chez Scarlet
Comment passer outre un blocage DNS sous Linux.
Un jour l'opérateur belge Scarlet, succursale de Proximus, a décidé de faire un blocage DNS sur le site MEGA et d’autres.
Avant, on pouvait s’en sortir en modifiant les DNS à même la BBox, le modem-routeur en carton de Proximus[1]. Or, depuis quelques itérations cette machine ne permet plus de changer les serveurs DNS qui lui sont attribués par défaut. L’opérateur se justifie en la matière de la sorte : le matériel qu’il fournit à ses clients ne doit pas permettre d’outrepasser le blocage qui lui est imposé par décision de justice[2]. Sauf que le blocage de certains sites déborde largement les obligations légales de l’opérateur qui est un peu trop pro-actif en la matière et en contrarie toute utilisation légitime[3].
N’ayant pas encore investi quelques heures de mon temps nécessaires à la configuration d'un PC Engines légué par un gentil lecteur, j’ai plutôt cherché une solution à mettre en œuvre sur ma machine locale en utilisant Dnsmasq déjà mobilisé par le gestionnaire de connexion NetworkManager.
Installer le paquet dnsmasq
afin que celui-ci puisse être utilisé par le gestionnaire de connexion Network Manager afin de mettre en cache les recherches DNS, permettant de raccourcir les délais de résolution.
sudo apt update; sudo apt install dnsmasq
C'est dans /etc/NetworkManager/NetworkManager.conf
que l'on active l’utilisation de Dnsmasq, qui permet également de mettre en cache la résolution des noms de domaine.
sudo nano /etc/NetworkManager/NetworkManager.conf
Et là changer la ligne dns=...
pour la suivante:
dns=dnsmasq
Ensuite, il ne reste qu’à déclarer des serveurs de noms (ici du French Data Network) par nom de domaine qu’on voudrait voir résolu. Ouvrir un fichier de configuration :
sudo nano /etc/NetworkManager/dnsmasq.d/custom.conf
Et ajouter une ligne similaire à la suivante pour chaque domaine dont on veut que la résolution DNS ne passe pas par celle de la BBox :
server=/mega.nz/80.67.169.40
Vous pouvez ajouter n'importe quel nom de domaine bloqué sans base légale par votre opérateur selon la structure server=/domaine.nom/DNS
. Ensuite, sauvegardez le fichier et redémarrez NetworkManager.
sudo systemctl restart NetworkManager