Page 2 sur 2

Re: Filtrage DNS enfants

Publié : 08 févr. 2018, 09:43
par lost
vil1driver a écrit : Ps: pi-hole supprime les doublons s'il y a
Ca c'est pas mal, car sur les listes université de toulouse y'en a pas mal par exemple... Et je ne l'avait pas fait dans mon script qui reformate les entrées pour dnsmasq car cela complexifiait pas mal pour mon niveau en shell!

Pour le reste, c'est vrai que combiner est pas mal. Maintenant, rien que le fait de savoir que tous les domaines visités (attention toutefois, ouvrir une page peut générer beaucoup de résolutions de domaines de pub etc, même en préfiltrant en amont sur chaque machine via le fichier hosts de mvps) sont loggués favorise un bon niveau d'autodiscipline de nos chères têtes blondes également!

Re: Filtrage DNS enfants

Publié : 16 févr. 2018, 10:15
par vil1driver
Image

une petite chose fort utile également,
forcer les filtres de contrôle parental sur les recherches google/youtube

pour cela un petit ajout dans le fichier hosts de la machine faisant tourner dnsmasq

Code : Tout sélectionner

sudo nano /etc/hosts
y copier ceci:

Code : Tout sélectionner

# for CNAME redirect
216.239.38.120  restrict.youtube.com
216.239.38.119  restrictmoderate.youtube.com
216.239.38.120  forcesafesearch.google.com
et un petit fichier de conf supplémentaire pour dnsmasq
que l'on nommera 05-restrict.conf

Code : Tout sélectionner

sudo nano /etc/dnsmasq.d/05-restrict.conf
y copier ceci:

Code : Tout sélectionner

