PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Proxyserver mit Sperren (Ad-networks usw) und Cache einrichten



Nelo
07.01.13, 14:56
Hi.

Ich möchte einen transparenten Proxy Server aufsetzen.
Der Proxy soll die ganzen großen Ad-Netzwerke aussperren und statt dessen eine "weiße Seite" ausliefern.

Ich könnte es nun über verschiedene Wege machen:
1. Über den Proxy selber (Redirect oder so)
2. DNS Sperre (also z.B. im BIND)
3. IP Sperre (IP-Tables Regeln)

Nachteile der Wege:
1. Werbung, die über andere Ports als 80 ausgeliefert wird, kommt trotzdem durch
2. Werbung, die über die IP Adresse abgerufen wird, kommt trotzdem durch
3. Adnetzwerke mit vielen IPs bzw wechselnden IPs sind schwer zu filtern.

Nun, welchen Weg würdet ihr machen?

Wichtig ist auch noch, dass an der Stelle der Banner usw dann keine Fehlermeldung erscheint, sondern einfach nur ein leeres, weißes Feld.
Also müsste ich die Abfragen auf einen eigenen Webserver umlenken, der dann einfach eine leere Datei ausliefert.


Ein weiteres Problem:
Der Proxy läuft auf einem kleinen Nettop mit nur einer Netzwerkkarte.
Ich bekomme es irgendwie nicht hin, mit iptables zu filtern, wenn ich eth0.1 und eth0.2 verwende. Mit VLAN ginge es, hab aber kein VLAN.
Eventuell könnte ich auch nen Bridge Interface einbauen, an welches ich dann eth0 binde. Dann könnte ich zwischen etho und br0 filtern.
Oder wie könnte man das am Besten hin bekommen?


Zwei Netzwerkkarten kommen nicht in Frage, da der Nettop nur einen MiniPCIe Anschluss hat und ich eine MiniPCIe Netzwerkkarte nur mit "Verbasteln des Gehäuses" reinbekomme, bzw ich über eine USB Netzwerkkarte gehen müsste.
VLAN wäre eine Option, wenn ich einen VLAN fähigen Switch hätte.

Dass man die Kiste umgehen kann, wenn man einfach den Hauptrouter als default gateway einträgt, ist nicht Relevant. Das ist sogar recht praktisch, um ihn bedarfsweise ganz einfach umgehen zu können.


Achja: Ich möchte neben Adnetzwerken auch noch diverse Micropayment Dienste sperren. (so dass man bei irgendwelchen facebook games oder browsergames kein Zeug mehr kaufen könnte)

Gib es eigentlich irgendwelche Listen für Micropayment Dienste?
Für Ad Netzwerke gibts die ja mehrfach. zur Not nehm ich einfach die vom Firefox Addon Adblock Plus, die ist gut gepflegt, müsste sie nur konvertieren. Aber für Micropayment hab ich noch keine gesehen.




Als nächstes soll der Proxy auch noch als Cache dienen.
In der heutigen Zeit mit den schnellen Internetzugängen und viel dynamischem Content ist das Caching eigentlch unnötig.
Aber ich würde gerne die "größeren" Sachen cachen. Wie z.B. Bildelemente von Webseiten.
Oder auch Youtube Videos. Und vor Allem Software Updates usw.

Also hab ich als minimale cache größe 1kB eingestellt und als maximale Größe 1GB

Bei den Youtube Videos beiße ich mir momentan noch die Zähne aus, die cached der einfach nicht. Ist das überhaupt möglich?



Vielen Dank für Tipps und Anregungen.

Huhn Hur Tu
07.01.13, 16:03
Was ist das Ziel einer solchen paranoiden Uebung, fuer eine Firma, oder zum Schutz vor Kindern die aus versehen irgendwo draufklicken.

Aussperren ist immer das letzte Mittel wenn nichts mehr hilft, verantworlicher Umgang mit dem Inet wird damit nicht erreicht.

Sowas als Plugin zum Beispiel:
http://www.meerwissen.de/index.php?option=com_content&view=article&id=22:werbung-mit-squid-unterdrn&catid=13:linux-notizen&Itemid=27

