Heute habe ich mich einmal damit beschäftigt, wie man Squid nicht nur als Proxy benutzt um die Zugriffe auf Webseiten zu beschleunigen sondern unter zuhilfenahme von SuqidGuard zu einem Adblocker umfunktioniert, der selbst auf Seiten wie „Bild.de“ funktioniert die mittlerweile ja damit begonnen haben um Ihre Werbeeinnahmen nicht zu gefährden Gegenmaßnahmen zu entwickeln.
Zunächst einmal bevor wir mit den eigentlichen Änderungen anfangen muss einige Grundlagen erledigt werden.
1 Installation von Squid (sofern nicht schon geschehen)
sudo apt install squid
2 Installation von SquidGuard
sudo apt install squidGuard
3 Erstellen des Verzeichnis adv
mkdir /var/lib/squidguard/db/adv
Nachdem nun diese Grundlagen erledigt sind geht es an die eigentlichen Änderungen und Vorarbeiten
Wir wechseln also zunächst in das Verzeichnis /tmp um dort zwei listen von AdblockPlus herunter zu laden und in das richtige Format zu Konvertieren.
cd /tmp
wget https://easylist-downloads.adblockplus.org/easylist.txt
wget https://easylist.to/easylistgermany/easylistgermany.txt
Jetzt müssen wir noch ein sed regex script erstellen mit folgendem Inhalt:
s/\r//g;
/Adblock/d;
/.*\$.*/d;
/\n/d;
/.*\#.*/d;
/@@.*/d;
/^!.*/d;
/^\[.*\]$/d;
s#http://#||#g;
s/\/\//||/g
s,[+.?&/|],\\&,g;
s/\[/\\\[/g
s/\]/\\\]/g
s#*#.*#g;
s,\$.*$,,g;
s/\\|\\|\(.*\)\^\(.*\)/\.\1\\\/\2/g;
s/\\|\\|\(.*\)/\.\1/g;
/^\.\*$/d;
/^$/d;
Sobald dies geschehen ist, können wir nun damit beginnen SquidGuard mit den beiden Listen von Adblock Plus zu füttern bzw. diese in eine für SquidGuard lesbare Form zu bringen.
cat easylist.txt | sed -f regex.sed > /var/lib/squidguard/db/adv/expressions
cat easylistgermany.txt | sed -f regex.sed > /var/lib/squidguard/db/adv/expressions
Nun bearbeiten wir zunächst in /etc/squid die Datei squid.conf indem wir an das Ende diese beiden Zeilen anfügen um Squid zu veranlassen sämtlichen Traffic durch SquidGuard zu leiten und auf Werbung zu prüfen.
url_rewrite_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf url_rewrite_children 5
In der Datei squidguard.conf im Verzeichnis /etc/squidguard/ löschen wir alles nach den folgende zwei Zeilen am Anfang der Datei:
dbhome /var/lib/squidguard/db
logdir /var/log/squid
Danach fügen wir folgende Zeilen nach den o.a. Zeilen in die Datei ein:
src my_network {
ip 192.168.1.0/24
}
dest adv {
expressionlist adv/expressions
redirect https://192.168.1.1/blank.png
}
acl {
my_network {
pass !adv any
}
default {
pass none
redirect https://192.168.1.1/blank.png
}
}
Selbstverständlich müssen wir natürlich die IP Adressen an unsere eigene IP anpassen. Diese sollte dem Rechner entsprechen auf dem Squid läuft. Die Datei blank.png muss in das Standard Verzeichnis von Apache (bei mir /var/www/html/) kopiert werden. Diese kann hier heruntergeladen werden: blank.png Sobald dies nun geschehen ist, lesen wir die expressions Datei in Squidguard ein und starten Squid neu:
squidGuard -C all
/etc/init.d/squid restart
Das war es auch schon ab sofort wird aller Traffic der über den Proxy Läuft auf Werbung überprüft und gefiltert.
Das einzige was somit noch zu tun ist, ist das wir natürlich den Proxy in unseren Browser eintragen müssen mit der Portnummer 3128. (Sofern die Portnummer in der Konfiguration nicht verändert worden ist)
Danke für das lesen dieses Beitrages über einen Kommentar oder eine Bewertung würde ich mich sehr freuen.
Update: Eine gute Liste mit fertigen Filtern kann hier bei Shallalist gefunden werden.
Du musst angemeldet sein, um kommentieren zu können.