# Google safe search
cname=google.com,forcesafesearch.google.com
cname=www.google.com,forcesafesearch.google.com
cname=google.ad,forcesafesearch.google.com
cname=www.google.ad,forcesafesearch.google.com
cname=google.ae,forcesafesearch.google.com
cname=www.google.ae,forcesafesearch.google.com
cname=google.com.af,forcesafesearch.google.com
cname=www.google.com.af,forcesafesearch.google.com
cname=google.com.ag,forcesafesearch.google.com
cname=www.google.com.ag,forcesafesearch.google.com
cname=google.com.ai,forcesafesearch.google.com
cname=www.google.com.ai,forcesafesearch.google.com
cname=google.al,forcesafesearch.google.com
cname=www.google.al,forcesafesearch.google.com
cname=google.am,forcesafesearch.google.com
cname=www.google.am,forcesafesearch.google.com
cname=google.co.ao,forcesafesearch.google.com
cname=www.google.co.ao,forcesafesearch.google.com
cname=google.com.ar,forcesafesearch.google.com
cname=www.google.com.ar,forcesafesearch.google.com
cname=google.as,forcesafesearch.google.com
cname=www.google.as,forcesafesearch.google.com
cname=google.at,forcesafesearch.google.com
cname=www.google.at,forcesafesearch.google.com
cname=google.com.au,forcesafesearch.google.com
cname=www.google.com.au,forcesafesearch.google.com
cname=google.az,forcesafesearch.google.com
cname=www.google.az,forcesafesearch.google.com
cname=google.ba,forcesafesearch.google.com
cname=www.google.ba,forcesafesearch.google.com
cname=google.com.bd,forcesafesearch.google.com
cname=www.google.com.bd,forcesafesearch.google.com
cname=google.be,forcesafesearch.google.com
cname=www.google.be,forcesafesearch.google.com
cname=google.bf,forcesafesearch.google.com
cname=www.google.bf,forcesafesearch.google.com
cname=google.bg,forcesafesearch.google.com
cname=www.google.bg,forcesafesearch.google.com
cname=google.com.bh,forcesafesearch.google.com
cname=www.google.com.bh,forcesafesearch.google.com
cname=google.bi,forcesafesearch.google.com
cname=www.google.bi,forcesafesearch.google.com
cname=google.bj,forcesafesearch.google.com
cname=www.google.bj,forcesafesearch.google.com
cname=google.com.bn,forcesafesearch.google.com
cname=www.google.com.bn,forcesafesearch.google.com
cname=google.com.bo,forcesafesearch.google.com
cname=www.google.com.bo,forcesafesearch.google.com
cname=google.com.br,forcesafesearch.google.com
cname=www.google.com.br,forcesafesearch.google.com
cname=google.bs,forcesafesearch.google.com
cname=www.google.bs,forcesafesearch.google.com
cname=google.bt,forcesafesearch.google.com
cname=www.google.bt,forcesafesearch.google.com
cname=google.co.bw,forcesafesearch.google.com
cname=www.google.co.bw,forcesafesearch.google.com
cname=google.by,forcesafesearch.google.com
cname=www.google.by,forcesafesearch.google.com
cname=google.com.bz,forcesafesearch.google.com
cname=www.google.com.bz,forcesafesearch.google.com
cname=google.ca,forcesafesearch.google.com
cname=www.google.ca,forcesafesearch.google.com
cname=google.cd,forcesafesearch.google.com
cname=www.google.cd,forcesafesearch.google.com
cname=google.cf,forcesafesearch.google.com
cname=www.google.cf,forcesafesearch.google.com
cname=google.cg,forcesafesearch.google.com
cname=www.google.cg,forcesafesearch.google.com
cname=google.ch,forcesafesearch.google.com
cname=www.google.ch,forcesafesearch.google.com
cname=google.ci,forcesafesearch.google.com
cname=www.google.ci,forcesafesearch.google.com
cname=google.co.ck,forcesafesearch.google.com
cname=www.google.co.ck,forcesafesearch.google.com
cname=google.cl,forcesafesearch.google.com
cname=www.google.cl,forcesafesearch.google.com
cname=google.cm,forcesafesearch.google.com
cname=www.google.cm,forcesafesearch.google.com
cname=google.cn,forcesafesearch.google.com
cname=www.google.cn,forcesafesearch.google.com
cname=google.com.co,forcesafesearch.google.com
cname=www.google.com.co,forcesafesearch.google.com
cname=google.co.cr,forcesafesearch.google.com
cname=www.google.co.cr,forcesafesearch.google.com
cname=google.com.cu,forcesafesearch.google.com
cname=www.google.com.cu,forcesafesearch.google.com
cname=google.cv,forcesafesearch.google.com
cname=www.google.cv,forcesafesearch.google.com
cname=google.com.cy,forcesafesearch.google.com
cname=www.google.com.cy,forcesafesearch.google.com
cname=google.cz,forcesafesearch.google.com
cname=www.google.cz,forcesafesearch.google.com
cname=google.de,forcesafesearch.google.com
cname=www.google.de,forcesafesearch.google.com
cname=google.dj,forcesafesearch.google.com
cname=www.google.dj,forcesafesearch.google.com
cname=google.dk,forcesafesearch.google.com
cname=www.google.dk,forcesafesearch.google.com
cname=google.dm,forcesafesearch.google.com
cname=www.google.dm,forcesafesearch.google.com
cname=google.com.do,forcesafesearch.google.com
cname=www.google.com.do,forcesafesearch.google.com
cname=google.dz,forcesafesearch.google.com
cname=www.google.dz,forcesafesearch.google.com
cname=google.com.ec,forcesafesearch.google.com
cname=www.google.com.ec,forcesafesearch.google.com
cname=google.ee,forcesafesearch.google.com
cname=www.google.ee,forcesafesearch.google.com
cname=google.com.eg,forcesafesearch.google.com
cname=www.google.com.eg,forcesafesearch.google.com
cname=google.es,forcesafesearch.google.com
cname=www.google.es,forcesafesearch.google.com
cname=google.com.et,forcesafesearch.google.com
cname=www.google.com.et,forcesafesearch.google.com
cname=google.fi,forcesafesearch.google.com
cname=www.google.fi,forcesafesearch.google.com
cname=google.com.fj,forcesafesearch.google.com
cname=www.google.com.fj,forcesafesearch.google.com
cname=google.fm,forcesafesearch.google.com
cname=www.google.fm,forcesafesearch.google.com
cname=google.fr,forcesafesearch.google.com
cname=www.google.fr,forcesafesearch.google.com
cname=google.ga,forcesafesearch.google.com
cname=www.google.ga,forcesafesearch.google.com
cname=google.ge,forcesafesearch.google.com
cname=www.google.ge,forcesafesearch.google.com
cname=google.gg,forcesafesearch.google.com
cname=www.google.gg,forcesafesearch.google.com
cname=google.com.gh,forcesafesearch.google.com
cname=www.google.com.gh,forcesafesearch.google.com
cname=google.com.gi,forcesafesearch.google.com
cname=www.google.com.gi,forcesafesearch.google.com
cname=google.gl,forcesafesearch.google.com
cname=www.google.gl,forcesafesearch.google.com
cname=google.gm,forcesafesearch.google.com
cname=www.google.gm,forcesafesearch.google.com
cname=google.gp,forcesafesearch.google.com
cname=www.google.gp,forcesafesearch.google.com
cname=google.gr,forcesafesearch.google.com
cname=www.google.gr,forcesafesearch.google.com
cname=google.com.gt,forcesafesearch.google.com
cname=www.google.com.gt,forcesafesearch.google.com
cname=google.gy,forcesafesearch.google.com
cname=www.google.gy,forcesafesearch.google.com
cname=google.com.hk,forcesafesearch.google.com
cname=www.google.com.hk,forcesafesearch.google.com
cname=google.hn,forcesafesearch.google.com
cname=www.google.hn,forcesafesearch.google.com
cname=google.hr,forcesafesearch.google.com
cname=www.google.hr,forcesafesearch.google.com
cname=google.ht,forcesafesearch.google.com
cname=www.google.ht,forcesafesearch.google.com
cname=google.hu,forcesafesearch.google.com
cname=www.google.hu,forcesafesearch.google.com
cname=google.co.id,forcesafesearch.google.com
cname=www.google.co.id,forcesafesearch.google.com
cname=google.ie,forcesafesearch.google.com
cname=www.google.ie,forcesafesearch.google.com
cname=google.co.il,forcesafesearch.google.com
cname=www.google.co.il,forcesafesearch.google.com
cname=google.im,forcesafesearch.google.com
cname=www.google.im,forcesafesearch.google.com
cname=google.co.in,forcesafesearch.google.com
cname=www.google.co.in,forcesafesearch.google.com
cname=google.iq,forcesafesearch.google.com
cname=www.google.iq,forcesafesearch.google.com
cname=google.is,forcesafesearch.google.com
cname=www.google.is,forcesafesearch.google.com
cname=google.it,forcesafesearch.google.com
cname=www.google.it,forcesafesearch.google.com
cname=google.je,forcesafesearch.google.com
cname=www.google.je,forcesafesearch.google.com
cname=google.com.jm,forcesafesearch.google.com
cname=www.google.com.jm,forcesafesearch.google.com
cname=google.jo,forcesafesearch.google.com
cname=www.google.jo,forcesafesearch.google.com
cname=google.co.jp,forcesafesearch.google.com
cname=www.google.co.jp,forcesafesearch.google.com
cname=google.co.ke,forcesafesearch.google.com
cname=www.google.co.ke,forcesafesearch.google.com
cname=google.com.kh,forcesafesearch.google.com
cname=www.google.com.kh,forcesafesearch.google.com
cname=google.ki,forcesafesearch.google.com
cname=www.google.ki,forcesafesearch.google.com
cname=google.kg,forcesafesearch.google.com
cname=www.google.kg,forcesafesearch.google.com
cname=google.co.kr,forcesafesearch.google.com
cname=www.google.co.kr,forcesafesearch.google.com
cname=google.com.kw,forcesafesearch.google.com
cname=www.google.com.kw,forcesafesearch.google.com
cname=google.kz,forcesafesearch.google.com
cname=www.google.kz,forcesafesearch.google.com
cname=google.la,forcesafesearch.google.com
cname=www.google.la,forcesafesearch.google.com
cname=google.com.lb,forcesafesearch.google.com
cname=www.google.com.lb,forcesafesearch.google.com
cname=google.li,forcesafesearch.google.com
cname=www.google.li,forcesafesearch.google.com
cname=google.lk,forcesafesearch.google.com
cname=www.google.lk,forcesafesearch.google.com
cname=google.co.ls,forcesafesearch.google.com
cname=www.google.co.ls,forcesafesearch.google.com
cname=google.lt,forcesafesearch.google.com
cname=www.google.lt,forcesafesearch.google.com
cname=google.lu,forcesafesearch.google.com
cname=www.google.lu,forcesafesearch.google.com
cname=google.lv,forcesafesearch.google.com
cname=www.google.lv,forcesafesearch.google.com
cname=google.com.ly,forcesafesearch.google.com
cname=www.google.com.ly,forcesafesearch.google.com
cname=google.co.ma,forcesafesearch.google.com
cname=www.google.co.ma,forcesafesearch.google.com
cname=google.md,forcesafesearch.google.com
cname=www.google.md,forcesafesearch.google.com
cname=google.me,forcesafesearch.google.com
cname=www.google.me,forcesafesearch.google.com
cname=google.mg,forcesafesearch.google.com
cname=www.google.mg,forcesafesearch.google.com
cname=google.mk,forcesafesearch.google.com
cname=www.google.mk,forcesafesearch.google.com
cname=google.ml,forcesafesearch.google.com
cname=www.google.ml,forcesafesearch.google.com
cname=google.com.mm,forcesafesearch.google.com
cname=www.google.com.mm,forcesafesearch.google.com
cname=google.mn,forcesafesearch.google.com
cname=www.google.mn,forcesafesearch.google.com
cname=google.ms,forcesafesearch.google.com
cname=www.google.ms,forcesafesearch.google.com
cname=google.com.mt,forcesafesearch.google.com
cname=www.google.com.mt,forcesafesearch.google.com
cname=google.mu,forcesafesearch.google.com
cname=www.google.mu,forcesafesearch.google.com
cname=google.mv,forcesafesearch.google.com
cname=www.google.mv,forcesafesearch.google.com
cname=google.mw,forcesafesearch.google.com
cname=www.google.mw,forcesafesearch.google.com
cname=google.com.mx,forcesafesearch.google.com
cname=www.google.com.mx,forcesafesearch.google.com
cname=google.com.my,forcesafesearch.google.com
cname=www.google.com.my,forcesafesearch.google.com
cname=google.co.mz,forcesafesearch.google.com
cname=www.google.co.mz,forcesafesearch.google.com
cname=google.com.na,forcesafesearch.google.com
cname=www.google.com.na,forcesafesearch.google.com
cname=google.com.nf,forcesafesearch.google.com
cname=www.google.com.nf,forcesafesearch.google.com
cname=google.com.ng,forcesafesearch.google.com
cname=www.google.com.ng,forcesafesearch.google.com
cname=google.com.ni,forcesafesearch.google.com
cname=www.google.com.ni,forcesafesearch.google.com
cname=google.ne,forcesafesearch.google.com
cname=www.google.ne,forcesafesearch.google.com
cname=google.nl,forcesafesearch.google.com
cname=www.google.nl,forcesafesearch.google.com
cname=google.no,forcesafesearch.google.com
cname=www.google.no,forcesafesearch.google.com
cname=google.com.np,forcesafesearch.google.com
cname=www.google.com.np,forcesafesearch.google.com
cname=google.nr,forcesafesearch.google.com
cname=www.google.nr,forcesafesearch.google.com
cname=google.nu,forcesafesearch.google.com
cname=www.google.nu,forcesafesearch.google.com
cname=google.co.nz,forcesafesearch.google.com
cname=www.google.co.nz,forcesafesearch.google.com
cname=google.com.om,forcesafesearch.google.com
cname=www.google.com.om,forcesafesearch.google.com
cname=google.com.pa,forcesafesearch.google.com
cname=www.google.com.pa,forcesafesearch.google.com
cname=google.com.pe,forcesafesearch.google.com
cname=www.google.com.pe,forcesafesearch.google.com
cname=google.com.pg,forcesafesearch.google.com
cname=www.google.com.pg,forcesafesearch.google.com
cname=google.com.ph,forcesafesearch.google.com
cname=www.google.com.ph,forcesafesearch.google.com
cname=google.com.pk,forcesafesearch.google.com
cname=www.google.com.pk,forcesafesearch.google.com
cname=google.pl,forcesafesearch.google.com
cname=www.google.pl,forcesafesearch.google.com
cname=google.pn,forcesafesearch.google.com
cname=www.google.pn,forcesafesearch.google.com
cname=google.com.pr,forcesafesearch.google.com
cname=www.google.com.pr,forcesafesearch.google.com
cname=google.ps,forcesafesearch.google.com
cname=www.google.ps,forcesafesearch.google.com
cname=google.pt,forcesafesearch.google.com
cname=www.google.pt,forcesafesearch.google.com
cname=google.com.py,forcesafesearch.google.com
cname=www.google.com.py,forcesafesearch.google.com
cname=google.com.qa,forcesafesearch.google.com
cname=www.google.com.qa,forcesafesearch.google.com
cname=google.ro,forcesafesearch.google.com
cname=www.google.ro,forcesafesearch.google.com
cname=google.ru,forcesafesearch.google.com
cname=www.google.ru,forcesafesearch.google.com
cname=google.rw,forcesafesearch.google.com
cname=www.google.rw,forcesafesearch.google.com
cname=google.com.sa,forcesafesearch.google.com
cname=www.google.com.sa,forcesafesearch.google.com
cname=google.com.sb,forcesafesearch.google.com
cname=www.google.com.sb,forcesafesearch.google.com
cname=google.sc,forcesafesearch.google.com
cname=www.google.sc,forcesafesearch.google.com
cname=google.se,forcesafesearch.google.com
cname=www.google.se,forcesafesearch.google.com
cname=google.com.sg,forcesafesearch.google.com
cname=www.google.com.sg,forcesafesearch.google.com
cname=google.sh,forcesafesearch.google.com
cname=www.google.sh,forcesafesearch.google.com
cname=google.si,forcesafesearch.google.com
cname=www.google.si,forcesafesearch.google.com
cname=google.sk,forcesafesearch.google.com
cname=www.google.sk,forcesafesearch.google.com
cname=google.com.sl,forcesafesearch.google.com
cname=www.google.com.sl,forcesafesearch.google.com
cname=google.sn,forcesafesearch.google.com
cname=www.google.sn,forcesafesearch.google.com
cname=google.so,forcesafesearch.google.com
cname=www.google.so,forcesafesearch.google.com
cname=google.sm,forcesafesearch.google.com
cname=www.google.sm,forcesafesearch.google.com
cname=google.sr,forcesafesearch.google.com
cname=www.google.sr,forcesafesearch.google.com
cname=google.st,forcesafesearch.google.com
cname=www.google.st,forcesafesearch.google.com
cname=google.com.sv,forcesafesearch.google.com
cname=www.google.com.sv,forcesafesearch.google.com
cname=google.td,forcesafesearch.google.com
cname=www.google.td,forcesafesearch.google.com
cname=google.tg,forcesafesearch.google.com
cname=www.google.tg,forcesafesearch.google.com
cname=google.co.th,forcesafesearch.google.com
cname=www.google.co.th,forcesafesearch.google.com
cname=google.com.tj,forcesafesearch.google.com
cname=www.google.com.tj,forcesafesearch.google.com
cname=google.tk,forcesafesearch.google.com
cname=www.google.tk,forcesafesearch.google.com
cname=google.tl,forcesafesearch.google.com
cname=www.google.tl,forcesafesearch.google.com
cname=google.tm,forcesafesearch.google.com
cname=www.google.tm,forcesafesearch.google.com
cname=google.tn,forcesafesearch.google.com
cname=www.google.tn,forcesafesearch.google.com
cname=google.to,forcesafesearch.google.com
cname=www.google.to,forcesafesearch.google.com
cname=google.com.tr,forcesafesearch.google.com
cname=www.google.com.tr,forcesafesearch.google.com
cname=google.tt,forcesafesearch.google.com
cname=www.google.tt,forcesafesearch.google.com
cname=google.com.tw,forcesafesearch.google.com
cname=www.google.com.tw,forcesafesearch.google.com
cname=google.co.tz,forcesafesearch.google.com
cname=www.google.co.tz,forcesafesearch.google.com
cname=google.com.ua,forcesafesearch.google.com
cname=www.google.com.ua,forcesafesearch.google.com
cname=google.co.ug,forcesafesearch.google.com
cname=www.google.co.ug,forcesafesearch.google.com
cname=google.co.uk,forcesafesearch.google.com
cname=www.google.co.uk,forcesafesearch.google.com
cname=google.com.uy,forcesafesearch.google.com
cname=www.google.com.uy,forcesafesearch.google.com
cname=google.co.uz,forcesafesearch.google.com
cname=www.google.co.uz,forcesafesearch.google.com
cname=google.com.vc,forcesafesearch.google.com
cname=www.google.com.vc,forcesafesearch.google.com
cname=google.co.ve,forcesafesearch.google.com
cname=www.google.co.ve,forcesafesearch.google.com
cname=google.vg,forcesafesearch.google.com
cname=www.google.vg,forcesafesearch.google.com
cname=google.co.vi,forcesafesearch.google.com
cname=www.google.co.vi,forcesafesearch.google.com
cname=google.com.vn,forcesafesearch.google.com
cname=www.google.com.vn,forcesafesearch.google.com
cname=google.vu,forcesafesearch.google.com
cname=www.google.vu,forcesafesearch.google.com
cname=google.ws,forcesafesearch.google.com
cname=www.google.ws,forcesafesearch.google.com
cname=google.rs,forcesafesearch.google.com
cname=www.google.rs,forcesafesearch.google.com
cname=google.co.za,forcesafesearch.google.com
cname=www.google.co.za,forcesafesearch.google.com
cname=google.co.zm,forcesafesearch.google.com
cname=www.google.co.zm,forcesafesearch.google.com
cname=google.co.zw,forcesafesearch.google.com
cname=www.google.co.zw,forcesafesearch.google.com
cname=google.cat,forcesafesearch.google.com
cname=www.google.cat,forcesafesearch.google.com
puis ceci (à suivre):

