WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: [FR] Un bloqueur de pubs  (Read 1857 times)

Offline Rantanplan

  • Newbie
  • *
  • Posts: 47
[FR] Un bloqueur de pubs
« on: July 01, 2023, 01:38:07 AM »
Bonjour,

Le site sebsauvage.net propose une liste de blocage de plus de 400.000 lignes mise à jour au moins une fois par mois avec mise en oeuvre d'une liste blanche afin que certains sites ne soient jamais bloqués.

La liste peut-être récupérée avec la commande, par exemple :
Code: [Select]
wget --no-check-certificate https://sebsauvage.net/hosts/hostsL'option --no-check-certificate est inutile si l'extension ca-certificate.tcz est chargée.

Ensuite, il faut ajouter la liste au bout du fichier /etc/hosts.

J'ai écrit un petit script sans prétention, certainement améliorable qui fait tout ça :
Code: [Select]
#! /bin/ash
# verifie reseau accessible
# telecharge un fichier hosts depuis sebsauvage.net
# insere la liste des sites a bloquer obtenue dans /etc/hosts
# supprime les fichiers temporaires dans /tmp/
clear
if [ ! "$(ifconfig | grep -E "(wlan|eth|usb)")" ]
then echo "
Vous n'etes relie a aucun reseau !

Connectez-vous a internet par cable ou sans-fil (wifi)
ou encore grace a votre telephone intelligent via un port usb.

Le programme va s'arreter.

Merci.
" && sleep 10 && exit
fi
if [ ! -f /etc/hosts.old ]
then cp /etc/hosts /etc/hosts.old
else cp /etc/hosts.old /etc/hosts
fi
cd /tmp/
wget --no-check-certificate https://sebsauvage.net/hosts/hosts
grep -E ^0\.0 hosts > result
echo "#-------->Debut liste blocage" >> /etc/hosts
cat result >> /etc/hosts
echo "#-------->Fin liste blocage" >> /etc/hosts
rm /tmp/result /tmp/hosts
clear
echo "
1 - Le fichier /etc/hosts original a ete sauvegarde sous /etc/hosts.old.
2 - Les fichiers temporaires ont ete supprimes du dossier /tmp/.

3 - Le nouveau fichier /etc/hosts compte maintenant `wc -l < /etc/hosts` lignes.

Bon vent sur le reseau international...
"
Copiez/collez dans un fichier, donnez-lui les droits :
Code: [Select]
sudo chmod a+x [nom_du_fichier]
Pour le lancer :
Code: [Select]
sudo ./[chemin_vers_le]/[nom_du_fichier]
Le script vérifiera qu'il y a une connexion réseau active (ifconfig).
Il fera une sauvegarde du fichier original /etc/hosts.
IL chargera le fichier distant dans /tmp/ et en extraiera la liste des sites à bloquer.
Cette liste sera insérée à la fin du fichier /etc/hosts original.
Enfin, les fichiers temporaires seront supprimés.

Voilà, c'est tout !

Si ça peut aider.

Amitiés.