CONNECT request method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die CONNECT
HTTP-Methode fordert, dass ein Proxy einen HTTP-Tunnel zu einem Zielserver einrichtet und im Erfolgsfall blind Daten in beide Richtungen weiterleitet, bis der Tunnel geschlossen wird.
Das Anforderungsziel ist einzigartig für diese Methode, da es nur aus dem Host und der Portnummer des Tunnel-Ziels besteht, getrennt durch einen Doppelpunkt (siehe Syntax für Details). Jeder 2XX Erfolgs-Statuscode bedeutet, dass der Proxy in den 'Tunnelmodus' wechselt und alle Daten im Erfolgsantwortkörper von dem Server stammen, der durch das Anforderungsziel identifiziert wurde.
Wenn eine Website hinter einem Proxy steht und es durch Netzwerkregeln erzwungen wird, dass der gesamte externe Datenverkehr den Proxy passieren muss, ermöglicht die CONNECT
-Methode, eine TLS (HTTPS) Verbindung mit dieser Website herzustellen:
- Der Client bittet den Proxy, die TCP-Verbindung zum gewünschten Ziel weiterzuleiten.
- Der Proxy-Server stellt im Auftrag des Clients eine sichere Verbindung zum Server her.
- Sobald die Verbindung hergestellt ist, leitet der Proxy-Server den TCP-Datenstrom zum und vom Client weiter.
Neben der Ermöglichung des sicheren Zugriffs auf Webseiten hinter Proxies bietet ein HTTP-Tunnel eine Möglichkeit, Datenverkehr zuzulassen, der sonst eingeschränkt wäre (SSH oder FTP) über das HTTP(S)-Protokoll.
CONNECT
ist eine Hop-by-Hop-Methode, was bedeutet, dass Proxies die CONNECT
-Anfrage nur weiterleiten, wenn ein weiterer eingehender Proxy vor dem Ursprungsserver vorhanden ist, da die meisten Ursprungsserver CONNECT
nicht implementieren.
Warnung:
Wenn Sie einen Proxy betreiben, der CONNECT
unterstützt, beschränken Sie dessen Nutzung auf eine Reihe bekannter Ports oder eine konfigurierbare Liste sicherer Anforderungsziele.
Es gibt erhebliche Risiken beim Aufbau eines Tunnels zu beliebigen Servern, insbesondere wenn das Ziel ein wohlbekannter oder reservierter TCP-Port ist, der nicht für Webtraffic vorgesehen ist.
Ein locker konfigurierter Proxy kann missbraucht werden, um Traffic wie SMTP weiterzuleiten, um beispielsweise Spam-E-Mails zu versenden.
Anfrage hat einen Körper | Nein |
---|---|
Erfolgreiche Antwort hat einen Körper | Nein |
Sicher | Nein |
Idempotent | Nein |
Cachefähig | Nein |
Erlaubt in HTML-Formularen | Nein |
Syntax
Beispiele
Proxy-Authentifizierung
Eine Anfrage an Proxy-Server, die eine Autorisierung zur Erstellung eines Tunnels erfordern, sieht wie folgt aus.
Weitere Informationen finden Sie im Proxy-Authorization
Header.
CONNECT server.example.com:80 HTTP/1.1
Host: server.example.com:80
Proxy-Authorization: basic aGVsbG86d29ybGQ=
Spezifikationen
Specification |
---|
HTTP Semantics # CONNECT |
Browser-Kompatibilität
Siehe auch
- HTTP-Anfragemethoden
- HTTP-Antwortstatuscodes
- HTTP-Header
- Proxy-Server Glossar-Eintrag
Proxy-Authorization
Header- Anleitung zur Nutzung von SSH über einen HTTP-Proxy dimoulis.net (2023)