Ich bevorzuge Ad-Block und Ghostery als FF Plugins, da bekomme ich nur wenig Werbung mit und den Rest erledigt meine /etc/hosts.
Aber Vorsicht wenn man zuviel blockt geht natuerlich auch Funktionalitaet floeten.

Gruss Stefan

Huhn Hur Tu
07.01.13, 16:07
Bei den Youtube Videos beiße ich mir momentan noch die Zähne aus, die cached der einfach nicht. Ist das überhaupt möglich?


Nein das denke ich nicht dass das Moeglich ist da selbst local der File angelegt wird und der Filesystemzeiger sofort entfernt wird, und nur solange dein Browser direct auf den File im Filesystem zeigt funktioniert das, sobald man den Tab schliesst ist der File nicht mehr benutzbar, da nicht mehr im Filesystem. Mit spaessen wie den unlink zum File zu verhindern waere das Moeglich, ist aber mehr als laestig.

Gruss Stefan

DrunkenFreak
07.01.13, 16:48
Der Cache hält nur eine bestimmte Zeit vor. Softwareupdates und ähnliches würde ich da erst garnicht mit reinnehmen. Das sind Sachen, die einmalig runtergeladen werden. Für die Windows Updates gibt es WSUS, viele andere Programme haben Deltaupdates im Programm.

Nelo
07.01.13, 16:59
Hi.

Also Sinn der Übung ist einfach, das Gröbste an Werbung Zentral auszufiltern, so dass es auch ohne Plugin, bzw egal welchem Browser funktioniert. (Auch mit Embedded Browsern usw)

Die ganz großen Ad networks hab ich schon gefiltert, mit ca 20 URLs ist das Gro an Werbung schon verbannt. Schönheitsfehler ist derzeit noch, dass man statt des Banners nun teilweise Reste einer Fehlermeldung sieht. Muss ich noch ausbügeln.

Die Werbung nerft halt einfach.
Und wenn die Werbung gar nicht erst da ist, kann sie auch gar nicht ihre Wirkung entfalten (Gelüste wecken / Zu käufen anregen)

2. Die Micropayment Sachen wollte ich aus dem gleichen Grund blocken.
Ein paar Micropayment Anbieter wie z.B. mpass hab ich schon geblockt, auch das Facebook eigene Payment. Damit eben keine Münzen oder sowas bei Facebook Games via Handyrechnung / Telefonrechnung gekauft werden. hier 1,99 Euro, da 2,99 Euro, Ruckzuck sind 100 Euro Rechnung da.

Ich kann mich beherrschen, andere Personen im Haushalt aber nicht.

Und das Problem ist: Selbst wenn ich z.B. Premiumdienste bei meinem Telefonanbieter sperren lasse, bringt das nicht viel. Wenn sie es über ihr eigenes Handy macht, gehts trotzdem vom "Familientopf" ab (Für den Pott ist es also egal, wer es zahlt)

Zu Gute kommt mir bei einer Sperre die Tatsache, dass sie am Rechner keinerlei Geduld hat. Wenn z.B. die Payment Seite nicht geht, wird nach 5-10 Sekunden weg geklickt, kurz über den Rechner geflucht, und das Gelüste ist verflogen.

Ich kann sogar offen sagen, dass ich es gesperrt habe. Solange das Gelüste nicht da ist, kann man vernünftig drüber reden und sich auch drauf einigen dass es Geldverschwendung ist. Aber während dem Gelüste geht das eben nicht. (ach komm, sind doch nur 2,99 Euro usw)

Problem sind aber auch nur diese Browsergames oder Onlinekäufe, wo man mit sehr wenigen Klicks zum Kauf kommt. Wenn es "Aufwändiger" ist, z.B. selber Geld überweisen, Account anlegen usw, dann ist die "Hürde" schon so groß, dass die Gelüste nicht siegen.

