• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

SQUID und Server der sich selbst als Proxy nutzt

Manuel

Newbie
Hallo,

Problemstellung:

Über ein Portal (www, eigener server) sollen Daten von einem Heimrechner mit hoher Sicherheitsstufe nachgeladen werden (HTML etc), in diesen Seiten befinden sich bestimmte Tags die ersetzt werden sollen.

Lösungsansatz:

SQUID als Transparenter Proxy auf den Portalserver, dieser muss sich selbst dazu "zwingen" seine eigenen HTTP Anfragen auf den Heimrechner zu senden.

----

Mein Problem besteht nun darin:

a) Ist das überhaupt möglich (in verbindung mit IPTables)
b) wenn ja wie? oder wie am besten?
c) ich habe schon viel ausprobiert, auch aus diesem Forum, bislang hab ich keinen realen Ansatz finden können.

Danke
 
Suchen! Am besten die Posts, die von jengelh geschrieben worden sind und die Schluesselwoerter 3128 PREROUTING und DNAT enthalten.
 
OP
M

Manuel

Newbie
Hallo,

die Beiträge hab ich gelesen das hier ist doch in etwa das was dir vorschwebt:

Code:
iptables -t nat -A OUTPUT ! -d 127.0.0.1 -p tcp --dport 80 -m owner ! --owner-uid squid -j REDIRECT --to-ports 3128

Das hatte ich auch so eingetragen, probiere dann mit wget eine Seite zu laden,
was passiert ist, die Packete gehen nicht raus UND werden nicht an den Proxy weitergeleitet, sozusagen hägt dann die Verbindung.

Meine Regeln zur Zeit:

Code:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A OUTPUT ! -d 127.0.0.1 -p tcp --dport 80 -m owner ! --uid-owner squid -j REDIRECT --to-ports 8080

Hier die Ausgabe in der Messages wenn ich beide Regeln Aktiviere:

Code:
kernel: ip_finish_output2: No header cache and no neighbour!

Und was mir zustätzlich aufgefallen ist, ist das der EINGEHENDE Traffic auf Port 80, umgeleitet wird auf den Port 8080 :)
Das ist genau das gegenteil von dem was ich benötige.

Wäre nett wenn sich mal jemand von den squid gurus dazu äussern könnte :)

Gruß
 
Manuel schrieb:
Code:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
Und was mir zustätzlich aufgefallen ist, ist das der EINGEHENDE Traffic auf Port 80, umgeleitet wird auf den Port 8080 :)
Das ist genau das gegenteil von dem was ich benötige.
Aber genau das hast du mit dieser Regel festgelegt.
Code:
iptables -t nat -A OUTPUT ! -d 127.0.0.1 -p tcp --dport 80 -m owner ! --uid-owner squid -j REDIRECT --to-ports 8080
Versuch's mal mit "! -d $MEINE_ADDRESSE", also nicht 127.0.0.1 sondern 192.168.212.121 ...
Transparent Server Proxying ist halt schon n hartes Ding.
 
OP
M

Manuel

Newbie
So, danke für Eure Hilfe,das hat schonmal soweit Funktioniert.
Allerdings ist der Proxy nun ziel von Angriffen, Spam Abwehr regeln habe ich bereits getroffen, allerdings zieht der Proxy nun andere Sachen auf sich und ich werde da nicht schlau draus, ich poste mal meine Regeln:


Code:
### Filterung der Anfragen
redirect_program /etc/squid/redirector.pl
redirect_children 1

### Transparenter Proxy
http_port 8080
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

### Zugriff von aussen sperren
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 80
acl Safe_ports port 80          # http
acl Safe_ports port 443 563     # https, snews
acl D_PORTS port  7 9 19 22 23 25 53 109 110 119
acl CONNECT method CONNECT
http_access deny D_PORTS
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

Und hier ein paar log Auszüge:

Code:
May  3 08:56:43 xxxxxx squid[21401]:   http://validation.herbalvivid.us/validata.php?code=cn
May  3 08:56:43 xxxxxx squid[21401]: WARNING: Closing client xxxxxxxx connection due to lifetime timeout
May  3 08:56:43 xxxxxx squid[21401]:   http://blog.seniorennet.be/rianto/reageer.php?postID=12
May  3 08:56:43 xxxxxx squid[21401]: WARNING: Closing client xxxxxxxx connection due to lifetime timeout
May  3 08:56:43 xxxxxx squid[21401]:   http://xxxxxxx/banner/flirt-fever/fullpaar.gif

