Tinyproxy als Paket für DS-MOD

mathisdt

Neuer User
Mitglied seit
29 Jan 2006
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Hallo!
Gestern habe ich das Bedürfnis nach einem transparenten Proxy auf der Fritzbox verspürt, daraus ist dann das unter http://zephyrsoftware.sf.net/?q=fritzbox/tinyproxy herunterzuladende Paket für DS-MOD geworden.
Bei mir läuft es gut (DS-MOD 0.2.7 auf Fritz!Box Fon), aber bitte testet es und postet aufgetretene Fehler!

Viele Grüße,
Mathis :D

Weitere Stichwörter für die SuFu: transparent transparenter proxying iptables
 
Schön, dass es funktioniert!

Mir sind diese Zeilen in der rc.tinyproxy aufgefallen:
Code:
/usr/sbin/iptables -t nat -A PREROUTING -i lan -p tcp --dport 80 -j REDIRECT --to-port $TINYPROXY_PORT
/usr/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port $TINYPROXY_PORT
Was ist mit usb und wlan? Läuft das nicht alles über die Lan-Bridge, wenn sich die Box im Bridging-Modus befindet?

Seiten fürs Webinterface kommen bestimmt noch? ;-)

MfG Oliver
 
olistudent schrieb:
Schön, dass es funktioniert!
Tut es wahrscheinlich noch nicht zu 100%... die Fritz!Box Weboberfläche ist ganz schön langsam geworden, und "free" zeigt auch nur noch ca. 300kB freien RAM auf der Box an - oder ist das normal?

olistudent schrieb:
Mir sind diese Zeilen in der rc.tinyproxy aufgefallen:
Code:
/usr/sbin/iptables -t nat -A PREROUTING -i lan -p tcp --dport 80 -j REDIRECT --to-port $TINYPROXY_PORT
/usr/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port $TINYPROXY_PORT
Was ist mit usb und wlan? Läuft das nicht alles über die Lan-Bridge, wenn sich die Box im Bridging-Modus befindet?
Da habe ich keine Ahnung von, ich habe nur eine kleine süße Fritz!Box Fon. Nix mit WLAN und anderen Spielereien. Bitte sagt mir, wie es besser bzw. richtig ist! Außerdem, wenn alles über das Interface "lan" reinkommt, ist das doch genau richtig! Das ist ja der Sinn eines transparenten Proxies, dass er allen Web-Traffic (--dport 80) durch die Mangel dreht, oder nicht? Sollte ich die "eth0" Zeile löschen, ist die überflüssig?

olistudent schrieb:
Seiten fürs Webinterface kommen bestimmt noch?
Erstmal nicht, es geht doch auch so, und außerdem kann jeder die Bedienung von vi lernen (ich will doch niemandem diesen Spaß rauben ;) )...

Viele Grüße,
Mathis
 
mathisdt schrieb:
Tut es wahrscheinlich noch nicht zu 100%... die Fritz!Box Weboberfläche ist ganz schön langsam geworden, und "free" zeigt auch nur noch ca. 300kB freien RAM auf der Box an - oder ist das normal?
Mathis
also meine 7170 spuck mir die weboberfläche noch genau so aus, der speicher is allerdings nen bischen eng geworden... (dropbear,dnsmasq und firewall drinn) müssen da wirklich alle auf deiner page beschrieben sachen dazu???
Code:
free
              total         used         free       shared      buffers
  Mem:        30736        27744         2992            0         3028
 Swap:            0            0            0
Total:        30736        27744         2992
mathisdt schrieb:
Erstmal nicht, es geht doch auch so, und außerdem kann jeder die Bedienung von vi lernen (ich will doch niemandem diesen Spaß rauben ;) )...

lol
 
heini66 schrieb:
also meine 7170 spuck mir die weboberfläche noch genau so aus, der speicher is allerdings nen bischen eng geworden... (dropbear,dnsmasq und firewall drinn) müssen da wirklich alle auf deiner page beschrieben sachen dazu???
Code:
free
              total         used         free       shared      buffers
  Mem:        30736        27744         2992            0         3028
 Swap:            0            0            0
Total:        30736        27744         2992
Kunststück - Deine Fritz!Box hat auch doppelt so viel RAM wie meine! :rolleyes:

Ich weiß nicht genau, welche libs mit reinmüssen, mindestens aber die Kernel-Module ipt_REDIRECT, iptable_nat, ip_conntrack und ip_tables in "net". Über mehr Infos würde ich mich freuen.

Mathis
 
ptweety schrieb:
Hast du dazu auch die Makefiles und Config.in?
Nein, habe ich nicht. Das kompilierte Binary habe ich mir von hier heruntergeladen und dann mit den Original-Konfigurationsdateien zu einem Paket ergänzt. Wahrscheinlich kann olistudent Dir helfen!

Viele Grüße,
Mathis

EDIT: Mein ds-0.2.7 wollte die Toolchain nicht bauen, obwohl ich texinfo habe, irgendwann habe ich aufgegeben... :-(
 
in deinem tutorial steht, dass man iptables support haben müsse.
Heißt das, dass ich alle Suboptionen unter Iptables aktivieren müsste? Das wären ja dann eine gnaze Menge
 
xsapling schrieb:
in deinem tutorial steht, dass man iptables support haben müsse.
Heißt das, dass ich alle Suboptionen unter Iptables aktivieren müsste? Das wären ja dann eine gnaze Menge
Ich habe das der Einfachheit halber so gemacht, dass ich alle iptables-Module aktiviert habe. Wenn Du herausfindest, wie die minimale Modulzusammensetzung lautet, wäre ich für eine Nachricht dankbar, aber selbst alle Module zusammen brauchen zusammen nur etwa 200 kB im Image, was meines Erachtens noch tragbar ist.

Mathis
 
Ein sehr geiles Feature. Ich würde mir gerne darüber einen Proxy aufbauen, der Werbung aus Internetseiten filtert. In FF hab ich Adblock, aber der IE ... und ausserdem muss ich dann nur ein File warten und nicht 5. Nebenbei kann man damit auch schön regulieren, was im Netzwerk unterwegs sein soll.

Im Moment kann man den Proxy leider noch nicht für SSL Seiten nutzen. Irgendwas scheint da zu fehlen. Der Browser fällt dann einfach zurück auf DIRECT. Ausserdem wäre es toll, wenn mir einer sagen könnte, wie ich das Konfigurationsfile (für die Clients - bin halt faul) auf die Fritzbox lege, so dass ich Zugriff von jedem Rechner hab und kein Passwort für den DS-Mod brauche. Ich hab zwar vorhin mal etwas getestet, aber hab irgendwie den Fehler nicht gefunden. Meistens bekam ich eine 404 Meldung von der Fritzbox (obwohl die Dateien da waren).

Auf jeden Fall sollte das mit in den DS Mod und weiter ausgebaut werden. Ohne Frontend suckt das nämlich noch etwas *g*. Auf meiner 7170 habe ich übrigens weder Performance noch Ram Probleme. Bisher bin ich also sehr glücklich damit. :rock:
 
S.Oliver schrieb:
Im Moment kann man den Proxy leider noch nicht für SSL Seiten nutzen. Irgendwas scheint da zu fehlen. Der Browser fällt dann einfach zurück auf DIRECT.
Schau mal in die tinyproxy.conf, da sind die Ports 443 und 563 explizit für CONNECT erlaubt, damit SSL ungefiltert passieren kann. Abhilfe: Einfach die beiden Zeilen
Code:
ConnectPort 443
ConnectPort 563
umbasteln zu der einen Zeile
Code:
ConnectPort 0
(ich weiß allerdings nicht, ob dann noch SSL-Verbindungen möglich sind, habe es noch nicht probiert).

S.Oliver schrieb:
Ausserdem wäre es toll, wenn mir einer sagen könnte, wie ich das Konfigurationsfile (für die Clients - bin halt faul) auf die Fritzbox lege, so dass ich Zugriff von jedem Rechner hab und kein Passwort für den DS-Mod brauche. Ich hab zwar vorhin mal etwas getestet, aber hab irgendwie den Fehler nicht gefunden. Meistens bekam ich eine 404 Meldung von der Fritzbox (obwohl die Dateien da waren).
Ich würde das Samba-Paket von DS-MOD dafür verwenden, hast Du das schon probiert?

S.Oliver schrieb:
Auf jeden Fall sollte das mit in den DS Mod und weiter ausgebaut werden. Ohne Frontend suckt das nämlich noch etwas *g*.
Das Frontend kommt frühestens im September, tinyproxy hat noch nicht großartig Klickibunti dabei. Soll erstmal nur funtionieren.

Grüße,
Mathis
 
ich habe da einen kleinen Bug im tinyproxy-Paket entdeckt. Es tritt auf, wenn ich auf der Seite des DS-Mod unter dem Menüpunkt Dienste den tinyproxy neustarten möchte. Bei Betätigen des Reboot-Buttons rührt sich nichts mehr in der Oberfläche. Kurz um, diese bleibt hängen. Der Dienst selber, wird jedoch rebootet.
 
mathisdt schrieb:
Ich würde das Samba-Paket von DS-MOD dafür verwenden, hast Du das schon probiert?

kann man dass denn nicht auch ohne Samba machen?
Wo ist denn die Datei für die Passwortabfrage verortet?
 
xsapling schrieb:
ich habe da einen kleinen Bug im tinyproxy-Paket entdeckt. Es tritt auf, wenn ich auf der Seite des DS-Mod unter dem Menüpunkt Dienste den tinyproxy neustarten möchte. Bei Betätigen des Reboot-Buttons rührt sich nichts mehr in der Oberfläche. Kurz um, diese bleibt hängen. Der Dienst selber, wird jedoch rebootet.
Bei mir geht's ganz normal. Ich weiß nicht, warum es bei Dir Probleme macht. Benutzt Du die neueste Version 1.7.0-2 ? Bei älteren war das init-Skript noch etwas buggy.
 
Naja, ich hab die Konfigurationsdatei jetzt auf http://fritz.box:81/cgi-bin/proxy.cgi gelegt. Grundsätzlich ist das ja auch keine große Sache. Die Datei muss ja nur sowas ausgeben:

Code:
function FindProxyForURL(url, host) {
        if (url.substring(0,5) == "http:" || url.substring(0,6) == "https:") {
                return "PROXY fritz.box:8080;";
        }
        else {
                return "DIRECT";
        }
}

Also bei mir funktioniert es, aber ich hab dann auch nicht immer Lust, potentiellen Nutzern das Passwort für den DS Mod zu geben. Samba wäre natürlich auch ne Möglichkeit, aber da komm ich über WLAN nicht dran (und das ist auch gut so).

So wie ich die Config verstanden hab, müssen diese ConnectPort Zeilen da drin stehen, damit eine SSL Verbindung möglich ist. :confused:
 
Wie wär's mit einem eigenen Webserver für Deine Leute? mini_httpd ist sehr klein und wahrscheinlich ideal für Deinen Einsatzzweck. Hier eine kleine Anleitung zum Testen des ganzen (ohne Änderung der Firmware):
  • mini_httpd-1.19.tar nach /var/tmp auf die Fritzbox laden und dort entpacken
  • Verzeichnis /var/tmp/site erstellen (Fehlerseiten können nach /var/tmp/site/errors gepackt werden, z.B. error404.html)
  • Server starten mit
    Code:
    /var/tmp/mini_httpd-1.19/mini_httpd -p 88 -d /var/tmp/site -u root
    (die Warnung wegen root ignorieren)
  • Testen über 192.168.2.1:88

Mathis
 

Anhänge

  • mini_httpd-1.19.tar
    360 KB · Aufrufe: 13
Hi,
bin totaler Newbie. Wie kann ich den eine Datei auf die Fritz!box laden um den mini_http server zu installieren ? Geht das mit Telnet oder wie ?

tatatataaa
 
Am einfachsten geht's wenn Du DS-MOD mit dem Paket "dropbear" installiert hast. Dann kannst Du ganz einfach Dateien kopieren (unter Linux):
Code:
scp lokale-datei.tar [email protected]:/var/tmp/

Windows-Nutzer müssen mehr Aufwand treiben, zum Beispiel WinSCP installieren oder so.

Mathis
 
mathisdt schrieb:
Wie wär's mit einem eigenen Webserver für Deine Leute? mini_httpd ist sehr klein und wahrscheinlich ideal für Deinen Einsatzzweck. Hier eine kleine Anleitung zum Testen des ganzen (ohne Änderung der Firmware):
Das ist gar nicht nötig. Es reicht auch, wenn man einfach httpd verwendet. Dieser Server ist schon drauf, da er für das Mod-Interface verwendet wird.


Ausgabe von httpd --help
httpd: option requires an argument -- h
BusyBox v1.1.2 (2006.07.03-06:33+0000) multi-call binary

Usage: httpd [-c <conf file>] [-p <port>] [-r <realm>] [-m pass] [-h home] [-d/-e <string>]

Listens for incoming http server requests.

Options:
-c FILE Specifies configuration file. (default httpd.conf)
-p PORT Server port (default 80)
-r REALM Authentication Realm for Basic Authentication
-m PASS Crypt PASS with md5 algorithm
-h HOME Specifies http HOME directory (default ./)
-e STRING Html encode STRING
-d STRING URL decode STRING
Also einfach auf nem Stick oder im /var/tmp ein Verzeichnis für die Proxy-Config erstellen, dies stellt dann das Verzeichnis dar, dass als Webserver-Home verwendet wird. Dort noch ein Verzeichnis cgi-bin erstellen und da die CGI-Datei reinkopieren. Dann reicht ein einfaches
httpd -h WEBSERVER_HOME
Liegt die Datei in /var/tmp/proxywebserver/cgi-bin/proxy.cgi, muss es z.B. so aussehen:
httpd -h /var/tmp/proxywebserver/cgi-bin/proxy.cgi
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,149
Beiträge
2,246,980
Mitglieder
373,668
Neuestes Mitglied
Stripi
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.