PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Transp. Proxy Squid und Webserver auf einem Rechner?



meinereinerseiner
22.03.02, 11:41
Hi,

mal eine Frage - ich beschäftige mich grad mit dem Squid als transparenten Proxy.

Auf meinem Linuxserver, welcher auch das Inet GW ist rennt bereits ein apache auf port 80. Das TransparentProxy Howto würde auf diesem aber
gerne den Squid haben - nun ja - bei der Transparenz geht es ja darum, das alle webanfragen per iptables über den squid geroutet werden, dann ist es doch eigentlich egal, auf welchen port der läuft, ich müsste nur die settings in den iptables anpassen, oder?

Und wie verhält sich das mit den zugriffen von außen auf meine webserver.
kann ich diese anfragen auch vorher abfangen um z.B. die nimda entrys aus den server logs zu bekommen, da bieten sich ja die acls an?

de rtom

sammy
22.03.02, 18:23
kenn mich mitdem was du da meinst net genau aus... nur kommen alle http-anfragen aus dem internet (normalerweise) aus port 80 an...
am einfachsten wirds sein squid wie ind em howto zu konfigurieren udn den webserver auf einen anderen port zu verlegen...denk ich mal..

aycaramba
22.03.02, 18:41
Hallo,

ich weiss nun nicht genau was Du möchtest. Soll der Squid als Proxy zum surfen für Clients aus dem lokalen Netz (Standard) oder als Filter für eingehende Anfragen aus dem Netz dienen (ob das möglich und sinnvoll ist ? ).

Mein Tipp für erstere Lösung, wenn der Proxy denn unbedingt transparent sein muss, ist, dass man den Apache auf einem anderen Port laufen lässt (z.b 81) und per IPTables die lokalen Anfragen auf Port 80 direkt an Squid umzuleiten oder Squid gleich so zu konfigurieren, dass er auf Port 80 läuft. Im Squid müssen allerdings noch weitere Einstellungen vorgenommen werden, damit er transparent arbeiten kann. (./configure --enable-linux-netfilter, sowie Einstellungen in der squid.conf).

Damit Anfragen von "aussen" den Apache erreichen sollte man diese Anfragen, die ja auf Port 80 kommen, an den neuen "Apacheport" umleiten (per IPTables). Intern müssen Anfragen, die an den Apache gehen dann allerdings den Port mit angeben.

Ich würde es aber bevorzugen den Proxy nicht transparent zu machen.

Gruß Marc

meinereinerseiner
24.03.02, 12:30
moin,

geplant wars so, der verkehr von intern nach extern soll über den
transparenten proxy laufen - bzw. von einer iptables regel erfasst werden und auf den proxy geschubst werden, damit ich dort ein paar rules bezgl. div. websites setzen kann, was den traffic von außen auf meinen webserver betrifft, da suche ich eine variante um den kontent der anfragen zu filtern um den ganzen nimda schrott aus meinen server logs zu bekommen. - irgendwie bot sich da der squid generell an - oder ist da irgendwo ein denkfehler?


der tom

Elektronator
24.03.02, 16:02
Ja, ich glaube, du hast da einen Denkfehler.

Du willst den squid als transparenten Proxy von innen, ok.
Ob du den squid auf 3128 laufen lässt und das an den clients einstellst oder einfach alle internen port-80-Anfragen mit iptables auf 3128 routest, ist prinzipiell egal.

Aber um nimda-Anfragen aus dem Netz zu filtern, ist der squid nicht geeignet. Du willst doch keinen Proxy für die externen Anfragen? Da nimmst du einfach eine iptables-Regel, um die den nimda-Anfrage-Port von aussen ins nirwana zu routen.

Grüße Chris

geronet
24.03.02, 16:25
Der Nimda-Anfrage-Port, mein lieber Elektronator, ist zufälligerweise der Port 80.

Um die lästigen Logmeldungen wegzubekommen müsstest du schon am Apache was fummeln, dass der diese Anfragen einfach ignoriert.

Grüsse, Stefan

tomes
25.03.02, 12:09
allerding in ipchains, was aber nicht so schlimm sein sollte:
ipchains -A input -i $A_IF -s $A_NETZ -d $F_IP 80 -p tcp -j REDIRECT 3128
A_IF => Aussen Interface
A_NETZ => 0.0.0.0
F_IP => Firewall IP
Jetzt werden alle Anfragen an den Apache ueber den Squid geleitet, hat auch den Vorteil (Achtung bei dynamischen Seiten -> squid.conf), dass alle *gecachten* Seiten vom Squid beantwortet werden.
In der squid.conf nun:
# .eml-Dateien ausfiltern
acl nimda urlpath_regex -i \.cmd.exe$
http_access deny nimda

T;o)Mes