Code : Tout sélectionner

# YouTube restricted
# you can also implement a moderate setting
# replace restrict.youtube.com with restrictmoderate.youtube.com
cname=youtube.com,restrict.youtube.com
cname=www.youtube.com,restrict.youtube.com
cname=m.youtube.com,restrict.youtube.com
cname=youtubei.googleapis.com,restrict.youtube.com
cname=youtube.googleapis.com,restrict.youtube.com
cname=youtube-nocookie.com,restrict.youtube.com
cname=www.youtube-nocookie.com,restrict.youtube.com
libre à vous de bloquer tout autre moteur de recherche (à savoir que bing propose également cela avec strict.bing.com)

on vérifie que tout est correct

Code : Tout sélectionner

dnsmasq --test
doit retourner ceci:

Code : Tout sélectionner

dnsmasq: vérification de syntaxe OK.
puis on relance le service

Code : Tout sélectionner

sudo service dnsmasq restart
Image

Re: Filtrage DNS enfants

Publié : 21 avr. 2018, 22:23
par Jeff
Je vous remercie pour ce tuto, je viens de le mettre en oeuvre sur un serveur "Ubuntu" mais je n'arrive pas du tout au résultat présenté.
J'ai pourtant l'impression que cela marche : les sites cités dans le tuto sont bloqués mais c'est presque tout, le dig fait le boulot , mais
ne bloque pas les images de la recherche, les vidéos, et tous les sites à partir d'une simple recherche sur le mot "porn" :?

