Top-Fragen
Zeitleiste
Chat
Kontext

SOCKS

Aus Wikipedia, der freien Enzyklopädie

Remove ads

Das SOCKS-Protokoll ist ein Internet-Protokoll, das Client-Server-Anwendungen erlaubt, protokollunabhängig und transparent die Dienste eines Proxyservers zu nutzen. SOCKS ist eine Abkürzung für „SOCKetS“.

Clients hinter einer Firewall, die eine Verbindung zu einem externen Server aufbauen wollen, verbinden sich stattdessen zu einem SOCKS-Proxy. Dieser Proxyserver überprüft die Berechtigung des Clients, den externen Server zu kontaktieren, und leitet die Anfrage an den Server weiter.

Das SOCKS-Protokoll wurde ursprünglich von NEC entwickelt (SOCKS-4). Die aktuelle Version 5 des Protokolls, wie beschrieben in RFC 1928,[1] erweitert die vorherigen Versionen um Unterstützung für UDP, Authentifizierung, Namensauflösung am SOCKS-Server und IPv6.

Im TCP/IP-Modell ist es eine Zwischenschicht zwischen der Anwendungsschicht und der Transportschicht.

Remove ads

Das SOCKS-4-Protokoll

Zusammenfassung
Kontext

Anfrage

Eine typische SOCKS-4 Verbindung baut sich, via TCP, wie folgt auf: Der Client verbindet sich zum Server und sendet solch ein Paket:

Weitere Informationen Länge, Beschreibung ...

Antwort

Weitere Informationen Länge, Beschreibung ...

Beispiel

Fred möchte sich via SOCKS4 zu der IP 66.102.7.99 auf Port 80 verbinden. Dafür verbindet er sich via TCP zu dem SOCKS4-Proxy seiner Wahl und sendet folgende Anfrage:

Weitere Informationen Version, Kommando ...

Bei der User-ID ist "Fred" als Zeichenfolge in ASCII formatiert.

Darauf antwortet der Server mit "OK":

Weitere Informationen Null-Byte, Antwortcode ...

0xXX ist hier ein Platzhalter für je ein beliebiges Byte.

Von da an werden alle Daten, die der Client (Fred) an den SOCKS-Proxy schickt, an 66.102.7.99 weitergeleitet und umgekehrt.

Remove ads

Das SOCKS-5-Protokoll

Zusammenfassung
Kontext

SOCKS-5 unterscheidet sich von SOCKS-4 vor allem durch bessere Authentifizierung, UDP und IPv6-Unterstützung.

Der Aufbau funktioniert nun so:

  1. Der Client verbindet sich zum Server und begrüßt ihn mit Authentifizierungsmethoden, die er selbst unterstützt.
  2. Der Server antwortet mit einer von den vom Client gesendeten Methoden.
  3. Abhängig von der Methode kann eine Reihe von Paketen versendet werden.
  4. Der Client sendet eine Verbindungsanfrage ähnlich wie bei SOCKS-4
  5. Der Server antwortet ähnlich wie bei SOCKS-4
Weitere Informationen Byte, Name ...

Der Client sendet als erstes seine Authentifizierungsmethoden:

Weitere Informationen Anzahl ...

Der Server gibt die Auswahl der Methode bekannt

Weitere Informationen Länge, Beschreibung ...

Die Verbindungsanfrage

So sieht die Verbindungsanfrage bei SOCKS-5 aus:

Weitere Informationen Länge, Beschreibung ...

Die Serverantwort sieht so aus:

Weitere Informationen Länge, Beschreibung ...
Weitere Informationen Byte, Name ...
Remove ads

SOCKS-Server

Liste von SOCKS-Servern:

SOCKS-Clients/SOCKS-Wrapper

Es existieren Programme, die es anderen Programmen ermöglichen, externe Netzwerke über SOCKS zu erreichen, ohne dass sie spezielle Unterstützung dafür mitbringen müssen:

Liste von SOCKS-Clients:

Spezifikationen

  • RFC: 3089 Ein SOCKS-basierender IPv4/IPv6-Gateway-Mechanismus. (englisch).
  • RFC: 1961 GSS-API-Authentifizierungsmethode für SOCKS V5. (englisch).
  • RFC: 1929 Benutzername/Passwort-Authentifizierung für SOCKS V5. (englisch).
  • RFC: 1928 SOCKS-Protokoll Version 5. (englisch).

Einzelnachweise

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads