Proxies vs. NAT

I.MC

Watt soll denn hier hin?
Hi!

Ich lese manchmal, dass Proxies sicherer seihen als NAT.
Habe mich aber nie detailliert mit beschäftigt, bzw. keine Ahnung von Proxies.
Daher mal meine Frage, wieso eigentlich?

Zum Bsp. laß ich letztens dass die Client Rechner ihre IP Pakete zur Kennzeichnung mit Nummern versehen. Win macht das einfach liniear, Linux anscheinend auch, BSD zufällig. Daher ist es möglich mit einem speziellen Algorithmus zu bestimmen, wieviele Maschinen hinter einem Rechner mit NAT sitzten oder zumindest festzustellen, dass dort mehrere sind. Grund des Aufruhrs war, dass es z.B. so Providern möglich ist rauszubekommen, ob ein user Vertragsbruch begeht, wenn dieser den Zugang nur für einen Rechner bestellt hat.
Ein NAT wandelt mein Client Paket um bzw. vesieht es mit der Adresse des Netzes in das es gehen soll. Um die Antwort zuordnen zu können, muss doch dann in den Paketen vermerkt sein, zum welchen Clienten das Paket nun gehen soll.
Das müsste bei Proxies aber doch auch so laufen!? Dieser muss doch auch das Paket dem entsprechenden Clienten zuordnen können. Dann wird gesagt, man könne manipulierte Pakete an das NAT schicken, der dies dann dümmlich weiterleitet, obwohl das ja nicht korrekt ist. Aber wie soll das gehen, wenn da eine stateful Firewall vorhängt die genau darüber wacht, ob das Paket überhaupt zu einer gültigen Session gehört???

Weiterhin frage ich mich, wenn ich NAT abschalte und nur noch proxies nutze, dann gehen doch auch nur noch die Dienste, die von den Proxies angeboten werden, oder nicht?
Für welche Dienste / Protokolle gibt es denn Proxies mal abgesehen von http und ftp?

Gruss, Jochen
 
zur Funktionsweise des Proxys:

client macht anfrage an proxy.
proxy überprüft seinen cache, ob er die seite schon hat und ob sie neu runtergeladen werden muss.
wenn sie schon im cache ist und nicht neu runtergeladen werden muss, dann schickt der proxy dem client die antwort.
hierbei entsteht gar keine verbindung nach außerhalb (bzw. nur um zu vergleichen, ob die seite noch aktuell ist, sollte sie schon länger im cache sein).
ist die seite noch nicht im cache, dann wird eine verbindung zum ziel-host aufgenommen und die seite runtergeladen (incl. bilder/plugins). diese wird dann an den client weitergeleitet.
von außen ist es nicht feststellbar, dass mehrere clients vorhanden sind, da es ja immer nur ein rechner ist, der die seiten holt.
die anfragen werden auch nicht durch nummern gekennzeichnet o.ä.

durch das caching kann die internet verbindung auch wesentlich schneller ablaufen, da nicht alle daten direkt geholt werden müssen. seiten können auch durch einen meta tag gekennzeichnet werden, dass sie immer neu geholt werden sollen, dann werden nur die bilder vom cache geladen (was auch schneller macht).
außerdem lassen sich auch domains bestimmen, von denen die seiten immer neu geladen werden sollen, das ist aber von der software abhängig.

protokolle, die afaik unterstützt werden: HTTP, FTP, NNTP, SMTP, POP, Telnet, SOCKS, etc. - kommt auf die proxy software an, die du verwendest.
weiterhin ist es möglich, tcp basierte protokolle durch den proxy zu tunneln. (dies wird z.b. bei ssl oder tsl gemacht)

großer vorteil gegenüber NAT: die geschwindigkeit wird vergrößert durch gemeinsamen cache.

auf bald
oenone

ps: das obrige stellt meine meinung dar, sie muss nicht unbedingt stimmen.
 
großer vorteil gegenüber NAT: die geschwindigkeit wird vergrößert durch gemeinsamen cache.

Danke.
Aber ich meine der Proxy muss doch auch erst seinen Cacheinhalt überprüfen auf Aktualität, wenn der Client ne Anfrage für einen nicht gekennzeichnete Seite schickt. Wie kann das schneller sein, als einfach stumpf direkt immer die Anfrage durchzuleiten?
Das ist doch immerhin einArbeitschritt mehr...
Was macht man wenn jemand etwas nutzen will, was nicht von Proxies unterstüzt wird? Z.B. nen Filesharing Programm müsste doch ein Problem werden, oder?

Gruss, Jochen
 
Original geschrieben von incmc
Z.B. nen Filesharing Programm müsste doch ein Problem werden, oder?

Gruss, Jochen

Genau deswegen bieten die meisten Unis und ähnliches kein NAT oder Bridges, weil sich eben durch proxies sehr gut regulieren lässt was nach draussen geht und von dort kommt und was eben nicht.

buebo
 
der Proxy hat aber schon den groessten Teil der Seite im Cache dh. bei Squid zb. kannst Du einstellen ob der Proxy die Seite komplett nochmal ausm Web holen soll oder nur die Inhalte die sich veraendert haben oder ob Squid sich periodisch selbst einwaehlt und seinen Cache mit dem Internet abgleicht.