Je cherche encore mes erreurs, j'ai configuré la tablette android ,comme ceci :
passerelle : ip du serveur dnsmasq
dns1 : ip du serveur dnsmasq
dns2 : ip du serveur dnsmasq

Je vais essayer de creuser pour verrouiller cela du mieux que je peux... :roll:

Re: Filtrage DNS enfants

Publié : 15 août 2018, 18:27
par ragefan
vil1driver a écrit :Merci pour ces explications...

toujours en cours de teste des listes shalla, selon tes conseils cul et violence (800,000 entrées) pour le moment.

petit script bien pratique pour les ajouter à pi-hole trouvé ici
https://github.com/mglinux/IPF_Tools

si ça intéresse quelqu'un, je me suis fais une variante pour les listes de Toulouse
(à présent 2600000 domaines blacklistés ici, le surf n'en souffre pas)

Ps: pi-hole supprime les doublons s'il y a (en l’occurrence environ 300000)
Bonjour,
Je suis nouveau sur le forum et je découvre votre post.
je suis intéressé svp pour une adaptation des scripts pour la liste de Toulouse.
merci !

Re: Filtrage DNS enfants

Publié : 18 août 2018, 12:00
par vil1driver
shalla_pihole.sh

Code : Tout sélectionner

#!/bin/bash

##################################
### Shalla blocklist generator ###
##################################

Version=1.1
Homepage=https://github.com/mglinux/IPF_Tools



## Shallalist download link and name
shalla_link=http://www.shallalist.de/Downloads
shalla_name=shallalist.tar.gz
shalla_folder=BL
curdir=$(dirname $(readlink -f $0))

## Temp dir
targetpath=${curdir}/shalla_blocklist.tmp
###############################################################



## Function Info
print_info() {																	
		echo "################################"
		echo "## Shalla blocklist generator ##"
		echo "################################"
		echo
		echo "Options:"
		echo
		echo "  -c         Choose categories"
		echo
		echo "  -i         Show general infos and disclaimer"
		echo
		echo "  -r         Remove all files generated by script"
		echo
		echo "  -u         Update Blocklist"
		echo
		echo "  -v         Show version"
		echo
		echo
		echo 
		echo "First time usage --> bash shalla_pihole.sh -c"
		echo "(login as root)"
    
	}

	

## Function shalla_info

shalla_info() {
whiptail --title "Shalla blocklist generator" --msgbox "* Shallalist is free for home users: http://www.shallalist.de/licence.html *

After choosing your categories the script will fetch current list from shallalist.de The file shalla.blocklist is generated afterwards and can be used for filtering the appropriate categories. 

For detailed descriptions about the categories visit: http://www.shallalist.de/categories.html


You must choose categories once and for updating run:

bash $curdir/shalla_pihole.sh -u" 20 90
}

## Function shalla_error
shalla_error() {
whiptail --title "Error" --msgbox "$shalla_link/$shalla_name not found.
        
            
            
Please check download link or file name!" 15 78
}

## Function script finished
script_done() {
whiptail --title "Current workaround" --msgbox "File $curdir/shalla.blocklist created.

Right now Pi-Hole can´t handle local files properly. Therefore shalla.blocklist will be copied to /var/www.

For automatic updates a cronjob was set! Update check daily at 01:00 AM        0 1 * * * bash $curdir/shalla_pihole.sh -u


Running shalla_pihole.sh -r will remove the generated cronjob too!" 20 80
        
whiptail --title "Script finished" --msgbox "Last step: In Pi-Hole webinterface (Settings - Pi-Hole's Block Lists) add this local list for shalla:
        
http://127.0.0.1/shalla.blocklist
        
        
        
Happy blocking!" 10 80
}




## Script start

cronjob="0 1 * * * bash $curdir/shalla_pihole.sh -u"

if [[ $# -eq 0 ]]; then print_info; exit 0; fi

while [[ $# > 0 ]] ; do

case $1 in
    -c) {
        ## Remove old files
        shalla_info
        rm -Rf $targetpath
        rm -f $curdir/shalla.blocklist
        if wget --spider $shalla_link/$shalla_name 2>&1 | grep --quiet "200 OK" ; then
        mkdir -p $targetpath
        ## Download shallalist and extract
        wget $shalla_link/$shalla_name -P $targetpath
        tar -xf $targetpath/$shalla_name -C $targetpath
        ## making shalla.list more user friendly
        find $targetpath/$shalla_folder -type f -name '*domains*' -printf '%P\n' | sort -u >> $targetpath/shalla.list
        sed -e s/domains//g -i $targetpath/shalla.list
        sed -i 's/.$//' $targetpath/shalla.list
        sed -i 's/^/#/' $targetpath/shalla.list
        whip='whiptail --title "Choose categories that shall be blocked" --checklist "Shalla" --separate-output 20 50 15 --nocancel'
        for line in `cat $targetpath/shalla.list`; do
        if [[ "${line:0:1}" == "#" ]]; then
        line=`echo $line | sed s'/^#//g'`
        whip="$whip "'"'$line'"  "" OFF '
        else 
        whip="$whip "'"'$line'"  "" ON '
        source $targetpath/categories
        rm -Rf $targetpath/$shalla_folder
        fi
        done
        else
        shalla_error
        exit 0
        fi
        eval $whip 2> $targetpath/categories
        prefix="cat $targetpath/$shalla_folder/"
        suffix="/domains >> $curdir/shalla.blocklist"
        sed -i "s~$~$suffix~" "$targetpath/categories"
        sed -i "s~^~$prefix~" "$targetpath/categories"
        source $targetpath/categories
        cp -f $curdir/shalla.blocklist /var/www
        chmod 0644 /var/www/shalla.blocklist
        ## Clean up
        rm -Rf $targetpath/$shalla_folder
        rm -f $targetpath/shalla.list
        ## add cronjob
	( crontab -l | grep -v -F "$cronjob" ; echo "$cronjob" ) | crontab -
        script_done
	echo
	echo
	echo "Add in Pi-Hole Blocklists: 	http://127.0.0.1/shalla.blocklist"
        exit 0
        };;
    
    -u) {
        ## Remove old files
        rm -Rf $targetpath/$shalla_folder
        if [ ! -f "$targetpath/categories" ]; then
        echo "No categories chosen!"
        echo
        echo "Please run:  bash shalla_pihole.sh -c "
        exit 0
        fi
        ## Download shallalist and extract. Check if file changed
        oldfile=$(md5sum $targetpath/$shalla_name 2>/dev/null)
        wget -N $shalla_link/$shalla_name -P $targetpath
        newfile=$(md5sum $targetpath/$shalla_name)
        if [ "$oldfile" = "$newfile" ]; then
        echo "No updates for Shallalist on server. Nothing to do!"
        exit 0
        fi
        ## if changed start generating blocklist
        rm -f $curdir/shalla.blocklist
        tar -xf $targetpath/$shalla_name -C $targetpath
        source $targetpath/categories
        cp -f $curdir/shalla.blocklist /var/www
        chmod 0644 /var/www/shalla.blocklist
        rm -Rf $targetpath/$shalla_folder
        exit 0
        };;
                        
    -r) {
        rm -Rf $targetpath
        rm -f $curdir/shalla.blocklist
        rm -f /var/www/shalla.blocklist
        ( crontab -l | grep -v -F "$cronjob" ) | crontab -
        echo "All files deleted. Crontab entry removed."
        exit 0
        };;
        
        
    -v) {
        echo
        echo "Version:      $Version"
        echo
        echo "Homepage:     $Homepage"
        exit 0
        };;
        
     -i) {
        shalla_info
        exit 0
        };;   
        
        *) {
        echo -e "Unknown option."
        exit 0
        };;
