Méthode HTTP CONNECT expliquée
CONNECT est la méthode HTTP qui permet à HTTPS de fonctionner à travers un proxy. Au lieu de récupérer une page, elle demande au proxy d'ouvrir un tunnel brut vers une destination afin que le trafic chiffré puisse passer sans être touché. Ce guide explique comment fonctionne CONNECT, étape par étape.
Pourquoi CONNECT existe
Un proxy HTTP ordinaire fonctionne en lisant votre demande, en récupérant la ressource et en la renvoyant — il voit et relaie la demande et la réponse complètes. Cela va bien pour le HTTP classique, mais cela ne fonctionne pas pour HTTPS : tout l'intérêt de TLS est qu'aucun intermédiaire ne peut lire le trafic, donc le proxy ne peut pas simplement "récupérer la page" en votre nom sans rompre le chiffrement.
La méthode CONNECT résout ce problème. Au lieu de demander au proxy de récupérer quelque chose, votre client demande au proxy d'ouvrir un tunnel TCP brut vers un hôte et un port, puis de se mettre de côté. Une fois le tunnel ouvert, votre client effectue la poignée de main TLS directement avec la destination à travers le proxy, et le proxy relaie aveuglément les octets chiffrés dans les deux sens. Le proxy ne voit jamais le texte en clair — il ne voit qu'un flux opaque et, via la ligne CONNECT et le SNI TLS, le nom d'hôte de destination. C'est ainsi que le s4m proxy HTTP sur le port 3128 gère le HTTPS.
Comment le tunnel est établi
Le flux est court et spécifique :
- Votre client envoie
CONNECT example.com:443 HTTP/1.1au proxy, avec un en-têteHostet, si nécessaire, des identifiantsProxy-Authorization. - Le proxy ouvre une connexion TCP à
example.com:443. - Si cela réussit, le proxy répond
HTTP/1.1 200 Connection Established. À partir de ce moment, la connexion est un tunnel nu — plus de sémantique HTTP. - Votre client effectue maintenant la négociation TLS directement avec example.com via ce tunnel, et toutes les données d'application suivantes sont chiffrées de bout en bout.
Deux conséquences en découlent. Premièrement, TLS reste véritablement de bout en bout : le proxy n'authentifie rien et ne lit rien à l'intérieur du tunnel, donc la validation du certificat se fait entre votre client et le véritable serveur. Deuxièmement, parce que CONNECT ouvre simplement un tunnel TCP, les proxies peuvent en principe tunneliser d'autres protocoles basés sur TLS ou arbitraires sur d'autres ports — c'est exactement pourquoi les proxies restreignent généralement CONNECT au port 443 (et quelques autres) pour éviter de devenir un relais ouvert.
Voir CONNECT avec curl
curl émet automatiquement CONNECT pour une URL https:// via un proxy HTTP. Utilisez -v pour observer la requête CONNECT et la réponse '200 Connection Established'.
# Verbose: watch the CONNECT handshake to the proxy, then TLS to the site curl -v -x http://USER:PASS@proxy.s4m.online:3128 https://example.com 2>&1 \ | grep -Ei 'CONNECT|Connection established|SSL connection|Proxy-Auth' # You'll see, in order: # > CONNECT example.com:443 HTTP/1.1 (client asks for a tunnel) # < HTTP/1.1 200 Connection established (proxy opened the tunnel) # * SSL connection using TLSv1.3 ... (TLS is end-to-end, past proxy) # Contrast: plain HTTP needs no tunnel; the proxy relays the request itself: curl -v -x http://USER:PASS@proxy.s4m.online:3128 http://example.com 2>&1 \ | grep -Ei 'GET http|absolute'
Questions, réponses
Que fait la méthode HTTP CONNECT ?
Il demande à un proxy d'ouvrir un tunnel TCP brut vers un hôte et un port de destination, plutôt que de récupérer une ressource. Une fois que le proxy répond 200 Connection Established, le client tunnelise sa propre poignée de main TLS et ses données chiffrées directement vers la destination, et le proxy se contente de relayer les octets opaques. C'est ainsi que fonctionne HTTPS à travers un proxy HTTP.
Le proxy peut-il lire mon trafic HTTPS pendant un tunnel CONNECT ?
Non. Après l'ouverture du tunnel, TLS est négocié de bout en bout entre votre client et le serveur de destination, donc le proxy ne voit que des octets chiffrés. Il peut voir le nom d'hôte et le port de destination à partir de la ligne CONNECT et du SNI TLS, mais pas le contenu — à moins qu'il n'effectue une interception TLS avec un certificat que votre appareil approuve.
Pourquoi les proxys restreignent-ils CONNECT au port 443 ?
Parce que CONNECT ouvre un tunnel TCP arbitraire, un proxy non restreint pourrait relayer n'importe quel protocole vers n'importe quel port et devenir un relais ouvert pour des abus. Limiter CONNECT à 443 (et parfois à une courte liste blanche) le confine à un HTTPS normal tout en empêchant l'utilisation du proxy pour tunneler des services non liés.
Un proxy HTTP qui tunnelise HTTPS
Le proxy HTTP authentifié de s4m sur le port 3128 gère CONNECT afin que HTTPS reste chiffré de bout en bout, aux côtés de SOCKS5 sur 1080. Paiement à l'utilisation, comptes anonymes, crypto acceptée.
Les gens ont trouvé cette page en recherchant
- méthode HTTP CONNECT expliquée
- comment configurer adresse IP
- adresse IP étape par étape
- configuration de proxy Puppeteer avec authentification
- proxy socks5 étape par étape
- openvpn pour windows
- proxy pour le scraping expliqué
- comment configurer WireGuard VPN, étape par étape
- qu'est-ce que proxy http
- authentification du proxy
- configuration du proxy par pays
- proxys de datacenter vs résidentiels vs mobiles
- wireguard expliqué
- Réglages configuration du proxy
- configuration du proxy
Vraies phrases de recherche auxquelles cette page répond — les liens ouvrent la page qui les couvre en profondeur.