Definition

Was ist SOCKS (Internet Sockets-Protokoll)?

| Autor / Redakteur: Stefan Luber / Andreas Donner

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt. (Bild: © aga7ta - stock.adobe.com)

Das Internet Sockets-Protokoll (SOCKS) ist ein in mehreren RFCs spezifiziertes Protokoll, das eine transparente Kommunikation für unterschiedliche Anwendungen zwischen einem Client und einem Server über einen Proxy-Server ermöglicht. Es lässt sich beispielsweise für kontrollierte Verbindungen über eine Firewall hinweg nutzen.

SOCKS ist eine Abkürzung des Begriffs "SOCKetS" und steht für das Internet Sockets-Protokoll. Es handelt sich um ein Protokoll, mit dem sich transparente Verbindungen für unterschiedliche Anwendungen zwischen einem Client und einem Server mit einem zwischengeschalteten Proxy herstellen lassen.

Typischen Anwendungen sind gesicherte Verbindungen über eine Firewall hinweg. In diesem Szenario befindet sich der Proxy beispielsweise auf der Firewall und erlaubt Clients gemäß den Firewall-Regeln Verbindungen zu bestimmten Servern für definierte Protokolle herzustellen. Der Proxy nimmt die Anfragen des Clients entgegen, leitet sie an den Server weiter und agiert gegenüber dem Server als Stellvertreter des Clients.

Für die Client- und Serveranwendung verhält sich das Internet Sockets-Protokoll transparent. Im Gegensatz zu einem HTTP-Proxy lassen sich unterschiedliche Protokolle oder Anwendungen über das Internet Sockets-Protokoll bedienen. Auch sichere virtuelle private Netzwerke (VPNs) können über das Internet Sockets-Protokoll realisiert werden.

Was die Kontrolle des Datenverkehrs und die Überwachung der Anwendungen angeht, ist das Internet Sockets-Protokoll zwischen einem Application Level Gateways (ALG) und einem Paketfilter angesiedelt. Im Gegensatz zu einem ALG lassen sich mehrere Services über einen Proxy bedienen. Eine Kontrolle auf Paketebene ist aber nicht möglich. Die Anwendungen auf dem Client müssen die Kommunikation über den Proxy-Server unterstützen. Es existieren verschiedene Methoden und Zusatzprogramme, um Anwendungen ohne integrierte Unterstützung zu zwingen, den Verkehr über den Proxy-Server zu leiten.

Ein Nachteil des Internet Sockets-Protokolls ist, dass die Performance und Geschwindigkeit der Kommunikation zwischen Client und Server durch die zusätzliche Proxy-Instanz niedriger sein kann. Die am häufigsten genutzten Versionen des Internet Sockets-Protokoll sind Version 4 und 5. SOCKS 5 ist im RFC 1928 beschrieben. Weitere maßgebliche RFCs für das Protokoll der Version 5 sind RFC 1961, 1929 und 3089. Im TCP/IP-Referenzmodell ist das Internet Sockets-Protokoll zwischen der Anwendungsschicht und der Transportschicht angesiedelt.

Unterschiede zwischen SOCKS 4 und SOCKS 5

Die Versionen 4 und 5 des Internet Sockets-Protokolls unterscheiden sich in mehreren Merkmalen. SOCKS 5 bringt Erweiterungen und Verbesserungen in diesen Bereichen mit:

  • Unterstützung des User Datagram Protocols (UDP) ergänzend zu TCP
  • Unterstützung der Authentifizierung
  • Unterstützung der Namensauflösung am SOCKS-Proxy
  • IPv6-Unterstützung

Funktionsweise des Internet Sockets-Protokoll

Damit eine Anwendung das Internet Sockets-Protokoll unterstützt, ist eine SOCKS-Variante der Netzkommunikation zu verwenden. Diese Unterstützung lässt sich auch nachträglich über verschiedene Methoden in eine Anwendung einfügen. Hierfür wird der Anwendung beispielsweise eine spezielle Bibliothek bereitgestellt.

Die Bibliotheksfunktionen sind so gestaltet, dass sämtliche Verbindungen ausschließlich über den Proxy abgewickelt werden. Nutzt die Anwendung das Internet Sockets-Protokoll, wendet sie sich in der Regel über den Port 1080 an den zuständigen Proxy. Der Client teilt dem Proxy mit, welchen Server und welchen Dienst er kontaktieren möchte. Ist der Zugriff erlaubt, authentifiziert der Proxy den Server, baut stellvertretend eine Verbindung zum Server auf und leitet alle nachfolgenden Daten an den Server weiter.

Die zugelassenen Clients, Server und Dienste sind in der Proxy-Konfiguration beschrieben und werden vom Proxy überwacht. Für die genutzten Anwendungen und Services ist der zwischengeschaltete Proxy transparent.

Ablauf eines Verbindungsaufbaus per Internet Sockets-Protokoll über einen Proxy

Im Folgenden kurz zusammengefasst und vereinfacht der mögliche Ablauf einer Kommunikation per Internet Sockets-Protokoll über einen Proxy:

  • 1. die Anwendung des Clients ruft die SOCKS-Bibliotheksfunktionen auf und wendet sich an den zuständigen Proxy
  • 2. der Proxy prüft, ob der Client die Berechtigung für den gewünschten Dienst und Server hat
  • 3. ist die Kommunikation erlaubt, baut er stellvertretend die Verbindung zum Server auf
  • 4. der komplette Datenverkehr zwischen Client und Server wird über den Proxy abgewickelt - die Weitergabe der Daten ist transparent

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

BSI-geprüfte IT-Security-Lösungen unterstützen sicheres Arbeiten mit personenbezogenen Daten

Datenintegrität personenbezogener Daten

BSI-geprüfte IT-Security-Lösungen unterstützen sicheres Arbeiten mit personenbezogenen Daten

Personenbezogene Daten der Bürger sind besonders schützenswert und sollten in keinem Fall in falsche Hände geraten. In keinem anderen Land wird darum das Thema Datenschutz so ernst genommen und so streng überwacht wie in Deutschland. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46377961 / Definitionen)