esac
done
toulouse_pihole.sh

Code : Tout sélectionner

#!/bin/bash

##################################
### toulouse blocklist generator ###
##################################

Version=1.1
Homepage=https://github.com/mglinux/IPF_Tools



## toulouselist download link and name
toulouse_link=http://dsi.ut-capitole.fr/blacklists/download
toulouse_name=blacklists.tar.gz
toulouse_folder=blacklists
curdir=$(dirname $(readlink -f $0))

## Temp dir
targetpath=${curdir}/toulouse_blocklist.tmp
###############################################################



## Function Info
print_info() {																	
		echo "################################"
		echo "## toulouse blocklist generator ##"
		echo "################################"
		echo
		echo "Options:"
		echo
		echo "  -c         Choose categories"
		echo
		echo "  -i         Show general infos and disclaimer"
		echo
		echo "  -r         Remove all files generated by script"
		echo
		echo "  -u         Update Blocklist"
		echo
		echo "  -v         Show version"
		echo
		echo
		echo 
		echo "First time usage --> bash toulouse_pihole.sh -c"
		echo "(login as root)"
    
	}

	

## Function toulouse_info

toulouse_info() {
whiptail --title "toulouse blocklist generator" --msgbox "* toulouselist is free for home users: http://www.toulouselist.de/licence.html *

After choosing your categories the script will fetch current list from toulouselist.de The file toulouse.blocklist is generated afterwards and can be used for filtering the appropriate categories. 

For detailed descriptions about the categories visit: http://www.toulouselist.de/categories.html


You must choose categories once and for updating run:

bash $curdir/toulouse_pihole.sh -u" 20 90
}

