IPTABLES: allen Traffic auf transparenten Proxy umleiten

Tobias Krais tux-spam at design-to-use.de
Mon Nov 3 08:07:26 GMT 2008


Hi zusammen,

ich habe auf localhost einen transparenten Proxy laufen und bisher den
Traffic von Port 80 für bestimmte Benutzer wie folgt auf meinen Proxy
umgeleitet:
-----%<-----
iptables -t nat -A OUTPUT -p tcp --dport 80 -m owner --uid-owner tobias
-j REDIRECT --to-port 8080
-----%<-----
Allerdings können nun alle User auf ihren neuen Gastaccount umschalten
und dann frei ins Netz. Leider lässt sich der Gastaccount nicht durch
iptables so umleiten wie alle anderen Accounts. Deshalb will ich allen
Traffic, der auf meiner Maschine von irgend einem Nutzer außer root
produziert wird von Port 80 auf Port 8080 umleiten. Leider bin ich kein
iptables Experte und bekomme das auch nach Stunden googeln und probieren
nicht hin. Könnt ihr mir helfen? Hier mein letzter nicht
funktionierender Versuch:
-----%<-----
# Traffic von root akzeptieren
iptables -t nat -A OUTPUT -p tcp --dport 80 -m owner --uid-owner root -j
ACCEPT
# ... alle anderen Benutzer auf Port 8080 umbiegen
iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-port 8080
-----%<-----
Bei diesem Versuch meckert iptables zwar nicht, aber Squid sagt mir:
-----%<-----
 The following error was encountered:

    * Unable to forward this request at this time.

This request could not be forwarded to the origin server or to any
parent caches. The most likely cause for this error is that:

    * The cache administrator does not allow this cache to make direct
connections to origin servers, and
    * All configured parent caches are currently unreachable.
-----%<-----
Es scheint, dass auch Squid nicht mehr raus darf...

Jemand eine Idee? Vielen Dank im Voraus!

Liebe Grüße,

Tobias