Filesharing Clients ueber Proxys?, was bitte schoen solln das Teil cachen?
Wenn du den Webtraffic der angeschlossenen User ueber Proxys machen moechtest sie aber kein IP Gateway haben kommen Sachen wie Filesharing nicht in Frage.

Die Frage ist was moechtest Du erreichen, das hoert sich alles ziemlich ungefaehr an.

Und wie will ein Provider anhand der TCP Sequenz Number Usertracking betreiben?
 
Zuletzt bearbeitet:
der Proxy hat aber schon den groessten Teil der Seite im Cache dh. bei Squid zb. kannst Du einstellen ob der Proxy die Seite komplett nochmal ausm Web holen soll oder nur die Inhalte die sich veraendert haben oder ob Squid sich periodisch selbst einwaehlt und seinen Cache mit dem Internet abgleicht.

...

Filesharing Clients ueber Proxys?, was bitte schoen solln das Teil cachen? Wenn du den Webtraffic der angeschlossenen User ueber Proxys machen moechtest sie aber kein IP Gateway haben kommen Sachen wie Filesharing nicht in Frage.

Ja klar, aber trotzdem müsste er ja erst mal überprüfen ob die Seite jetzt neuer ist oder nicht. Diese Überprüfung müsste ja mehr Zeit in Anspruch nehmen, als einfach immer stumpf die Seite neu zu holen. Und nen Proxy hinstellen der prinzipiell nur jeden Tag einmal nach nem update auf ner seite guckt bei der ersten Anfrage und dann nur noch den Inhalt aus dem Cache zeigt fände ich doof. Da wär man ja nie sicher jetzt auch das aktuelle zu sehen...
Es geht mir nichts um cachen sondern darum, das ich immer höre dass proxies auch sicherer seien. Wieso raff ich immer noch nicht so ganz. Wenn ich ne Firewall auf dem Router habe die genau guckt, ob Pakte zu gültigen Sessions gehören oder nicht, kann da doch auch keiner nen gefälschtes Paket reinzaubern...
Das gleiche gilt doch auch für einen Proxy. Dem könnte ich doch genauso versuchen nen gefälschtes Paket anzudrehen. Bisher sehe ich nur sicherheitstechnisch den Unterschied, dass man bei NAT schneller die IPs der dahinterliegenden Clienten rausbekommen kann bzw. überhaupt rausbekommen kann und bei Proxies auf keinen (?) Fall.
Die Frage nach dem Filesharing war deswegen, weil was macht man wenn man nur auf Proxies setzt und nicht auf NAT und dann was nicht unterstütztes braucht, hier als Bsp. nen Filesharing Tool. Wie kommt man dann raus in die weite Welt? Z.B. soll der Admin Vollzugriff haben, die normalen user aber bitte nur das können, was die Proxies erlauben.

Und wie will ein Provider anhand der TCP Sequenz Number Usertracking betreiben?

Das stand vor nicht zu langer Zeit in der CT, kein Witz!

Jedes IP Packet erhält eine eindeutige Nummer aus technischen Gründen. Die meisten OS inkrementieren einfach dieses Packetnummer immer um eins. Findet man als ISP also z.B. drei aufwärtszählende Packetnummer-Reihen so kann man mit eingermassen hoher ws. von drei Rechnern hinter dem
Router ausgehen. Diesen Algorithmis hat irgendein hohes Tier entwickelt. Die Lösung besteht darin, Zufallsnummern für jedes Packet zu generieren. Die machen aber nur ganz wenige OSs, die bekannteren sind BSD und so. Oder halt Proxies!? Routerseitig kann man das nicht unterbinden ... bis jetzt.

Gruss, Jochen
 
@madcode liest du das:
http://www.bursztein.net/secu/temoinus.html
oder google mal nach pixie scan.

@incmc
ahmm zwischen einen proxy und NAT besteht eigentlich gar kein zusammenhang. zwei verschiedene dinge, da von A ist sicherer als B zu reden, ist irgendwie unpassend.
ich wuerde dir (falls das fuer dich ein interessantes thema ist) das buch "Building Internet Firewalls. Internet and Web Security."
(ISBN: 1565928717) empfehlen.
 
ahmm zwischen einen proxy und NAT besteht eigentlich gar kein zusammenhang. zwei verschiedene dinge, da von A ist sicherer als B zu reden, ist irgendwie unpassend.
OK, aber ein kurze Erklärung wäre trotzdem nett, das Buch werde ich auf jeden Fall kaufen, bin sehr interessiert an sowas... aber bis es hier ist (ich sitze in Südafrika)

Gruss, Jochen
 
Original geschrieben von kith

@incmc
ahmm zwischen einen proxy und NAT besteht eigentlich gar kein zusammenhang. zwei verschiedene dinge, da von A ist sicherer als B zu reden, ist irgendwie unpassend.
ich wuerde dir (falls das fuer dich ein interessantes thema ist) das buch "Building Internet Firewalls. Internet and Web Security."
(ISBN: 1565928717) empfehlen. [/B]

Danke für den Tip, lese seit ein paar Tagen fleissig. Gutes Buch bis jetzt. Kann man wirklich empfehlen. Endlich lösen sich diese Fragen alle in Luft auf :-)

Gruss aus SA, Jochen
 
Zurück
Oben