Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 12. Nov 2018 20:48

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 30. Apr 2008 12:51 
Offline

Registriert: 25. Mär 2008 12:50
Beiträge: 127
So, nach dem Google mir auf die entsprechenden Suchstichworte nur erklären mag, wie ein Proxy funktioniert, hier mal meine eigentliche Frage, vielleicht hat ja jemand einen Link.

Wie normale Netzwerkverbindungen mittels socket(), connect(), send() und recv() funktionieren ist mir klar. Nur gibt es jetzt auch den Fall, dass jemand hinter einer Firewall sitzt und nach draußen möchte. Diverse Applikationen kriegen das mit angabe der Proxy-IP und -Portnummer sowie möglicherweise auch einem Passwort hin. Nur: was steckt dahinter? Wie wird das auf Codeebene gelöst, sprich was muss ich tun um ein connect() von so einem Proxy akzeptiert zu bekommen?

_________________
http://www.kaufkauf.net - nie wieder Einkäufe vergessen!


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 30. Apr 2008 19:20 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Entweder muss das Protokoll explizit Proxies unterstützen, das ist zum Beispiel bei HTTP oder FTP der Fall. In diesem Fall wird z.B. die HTTP-Anfrage nicht direkt an den Server geschickt, den man in der URL genannt hat, sondern stattdessen an den Proxy. Der guckt in den Request-Header der Anfrage rein, dort steht die "echte" URL drin, und diese Seite fordert er dann an und liefert sie kurz darauf an den fragenden Rechner aus. Mit einem statusbehafteten Protokoll wie FTP ist es etwas komplizierter, funzt im Prinzip aber genauso.

Dann gibt es noch den Fall des "transparenten Proxies". In diesem Fall braucht man Kernel-Unterstützung, bei Linux ist das netfilter. Dieser fängt Pakete, die nach draußen gehen ab und leitet sie an den Proxy-Server, der transparentes Proxiing unterstützen muss, weiter. Dieser erkennt anhand der IP-Adresse (DNS ist zu diesem Zeitpunkt schon aufgelöst worden), dass er ein Paket bekommen hat, das für einen Internet-Host gedacht ist. Er fragt nun diesen Internet-Host bei z.B. HTTP nach der Seite, die im Paket drin steht. Diese liefert der Internet-Server an den Proxy zurück, dieser liefert sie an den netfilter zurück. Der erkennt, dass das Paket zu einer Verbindung zum Proxyserver kommt und schreibt die Quell-Adresse so um, dass es aussieht, als käme das Paket direkt vom Internet-Server. Damit ist das Proxiing von außen nicht zu erkennen.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 02. Mai 2008 9:53 
Offline

Registriert: 25. Mär 2008 12:50
Beiträge: 127
Ah, so weit so klar. Und wie sieht das mit den SOCKS-Proxies aus, gehören die in die Exke der transparenten Proxies?

_________________
http://www.kaufkauf.net - nie wieder Einkäufe vergessen!


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 02. Mai 2008 20:37 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
SOCKS ist ein Proxy-System unterhalb der Protokollebene von HTTP, FTP etc.. Man kann es als Library in einen Client, z.B. einen Browser einbauen, dann kann der die Protokolle, die er beherrscht, über SOCKS statt direkt über TCP schicken.

Für Programme, die die SOCKS-Library nicht eingebaut haben, gibt es zum Beispiel "tsocks", das sich per LD_PRELOAD in die socket()-Aufrufe etc. einhängt und so die SOCKS-Funktionalität nachrüstet.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 4 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de