## Function toulouse_error
toulouse_error() {
whiptail --title "Error" --msgbox "$toulouse_link/$toulouse_name not found.
        
            
            
Please check download link or file name!" 15 78
}

## Function script finished
script_done() {
whiptail --title "Current workaround" --msgbox "File $curdir/toulouse.blocklist created.

Right now Pi-Hole can´t handle local files properly. Therefore toulouse.blocklist will be copied to /var/www.

For automatic updates a cronjob was set! Update check daily at 01:00 AM        0 1 * * * bash $curdir/toulouse_pihole.sh -u


Running toulouse_pihole.sh -r will remove the generated cronjob too!" 20 80
        
whiptail --title "Script finished" --msgbox "Last step: In Pi-Hole webinterface (Settings - Pi-Hole's Block Lists) add this local list for toulouse:
        
http://127.0.0.1/toulouse.blocklist
        
        
        
Happy blocking!" 10 80
}




## Script start

cronjob="0 1 * * * bash $curdir/toulouse_pihole.sh -u"

if [[ $# -eq 0 ]]; then print_info; exit 0; fi

while [[ $# > 0 ]] ; do

case $1 in
    -c) {
        ## Remove old files
        toulouse_info
        rm -Rf $targetpath
        rm -f $curdir/toulouse.blocklist
        if wget --spider $toulouse_link/$toulouse_name 2>&1 | grep --quiet "200 OK" ; then
        mkdir -p $targetpath
        ## Download toulouselist and extract
        wget $toulouse_link/$toulouse_name -P $targetpath
        tar -xf $targetpath/$toulouse_name -C $targetpath
        ## making toulouse.list more user friendly
        find $targetpath/$toulouse_folder -type f -name '*domains*' -printf '%P\n' | sort -u >> $targetpath/toulouse.list
        sed -e s/domains//g -i $targetpath/toulouse.list
        sed -i 's/.$//' $targetpath/toulouse.list
        sed -i 's/^/#/' $targetpath/toulouse.list
        whip='whiptail --title "Choose categories that shall be blocked" --checklist "toulouse" --separate-output 20 50 15 --nocancel'
        for line in `cat $targetpath/toulouse.list`; do
        if [[ "${line:0:1}" == "#" ]]; then
        line=`echo $line | sed s'/^#//g'`
        whip="$whip "'"'$line'"  "" OFF '
        else 
        whip="$whip "'"'$line'"  "" ON '
        source $targetpath/categories
        rm -Rf $targetpath/$toulouse_folder
        fi
        done
        else
        toulouse_error
        exit 0
        fi
        eval $whip 2> $targetpath/categories
        prefix="cat $targetpath/$toulouse_folder/"
        suffix="/domains >> $curdir/toulouse.blocklist"
        sed -i "s~$~$suffix~" "$targetpath/categories"
        sed -i "s~^~$prefix~" "$targetpath/categories"
        source $targetpath/categories
        cp -f $curdir/toulouse.blocklist /var/www
        chmod 0644 /var/www/toulouse.blocklist
        ## Clean up
        rm -Rf $targetpath/$toulouse_folder
        rm -f $targetpath/toulouse.list
        ## add cronjob
	( crontab -l | grep -v -F "$cronjob" ; echo "$cronjob" ) | crontab -
        script_done
	echo
	echo
	echo "Add in Pi-Hole Blocklists: 	http://127.0.0.1/toulouse.blocklist"
        exit 0
        };;
    
    -u) {
        ## Remove old files
        rm -Rf $targetpath/$toulouse_folder
        if [ ! -f "$targetpath/categories" ]; then
        echo "No categories chosen!"
        echo
        echo "Please run:  bash toulouse_pihole.sh -c "
        exit 0
        fi
        ## Download toulouselist and extract. Check if file changed
        oldfile=$(md5sum $targetpath/$toulouse_name 2>/dev/null)
        wget -N $toulouse_link/$toulouse_name -P $targetpath
        newfile=$(md5sum $targetpath/$toulouse_name)
        if [ "$oldfile" = "$newfile" ]; then
        echo "No updates for toulouselist on server. Nothing to do!"
        exit 0
        fi
        ## if changed start generating blocklist
        rm -f $curdir/toulouse.blocklist
        tar -xf $targetpath/$toulouse_name -C $targetpath
        source $targetpath/categories
        cp -f $curdir/toulouse.blocklist /var/www
        chmod 0644 /var/www/toulouse.blocklist
        rm -Rf $targetpath/$toulouse_folder
        exit 0
        };;
                        
    -r) {
        rm -Rf $targetpath
        rm -f $curdir/toulouse.blocklist
        rm -f /var/www/toulouse.blocklist
        ( crontab -l | grep -v -F "$cronjob" ) | crontab -
        echo "All files deleted. Crontab entry removed."
        exit 0
        };;
        
        
    -v) {
        echo
        echo "Version:      $Version"
        echo
        echo "Homepage:     $Homepage"
        exit 0
        };;
        
     -i) {
        toulouse_info
        exit 0
        };;   
        
        *) {
        echo -e "Unknown option."
        exit 0
        };;
