Gesamten webverkehr über Privoxy mit IP-Tables?

sphings

Mitglied
Mitglied seit
3 Okt 2004
Beiträge
522
Punkte für Reaktionen
0
Punkte
16
Hallo,

ich würde gerne den surfer in meinem Netz eine Kleine Hürde einbauen.
Privoxy habe ich soweit konfiguriert und funktioniert auch.
Jetzt möchte ich ihn als Zwangsproxy einrichten.
DFafür habe ich IP-Tables mit ins freetz genommen.
Leider kenne ich mich mit IP-Tables überhaupt nicht aus.
Kann mir jemand haelfen IP-Tables soeinzurichten, das alle angeschlossenen PCs den Privoxy als Zwangsproxy bekommen?

Gruß

sphings
 
Als 1. musst Du aufpassen, dass Du dich mit iptables nicht von der Box aussperrst. Evtl. die richtige recovery zur Verfügung haben.

Du kannst entweder die default Policy der FORWARD chain auf DROP setzen (iptables -P FORWARD DROP) oder die default Policy der FORWARD chain auf ACCEPT lassen, und das Netzwerk deiner Clients in der FORWARD chain blocken (nicht durchlassen), z. B.:
Code:
iptables -A FORWARD -s 192.168.???.0/24 -d 0/0 -j DROP
Wenn Du replaced kernel hast, kannst Du als target (-j) auch REJECT nehmen, ist besser als DROP.
Mit trickle und Privoxy kannst Du deinen Clients zusätzlich auch die Bandbreite limitieren (traffic shaping).
 
Da ich ja nicht einfach nur was per cnp übernehmen will, sondern auch verstehen möchte wie es funktioniert, wäre es nett, wenn du das mal auf deutsch für nicht mit iptables umgehkönner übersetzen könntest.
Woher weiß denn die box mit der zeile, das alles jetzt über privoxy laufen soll?

Das mit dem trafficshaping klingt auch sehr interessant, wie geht das denn?

Gruß

sphings
 
2erlei Dinge: Zum einen ist dein Charset kaputt, zum anderen ist dies kein iptables-hilfeforum. Wenn du darüber mehr lernen willst, gibt es sicherlich bessere Adressen als das Freetz-Forum, da wir das nur mit bauen und auf die Box packen, die Regeln aber jemand anders implementiert hat.
 
Woher wei�denn die box mit der zeile, das alles jetzt über privoxy laufen soll?
Die Zeile sagt der Box nur, dass sie Traffic blocken oder durchlassen soll. Das es über den Privoxy gehen muss, wird in der Konfiguration der Clients erledigt. Ohne Privoxy lässt die Box nichts mehr durch.
Das mit dem trafficshaping klingt auch sehr interessant, wie geht das denn?
Mit trickle und manuellem Start von privoxy. Z. B. so:
Code:
trickle -s -u 1000 -d 1020 /var/mod/etc/init.d/rc.privoxy start
 
Code:
/var/mod/root # iptables -t nat -A PREROUTING -p tcp -d 0/0 --dport 80 -j ACCEPT
/var/mod/root # iptables -t nat -A PREROUTING -p tcp -d localhost --dport 80 -j ACCEPT
/var/mod/root # iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8118
/var/mod/root #

Ist auch auf der freetz config seite zu sehen.
IPTABLES service läuft.
Privoxy auch.
Aber irgendwie funktioniert es trotzdem nicht ...
Jemad noch ne idee?

Gruß

sphings
 
[...]
IPTABLES service läuft.
Privoxy auch.
Aber irgendwie funktioniert es trotzdem nicht ...
Jemad noch ne idee?

Wenn Du es auf die komplizierte Art und Weise machen willst, dann brauchst Du
Code:
accept-intercepted-requests 1
in der Konfigurationsdatei von Privoxy.
 
was ist denn die einfachere methode?

wie komme ich denn an die config datei von privoxy ran?

Gruß

sphings
 
ah nicht auf der box ;) dann kann ihc ja lange suchen ...

stimmen dienn zumindest die ip tables ...
Ich wollte es client configurationsfrei machen ...
 
ne ich hatte nur nach der config gesucht ...

auf dem freetz linux habe ich aber nur:

Code:
freetz@freetz-linux:~/freetz-1.1.2/make/privoxy$ ls
Config.in  external.in  files  Makefile.in  privoxy.mk
 
Code:
:~/myfreetz/freetz4468/freetz-trunk> find make/privoxy -iname 'privoxy_conf'
make/privoxy/files/root/etc/default.privoxy/[B]privoxy_conf[/B]
 
SO habe ich in die config geschrieben, und das image wieder neu erstellt.
Habe es eben geflasht und es funktioniert trotzdem nicht ...
die seite wird einfach ganz normal aufgerufen und nicht über privoxy geleitet ...

mit

