Privoxy sur Squid : virer les pubs pour tout le monde

Sur mon firefox, j’utilise “AdBlock Plus” pour filtrer les pubs. Mais dans une société où IE est le maître (pour cause d’intranets pas compatibles, de pas de droit d’admins et d’utilisateurs contents avec IE (!)), amuse toi pour faire sauter les pubs pour tout le monde.
J’ai entendu parler de IE7pro, une extension pour IE (je ne savais même pas que ça existait). Je l’ai donc installé et désinstallé dans la foulée. C’est naze.
D’où l’idée de déterrer ce bon vieux privoxy que j’utilisais localement sur mon PC avant que “Adblock Plus” n’existe. Il peut se chaîner avec un autre proxy, notamment Squid, afin de filtrer toutes les pubs. (toutes = le mieux possible)

Allez zou, mise en place de la chose sur un serveur avec Squid, pour en faire profiter tout le monde.

Quelques remarques par rapport à Debian

Je ne connais pas trop le rythme d’update des règles de privoxy. Ce que j’en ai compris, c’est qu’elles sont intégrées au package privoxy. A mon sens, ça devrait être dissocié, par exemple dans le dépôt “volatile”.
Ca ne l’est pas. Et comme les pubs évoluent, j’ai un peu hésité.

EDIT : j’ai changé d’avis sur ce qui suit : j’ai pris la version officielle Debian. Cf. les commentaires

Finalement, j’ai opté pour la version packagée Debian sur le site de privoxy plutôt que la version officielle dans la “stable”. Moins pratique pour mettre à jour, mais je n’aimerais pas qu’un nouveau genre de pubs ne soit pas filtré ou à l’inverse, trop de coups de haches sur certains sites.
En “stable”, on est en 3.0.9 si je ne dis pas de bêtise, contre 3.0.12 en .deb sur le site.

J’ai aussi essayé de trouver une méthode facile pour convertir les expressions régulières d’Adblock Plus pour privoxy. J’ai lâché l’affaire. Si quelqu’un sait faire, ça peut être intéressant.

Quelques chiffres après 2 semaines d’utilisation

Histoire de mettre l’eau à la bouche. 100 personnes surfant raisonnablement ont vus (façon de parler) 10% de leurs requêtes bloquées par privoxy. C’est toujours ça d’économisé, mais c’est surtout le gain sur la pollution visuelle qui vaut le coup.
Je n’ai pas vu de différences sur quelques sites où j’avais l’habitude d’aller via “Firefox+AdBlockPlus” par rapport à “n’importe quel navigateur+privoxy sans adblock plus évidemment”.

Mise en place sur Debian

Installation

Installez donc le package Debian , précédemment téléchargé, avec la commande suivante :

dpkg -i privoxy_3.0.12-1_i386.deb

Paramétrage et tests de base

Tout se passe dans /etc/privoxy/config. Vous n’avez qu’une chose à modifier pour tester votre privoxy en direct :

listen-address  localhost:8118

Si le service est sur un serveur (et pas votre PC), changez “localhost” en “*” ou l’IP de la machine sur le LAN et relancez via /etc/init.d/privoxy restart
Bien sûr, il faut indiquer à votre navigateur d’utiliser le proxy sur cette machine, port 8118.
A la fin : faites bien attention à la valeur choisie (ou à vos règles de firewall si elles filtrent l’accès au serveur squid/privoxy), il ne faudrait pas qu’un utilisateur puisse adresser en direct privoxy en court-circuitant squid…

Interco avec Squid

La doc officielle de privoxy dit de chaîner dans l’ordre : PC -> squid -> privoxy
Il doit y avoir une raison, peut-être pour ne pas court-circuiter les éventuelles ACL de Squid, qui permettraient par exemple un certain traitement suivant l’IP source de la requête.
Bon bref, c’est donc au niveau de Squid qu’il faut paramétrer. Cherchez le mot “squid” dans la doc http://www.privoxy.org/user-manual/config.html. En résumé, ajoutez où il faut dans /etc/squid/squid.conf :

cache_peer 127.0.0.1 parent 8118 7 no-query
acl ftp proto FTP
always_direct allow ftp
never_direct allow all

Dans l’exemple, 127.0.0.1 indique que privoxy est sur la même machine que squid, sinon mettez l’IP de privoxy, et son port, par défaut 8118.
A noter que squid fait proxy FTP dans mon exemple, sinon adaptez.
Relancez squid, un /etc/init.d/squid reload doit suffire.

Pour voir les stats vite fait

http://p.p/
Ca peut servir pour configurer l’outil aussi, si vous avez activé ce qu’il faut
Evidemment, vous serez gentils de whitelister michauko.org. Je me suis pas tapé la mise en place de Google AdSense pour rien :) ouais bon, ça va… c’est pour financer un jour quelques mois de mon serveur…

A suivre

L’article SquidGuard, l’ami de Squid quand l’accès Internet est un peu trop surchargé par 99% d’inutile.

Vus : 374
Publié par Michauko : 64