3. Youtube hätte ich gerne gecached, damit nicht ständig 30 mal die gleichen Videos über die Leitung gehn, wenn irgendeine Playlist in Endlosschleife dudelt (1 Video ist ca 30-60 MB)
Die Softwareupdates hätte ich ebenfalls gerne gecached, damit nicht so viel über die Leitung geht.
Denn wir haben vom Provider her nen "Softquota" bzw ne "Drossel", und wenn die aktiv wird, merkt man das an der Latenz (Drosselung erfolgt scheinbar durch Verzögerung von Ack Packeten oder so)

nopes
07.01.13, 21:31
Youtube:
squid2.7!!! http://wiki.squid-cache.org/ConfigExamples/DynamicContent/YouTube/

Für das andere ist wohl eher eine Therapie angebracht ;)

Nelo
07.01.13, 22:38
Danke.
Youtube zu cachen scheint also möglich, aber nicht ganz trivial zu sein.


Bzgl Werbung:
Um die Werbung im "Deutschsprachigen" Internet weitestgehend weg zu bekommen, braucht man wirklich nicht allzu viele URLs. Mit diesen 15 Stück hat man schon fast alles weg, ohne "Funktionalität" einzubüßen. Auch einiges an Webtracking wird (hoffentlich) unterbunden.

doubleclick.net
doubleclick.com
plista.com
ivwbox.de
adnxs.com
google-analytics.com
smartadserver.de
pigjar.com
*.fbcdn.net
connect.facebook.net
heias.com
atdmt.com
uimserv.net
*.uimserv.net
ui-portal.de



Um das Micropayment bei den Facebookspielen und Browsergames "abzuschießen" habe ich folgende URLs geblockt:
daopay.com
zpay.static.zynga.com
mpass.com
mpass.de
mopay.com
trialpay.com
facebook.com/dialog/pay


Eine Therapie ist denk ich nicht notwendig. so schlimm ist es noch nicht mit der Kaufsucht. Nur diese Browsergames sind echt übelstes Marketing. Man wird regelrecht dazu gedrängt, da was zu kaufen. Bei den kleinbeträgen und der "einfachen Abrechnung" ist die Hemmschwelle einfach zu gering. Und eine soziale Komponente (man will besser sein als andere) kommt auch noch dazu.

Außerdem ist ihr das auch klar was sie macht und sie bereut es nachher auch. Nicht wegen mal 2,99 Euro. Aber wenn dann nachher 70-100 Euro von Browsergames auf der Rechnung stehen, schimpft sie auch übel über die "bösen abzocker".
Dann heisst es "Ich kaufe da nix mehr" oder "nur einmal die Woche" aber aus dem guten Vorsatz wird dann doch nix.

Egal back 2 topic

Momentan habe ich die Sperre durch gefakte DNS Einträge gemacht, die dann auf den lokalen Webserver verweisen. Auf dem Webserver wird dann eine 0 Byte Datei ausgeliefert.
Ein gefakter DNS Eintrag sperrt z.B. auch https mit aus. Im Squid selber konnte ich so ohne weiteres kein https filtern.
Das war die einfachste Methode.

IP Sperren klappen noch nicht, weil der iptables noch nicht geht. Da muss ich mich nochmal mit befassen.

Versuche es jetzt erst mal mithilfe eines Bridge Interface anstatt einem Alias.
Wenn ich eth0 auf br0 und br1 lege und dann zwischen den bridge interfaces filtere, sollte es ja gehen, oder?


Grüße

pibi
08.01.13, 10:41
Bzgl Werbung:
Um die Werbung im "Deutschsprachigen" Internet weitestgehend weg zu bekommen, braucht man wirklich nicht allzu viele URLs.Ich verwende dafuer Privoxy (http://www.privoxy.org). Funktioniert prima und ist weitgehend konfigurierbar.

Allerdings muss dafuer eine Maschine im lokalen Netz permanent laufen und die Clients muessen zwingend ueber diesen Proxy geleitet werden.

Gruss Pit.

Nelo
09.01.13, 00:00
Privoxy ist auch nett. Danke für den Tipp. Muss ich mir mal genauer ansehen.