esac
done

les 2 scripts placent les listes shalla et toulouse (une fois adaptées à pihole) dans /var/www, il convient donc d'avoir un serveur web actif (ex apache) capable de servir les fichiers de cet emplacement.
ou alors utiliser le serveur venant avec pihole (lighthttpd) mais il faudra modifier le chemin x fois dans les script vers /var/www/html (il me semble)
ou alors utiliser le serveur domoticz et également modifier le chemin vers /home/pi/domoticz/www (si user pi)

le tout est que pihole puisse avoir accès aux fichiers créés par ces scripts via une url

et donc ajout des url dans pihole (setting > bloclists)

Code : Tout sélectionner

http://127.0.0.1/shalla.blocklist

Code : Tout sélectionner

http://127.0.0.1/toulouse.blocklist
et une petite pour microsoft en sus

Code : Tout sélectionner

http://127.0.0.1/microsoft.blocklist
microsoft.blocklist

Code : Tout sélectionner

dns.msftncsi.com
ipv6.msftncsi.com
win10.ipv6.microsoft.com
ipv6.msftncsi.com.edgesuite.net
a978.i6g1.akamai.net
win10.ipv6.microsoft.com.nsatc.net
en-us.appex-rf.msn.com
v10.vortex-win.data.microsoft.com
client.wns.windows.com
wildcard.appex-rf.msn.com.edgesuite.net
v10.vortex-win.data.metron.life.com.nsatc.net
wns.notify.windows.com.akadns.net
americas2.notify.windows.com.akadns.net
travel.tile.appex.bing.com
www.bing.com
any.edge.bing.com
fe3.delivery.mp.microsoft.com
fe3.delivery.dsp.mp.microsoft.com.nsatc.net
ssw.live.com
ssw.live.com.nsatc.net
login.live.com
login.live.com.nsatc.net
directory.services.live.com
directory.services.live.com.akadns.net
bl3302.storage.live.com
skyapi.live.net
bl3302geo.storage.dkyprod.akadns.net
skyapi.skyprod.akadns.net
skydrive.wns.windows.com
register.mesh.com
BN1WNS2011508.wns.windows.com
settings-win.data.microsoft.com
settings.data.glbdns2.microsoft.com
OneSettings-bn2.metron.live.com.nsatc.net
watson.telemetry.microsoft.com
watson.telemetry.microsoft.com.nsatc.net
arc.msn.com
dmd.metaservices.microsoft.com
go.microsoft.com
petit ajout (à adapter à votre installation) crontab pour mettre à jour ces listes chaque jours

