www.wikidata.de-de.nina.az
Dieser Artikel behandelt das Internet Protokoll Zu weiteren Bedeutungen siehe Socks Das SOCKS Protokoll ist ein Internet Protokoll das Client Server Anwendungen erlaubt protokollunabhangig und transparent die Dienste eines Proxyservers zu nutzen SOCKS ist eine Abkurzung fur SOCKetS Clients hinter einer Firewall die eine Verbindung zu einem externen Server aufbauen wollen verbinden sich stattdessen zu einem SOCKS Proxy Dieser Proxyserver uberpruft die Berechtigung des Clients den externen Server zu kontaktieren und leitet die Anfrage an den Server weiter Das SOCKS Protokoll wurde ursprunglich von NEC entwickelt SOCKS 4 Die aktuelle Version 5 des Protokolls wie beschrieben in RFC 1928 1 erweitert die vorherigen Versionen um Unterstutzung fur UDP Authentifizierung Namensauflosung am SOCKS Server und IPv6 Im TCP IP Modell ist es eine Zwischenschicht zwischen der Anwendungsschicht und der Transportschicht Inhaltsverzeichnis 1 Das SOCKS 4 Protokoll 1 1 Anfrage 1 2 Antwort 1 3 Beispiel 2 Das SOCKS 5 Protokoll 2 1 Die Verbindungsanfrage 3 SOCKS Server 4 SOCKS Clients SOCKS Wrapper 5 Spezifikationen 6 EinzelnachweiseDas SOCKS 4 Protokoll BearbeitenAnfrage Bearbeiten Eine typische SOCKS 4 Verbindung baut sich via TCP wie folgt auf Der Client verbindet sich zum Server und sendet solch ein Paket Lange Beschreibung1 Byte Version fur SOCKS4 0x04 1 Byte Befehl 0x01 neue TCP IP Verbindung 0x02 bindet einen Port2 Bytes Portnummer4 Bytes IPv4 Adresseunbestimmt User ID optional wenn keine Authentifizierung notwendig diesen Abschnitt uberspringen 1 Byte Abschluss mit Null Byte 0x00 Antwort Bearbeiten Lange Beschreibung1 Byte Null Byte 0x00 1 Byte Antwortcode 0x5A Anfrage bewilligt 0x5B Anfrage abgelehnt oder fehlgeschlagen 0x5C Anfrage fehlgeschlagen da der Client nicht identd ausfuhrt oder nicht vom Server erreichbar ist 0x5D Anfrage fehlgeschlagen da identd die ID nicht bestatigen konnte2 Byte Beliebige Daten 4 Byte Beliebige Daten Beispiel Bearbeiten Fred mochte sich via SOCKS4 zu der IP 66 102 7 99 auf Port 80 verbinden Dafur verbindet er sich via TCP zu dem SOCKS4 Proxy seiner Wahl und sendet folgende Anfrage Version Kommando Portnummer Adresse User ID Abschluss0x04 0x01 0x00 0x50 0x42 0x66 0x07 0x63 0x46 0x72 0x65 0x64 0x00Bei der User ID ist Fred als Zeichenfolge in ASCII formatiert Darauf antwortet der Server mit OK Null Byte Antwortcode Beliebige Daten Beliebige Daten0x00 0x5A 0xXX 0xXX0xXX ist hier ein Platzhalter fur 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 Das SOCKS 5 Protokoll BearbeitenSOCKS 5 unterscheidet sich von SOCKS 4 vor allem durch bessere Authentifizierung UDP und IPv6 Unterstutzung Der Aufbau funktioniert nun so Der Client verbindet sich zum Server und begrusst ihn mit Authentifizierungsmethoden die er selbst unterstutzt Der Server antwortet mit einer von den vom Client gesendeten Methoden Abhangig von der Methode kann eine Reihe von Paketen versendet werden Der Client sendet eine Verbindungsanfrage ahnlich wie bei SOCKS 4 Der Server antwortet ahnlich wie bei SOCKS 4Authentifizierungsmethoden Byte Name Erklarung0x00 NO AUTHENTICATION REQUIRED Keine Authentifizierung benotigt0x01 GSSAPI GSSAPI siehe RFC 2743 2 Genutzt u a von Kerberos 0x02 USERNAME PASSWORD Authentifizierung mit Benutzername und Passwort siehe RFC 1929 3 0x03 bis 0x7F IANA ASSIGNED Werden von der IANA vergeben0x80 bis 0xFE RESERVED FOR PRIVATE METHODS Fur nicht offentliche Methoden reserviert0xFF NO ACCEPTABLE METHODS Keine akzeptable MethodeDer Client sendet als erstes seine Authentifizierungsmethoden Lange Beschreibung1 Byte Version fur SOCKS 5 0x05 1 Byte Anzahl n displaystyle n nbsp der unterstutzten Authentifizierungsmethodenn displaystyle n nbsp Bytes Byte Werte der unter Authentifizierungsmethoden genannten Methoden ein Byte pro MethodeDer Server gibt die Auswahl der Methode bekannt Lange Beschreibung1 Byte Version 0x05 1 Byte Byte Wert der Authentifizierungsmethode 0xFF wenn keine akzeptable Methode gefunden Die Verbindungsanfrage Bearbeiten So sieht die Verbindungsanfrage bei SOCKS 5 aus Lange Beschreibung1 Byte Version fur SOCKS 5 0x05 1 Byte Befehl 0x01 Eine TCP Verbindung aufbauen 0x02 Eine TCP Verbindung entgegennehmen d h einen Server offnen 0x03 Eine UDP Weiterleitung einrichten1 Byte Reserviert Muss 0x00 sein1 Byte Adress Typ Typ der Zieladresse 0x01 IPv4 Adresse 0x03 Domainname 0x04 IPv6 AdresseAbhangig vom gewahlten Adress Typ IPv4 4 Bytes Domainname 1 Byte Lange der Domain Domain IPv6 16 Bytes2 Byte Port in Byte Reihenfolge Big EndianDie Serverantwort sieht so aus Lange Beschreibung1 Byte Version 0x05 1 Byte Antwortcode siehe Tabelle Antwortcodes 1 Byte Reserviert Muss 0x00 sein1 Byte Address Typ 0x01 IPv4 Adresse 0x03 Domainname 0x04 IPv6 AdresseAbhangig vom Adress Typ IPv4 4 Bytes Domainname 1 Byte Lange der Domain Domain IPv6 16 Bytes2 Byte Port in Byte Reihenfolge Big EndianAntwortcodes Byte Name Erklarung0x00 succeeded Verbindung erfolgreich hergestellt0x01 general SOCKS server failure Serverfehler0x02 connection not allowed by ruleset Verbindung wegen der Serverkonfiguration nicht erlaubt 0x03 Network unreachable Das Zielnetzwerk ist nicht erreichbar0x04 Host unreachable Der Zielhost ist nicht erreichbar0x05 Connection refused Verbindung abgelehnt0x06 TTL expired Zielrechner zu weit entfernt0x07 Command not supported Kommando der Anfrage wird nicht unterstutzt0x08 Address type not supported ATYP der Anfrage wird nicht unterstutzt0x09 bis 0xFF Nicht vergebenSOCKS Server BearbeitenListe von SOCKS Servern Delegate universaler Proxy Server unter anderem Socks Server Open Source universaler Proxy Server unter anderem Socks Server Open Source Dante Socks Server Java Socks Server Open Source Socks4 Server mocks CuteSocks SSH als Socks ServerSOCKS Clients SOCKS Wrapper BearbeitenEs existieren Programme die es anderen Programmen ermoglichen externe Netzwerke uber SOCKS zu erreichen ohne dass sie spezielle Unterstutzung dafur mitbringen mussen Liste von SOCKS Clients Dante client FreeCap WideCap Open Text SOCKS Client Nachfolger von Hummingbird SOCKS ProxyCap SocksCap Google Link tsocks socat redsocks proxychains proxifier tun2socksSpezifikationen BearbeitenRFC 3089 Ein SOCKS basierender IPv4 IPv6 Gateway Mechanismus englisch RFC 1961 GSS API Authentifizierungsmethode fur SOCKS V5 englisch RFC 1929 Benutzername Passwort Authentifizierung fur SOCKS V5 englisch RFC 1928 SOCKS Protokoll Version 5 englisch Einzelnachweise Bearbeiten RFC 1928 SOCKS Protokoll Version 5 englisch RFC 2743 Generic Security Service Application Program Interface Version 2 Update 1 2000 englisch RFC 1929 Benutzername Passwort Authentifizierung fur SOCKS V5 englisch Abgerufen von https de wikipedia org w index php title SOCKS amp oldid 234588109