Code:
iptables -t nat -A PREROUTING -s 192.168.181.0/24 -d 0/0 -p tcp --dport 80 -j REDIRECT --to-port 8118

kommt nur "client has send invaled header" für alle websites ...
 
Schau mal mit "lsmod" nach dem ipt_REDIRECT-Modul und erstelle eine log-Regel in iptables und schau mit logread was mit den Ports 80 und 8118 los ist:
Code:
iptables -t nat -A PREROUTING -m limit --limit 180/h -m state --state NEW -j LOG --log-prefix ***Port_80-connection:
 
Code:
/var/mod/root # lsmod
Module                  Size  Used by    Tainted: P
xt_tcpudp               2743  4
xt_MARK                 1910  0
xt_mark                 1445  0
xt_state                1603  0
ipt_REJECT              3581  0
ipt_REDIRECT            1562  2
ipt_MASQUERADE          2579  0
ipt_iprange             1494  0
ipt_LOG                 7037  0
ip_conntrack_ftp        6519  0
iptable_filter          2158  0
iptable_nat             5837  1
ip_tables              11822  2 iptable_filter,iptable_nat
x_tables               13427  11 xt_tcpudp,xt_MARK,xt_mark,xt_state,ipt_REJECT,ipt_REDIRECT,ipt_MASQUERADE,ipt_iprange,ipt_LOG,iptable_nat,ip_tables
ip_nat                 15833  3 ipt_REDIRECT,ipt_MASQUERADE,iptable_nat
ip_conntrack           46260  5 xt_state,ipt_MASQUERADE,ip_conntrack_ftp,iptable_nat,ip_nat
rtc_sysfs               2704  0
rtc_proc                3847  0
rtc_dev                 5493  1
sch_sfq                 5619  4
sch_llq                 9102  1
sch_tbf                 5664  1
userman                33702  2
wlan_scan_ap            8481  1
wlan_acl                4090  1
wlan_wep                6114  0
wlan_tkip              12521  0
wlan_ccmp               8524  2
wlan_xauth              1182  0
ath_pci               152567  0
ath_rate_atheros       61891  1 ath_pci
wlan                  229944  9 wlan_scan_ap,wlan_acl,wlan_wep,wlan_tkip,wlan_ccmp,wlan_xauth,ath_pci,ath_rate_atheros
ath_dfs                39236  2 ath_pci,wlan
ath_hal               237540  4 ath_pci,ath_rate_atheros,ath_dfs
avm_ath_extensions     41518  4 ath_pci,ath_rate_atheros,wlan,ath_hal
usblp                  13578  1
kdsldmod              873597  7 userman
musb_hdrc              36999  0
usbcore               125996  4 usblp,musb_hdrc
dect_io                21126  2
avm_dect              390881  1 dect_io
capi_codec            142935  0
isdn_fbox_fon5        761750  0
pcmlink               262925  3 avm_dect,capi_codec,isdn_fbox_fon5
rtc_avm                 6573  2 pcmlink
rtc_core                7083  4 rtc_sysfs,rtc_proc,rtc_dev,rtc_avm
rtc_lib                 2712  3 rtc_sysfs,rtc_avm,rtc_core
dsl_ur8               173781  1
jffs2                 115345  1
Piglet_noemif          36534  0
led_modul_Fritz_Box_7270    63229  9 ath_hal

Code:
/var/mod/root # iptables -t nat -A PREROUTING -m limit --limit 180/h -m state --state NEW -j LOG --log-prefix ***Port_80-connection:
iptables: No chain/target/match by that name

sorry aber was iptables angeht bin ich nicht so gut ...
 
OK, loggen geht nicht weil das ipt_limit-Modul bei dir nicht vorhanden ist. Ich denke es liegt auch nicht an iptables. Schau dir die Konfiguration vom Privoxy noch einmal an.
 
Ich habe die config mal hochgeladen.
 

Anhänge

  • 1.png
    1.png
    21.4 KB · Aufrufe: 16
  • 2.png
    2.png
    17.3 KB · Aufrufe: 13
Poste mal die Ausgabe von:
Code:
cat /var/tmp/flash/privoxy

EDIT:
Sorry. Die Ausgabe von:
cat /var/mod/etc/privoxy/config
 
Code:
/var/mod/root # cat /var/tmp/flash/privoxy
cat: can't open '/var/tmp/flash/privoxy': No such file or directory

sollte ich mir jetzt gedanken machen?

______________
EDIT

Code:
/var/tmp/flash #  cat privoxy.diff
export PRIVOXY_DENY_ACCESS='192.168.181.100 www.google.de'
export PRIVOXY_LISTEN_ADDRESS='192.168.181.1'
export PRIVOXY_PERMIT_ACCESS='127.0.0.1
192.168.181.0/24'
/ # find -name privoxy
./etc/privoxy
./usr/sbin/privoxy
./var/mod/etc/privoxy
./var/mod/pkg/privoxy
 
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.