URI:
       # Ip nuisibles à blacklister
       
       Je propose en téléchargement quelques listes d'IP malveillantes 
       recueillies par mes soins. Il y en a pour tous les gouts : spam, 
       bruteforce, anti-pub...
       
       Téléchargez les listes périodiquement sachant qu'elles sont mises à 
       jour chaque nuit à 0h42. Inutile donc de les télécharger plus d'1 
       fois/jour pour économiser la bande passante, merci 😉.
       
       Chaque liste est disponible en version gzippée, il suffit d'ajouter 
       ".gz" à la fin d'un lien, ou utiliser ''curl --compressed''.
       
       ## TL ; DR
       
       IP nuisibles qui ont tenté un scan ou une attaque:
  TEXT prx-brutes.txt
  TEXT pf-badhost.txt
       
       IP de bot AI:
  TEXT ai.txt
       
       Domaines malveillants:
  TEXT hosts.txt
  TEXT unwind-block.txt
   BIN unbound-adblock.rpz
       
       
       Utilisation:
       
       ```
       curl -o out.txt --compressed $url
       # or
       ftp -o- $url.gz | gzcat > out.txt
       pfctl -t <table> -T replace -f out.txt
       ```
       
       Si besoin, augmentez les limites:
       
       ```
       # cat /etc/pf.conf
       [...]
       set limit table-entries 409600
       ```
       
       ## Blocage par DNS
       
       ### Via le fichier /etc/hosts
       
       Cette méthode est valide pour tous les systèmes de type UNIX (Linux, 
       BSD, ...).
       Sur Android, on utilisera l'application gratuite PersonalDNSFilter:
  HTML PersonalDNSfilter
       
       Cette liste permet d'éviter à votre système de se connecter à certains 
       domaines malveillants. C'est une méthode facile et efficace de se 
       protéger contre des popups, pièges, traceurs... Tout en allégeant la 
       bande passante.
       
       Vous trouverez en suivant les liens ci-dessous un fichier "/etc/hosts"
       qui contient plus de 100 000 domaines malveillants ou publicitaires, 
       tous blacklistés.
       
  TEXT hosts.txt
       
       Afin de mettre à jour automatiquement cette liste sur vos machines, 
       voici un script /usr/local/sbin/uphosts:
       
       ```uphosts
       if [ -n "$(find /etc/hosts -mtime +7)" ]; then
           # wait for internet access
           while true; do
               nc -zw1 si3t.ch 443 && break || sleep 60
           done
           curl -o /etc/hosts --compressed https://si3t.ch/pub/evils/hosts.txt
           # or
           #ftp -o- https://si3t.ch/pub/evils/hosts.txt.gz |gzcat > /etc/hosts
       fi
       ```
       
       N'oubliez pas de rendre uphosts éxécutable :
       
       ```
       chmod +x /usr/local/sbin/uphosts
       ```
       
       Enfin, ajoutez une tâche cron à root avec ''crontab -e'':
       
       ```
       @reboot /usr/local/sbin/uphosts
       ```
       
       Pour les plus curieu(ses|x), j'obtiens cette liste avec le script 
       zerohosts:
   DIR /code/zerohosts/
       
       
       Ces fichers peuvent être utilisés comme liste pour l'extension Firefox 
       ublock origin.
  HTML https://ublockorigin.com/fr
       
       ### Avec un résolveur local (unwind, unbound)
       
       Vous pouvez faire de même avec unwind (openbsd), un résolveur local. 
       Voici un fichier contenant les domaines correspondants à utiliser à la 
       place du host ci-dessus
       
       unwind-block.txt
  TEXT /pub/evils/unwind-block.txt
       
       ```
       block list "/var/db/unwind-block.txt"
       ```
       
       Enfin, pour les utilisateurs d'unbound, voici le fichier rpz 
       correspondant :
   BIN /pub/evils/unbound-adblock.rpz
       
       ```
               module-config: "respip validator iterator"
       
       rpz:
               name: "unbound-adblock"
               zonefile: "/var/unbound/db/unbound-adblock.rpz"
               rpz-log: yes
               rpz-log-name: "unbound-adblock"
       ```
       
       ## Blacklist avec le parefeu (pf)
       
       ### Bruteforceurs
       
       prx-brutes.txt:
  TEXT /pub/evils/prx-brutes.txt
       
       Ce premier fichier contient la liste des IP qui ont tenté un bruteforce 
       sur mon serveur ces dernières 24 heures (sur ssh, accès mail ou un 
       wordpress imaginaire) ou bien scanné pour un service inexistant.
       
       Pour l'utiliser avec pf modifiez /etc/pf.conf:
       
       ```
       table <prx> persist file "/var/prx-brutes.txt"
       block log quick from <prx>
       ```
       
       ### pf-badhost
       
       Vous pouvez récupérer la liste du projet pf-badhost:
  HTML https://www.geoghegan.ca/pfbadhost.html
       
       pf-badhost.txt:
  TEXT /pub/evils/pf-badhost.txt