May  3 09:07:04 xxxxxx squid[14540]: sslReadServer: FD 590: read failure: (104) Connection reset by peer
May  3 09:07:04 xxxxxx squid[14540]: sslReadServer: FD 336: read failure: (104) Connection reset by peer
May  3 09:07:05 xxxxxx squid[14540]: sslReadServer: FD 441: read failure: (104) Connection reset by peer
May  3 09:07:06 xxxxxx squid[14540]: sslReadServer: FD 680: read failure: (104) Connection reset by peer
May  3 09:07:06 xxxxxx squid[14540]: sslReadServer: FD 617: read failure: (104) Connection reset by peer
May  3 09:07:09 xxxxxx squid[14540]: sslReadServer: FD 170: read failure: (104) Connection reset by peer
May  3 09:07:10 xxxxxx squid[14540]: sslReadServer: FD 548: read failure: (104) Connection reset by peer
May  3 09:07:11 xxxxxx squid[14540]: sslReadServer: FD 779: read failure: (104) Connection reset by peer
May  3 09:07:11 xxxxxx squid[14540]: sslReadServer: FD 789: read failure: (104) Connection reset by peer
May  3 09:07:13 xxxxxx squid[14540]: sslReadServer: FD 552: read failure: (104) Connection reset by peer
May  3 09:07:15 xxxxxx squid[14540]: sslReadServer: FD 68: read failure: (104) Connection reset by peer
May  3 09:07:15 xxxxxx squid[14540]: WARNING: All redirector processes are busy.
May  3 09:07:15 xxxxxx squid[14540]: WARNING: 1 pending requests queued
May  3 09:07:15 xxxxxx squid[14540]: Consider increasing the number of redirector processes in your config file.
May  3 09:07:19 xxxxxx squid[14540]: sslReadServer: FD 245: read failure: (104) Connection reset by peer
May  3 09:07:21 xxxxxx squid[14540]: sslReadServer: FD 96: read failure: (104) Connection reset by peer
May  3 09:07:22 xxxxxx squid[14540]: sslReadServer: FD 176: read failure: (104) Connection reset by peer
May  3 09:07:24 xxxxxx squid[14540]: sslReadServer: FD 113: read failure: (104) Connection reset by peer
May  3 09:07:24 xxxxxx squid[14540]: sslReadServer: FD 487: read failure: (104) Connection reset by peer
May  3 09:07:25 xxxxxx squid[14540]: sslReadServer: FD 176: read failure: (104) Connection reset by peer
May  3 09:07:27 xxxxxx squid[14540]: sslReadServer: FD 300: read failure: (104) Connection reset by peer
May  3 09:07:27 xxxxxx squid[14540]: sslReadServer: FD 113: read failure: (104) Connection reset by peer
May  3 09:07:30 xxxxxx squid[14540]: sslReadServer: FD 190: read failure: (104) Connection reset by peer
May  3 09:07:31 xxxxxx squid[14540]: sslReadServer: FD 711: read failure: (104) Connection reset by peer
May  3 09:07:32 xxxxxx squid[14540]: sslReadServer: FD 648: read failure: (104) Connection reset by peer
May  3 09:07:33 xxxxxx squid[14540]: sslReadServer: FD 74: read failure: (104) Connection reset by peer
May  3 09:07:33 xxxxxx squid[14540]: sslReadServer: FD 177: read failure: (104) Connection reset by peer
May  3 09:07:34 xxxxxx squid[14540]: sslReadServer: FD 667: read failure: (104) Connection reset by peer
May  3 09:07:34 xxxxxx squid[14540]: sslReadServer: FD 520: read failure: (104) Connection reset by peer
May  3 09:07:34 xxxxxx squid[14540]: sslReadServer: FD 435: read failure: (104) Connection reset by peer
May  3 09:07:39 xxxxxx squid[14540]: sslReadServer: FD 902: read failure: (104) Connection reset by peer


Ich brauche dringend Hilfe...

Gruß

Manuel
 
Oben