Code : Tout sélectionner

0 1 * * * bash /home/vil1driver/toulouse/toulouse_pihole.sh -u
0 1 * * * bash /home/vil1driver/shalla/shalla_pihole.sh -u

Re: Filtrage DNS enfants

Publié : 21 août 2018, 13:44
par vil1driver
Jeff a écrit : les sites cités dans le tuto sont bloqués mais c'est presque tout, le dig fait le boulot , mais
ne bloque pas les images de la recherche, les vidéos, et tous les sites à partir d'une simple recherche sur le mot "porn" :?
c'est normal, l'idée est d'empêcher la résolution du nom des sites en ip (du moins pas la bonne), de sorte que le navigateur ne puisse y accéder.
Mais on ne peut empêcher un site "autorisé" à afficher un contenu "adulte" (si auto hébergé)

Exemple:

Si je poste ici une image par un lien vers un site blacklisté, l'image ne sera pas visible,
mais si j'upload la même image sur ce forum, le filtrage par nom de domaine considèra que sa provenance est sûre et ne la bloquera pas.

ce que tu cherches à obtenir ressemble plus à ce dont je parlais (un peu hors sujet) plus haut (google safe search)

Personnellement je suis plus que satisfait de tout ceci, seul le filtre youtube à été désactivé car bien trop restrictif.

Re: Filtrage DNS enfants

Publié : 22 août 2018, 16:50
par lost
vil1driver a écrit : une petite chose fort utile également,
forcer les filtres de contrôle parental sur les recherches google/youtube
Hello, je découvre cette suite avec un peu de retard...

Astuce en effet très complémentaire. Le filtrage DNS pour les domaines qui s'échangent dans les cour de récré... et le safe-search pour ceux qu'on voudrait trouver soit-même et qui ont toutes chances, au rythme ou Google&Co indexent le web, de ne pas être encore dans les listes de filtrage précédentes.

Je viens de l'ajouter, merci.

Re: Filtrage DNS enfants

Publié : 22 août 2018, 17:44
par vil1driver
De rien ;)

Re: Filtrage DNS enfants

Publié : 31 oct. 2018, 15:47
par vil1driver
Salut,

Ca intéresserait quelqu'un une image toute prête ?
Un truc clé en main, super light et robuste (tournant entièrement en ram - fini les soucis de carte sd)

Basé sur picore 9 et dnsmasq

Assure dhcp, google safeSearch et blocage de près d'un million de domaines (pubs et adultes)

Il me faut encore peaufiner avant de pouvoir partager mais j'en suis plus que satisfait pour l'instant, très bonne réactivité de la résolution de nom (namebench) même sur mon pi1b.