HTTP CONNECT
Le
octane
Bonjour,
j'ai des questions sur la methode HTTP CONNECT mise
en oeuvre lors de l'utilisation d'un proxy.
[si ce groupe n'est pas approprie, merci de me rediriger
sur un adequat]
J'ai lance un sniffer reseau (ethereal) pour suivre une
connection sur un site securise.
port source 1699, port dst 8080
methode HTTP CONNECT
le header HTTP contient la suite de commandes:
CONNECT secure.site.fr:443 HTTP/1.0
User-agent: Mozilla
Host: secure.site.fr
Content-Length: 0
Proxy-Connection: Keep-Alive
Pragma: no-cache
Proxy-Authorization: Basic xxxxxxxxxxxxxx
Quelques questions:
Quelles sont les lignes obligatoires?
Le content-length egal a 0, ca me surprend, est-ce
normal?
Le Proxy-authorization, comment est il code,
(ethereal me montre les credentials, je suppose
que ce n'est pas crypte).
Pour la suite de la connection, je vois bien des
"continuation or non-HTTP trafic" qui correspond
en gros a ma connection SSL, je pense. Le dump
m'affiche entre autre
"..Thawte Consulting cc1(0&..U.Certification
Services Division1.0U.Thawte Server
CA1&0$..*.H." qui doit etre le certificat, etc..
Autre question: quel est le fonctionnement du proxy?
Il redirige en transparent depuis le port 1699 de ma
machine vers le port 443 du serveur, ou il redirige
_tout_ le trafic de ma machine vers le port 443 du
serveur?
Merci
j'ai des questions sur la methode HTTP CONNECT mise
en oeuvre lors de l'utilisation d'un proxy.
[si ce groupe n'est pas approprie, merci de me rediriger
sur un adequat]
J'ai lance un sniffer reseau (ethereal) pour suivre une
connection sur un site securise.
port source 1699, port dst 8080
methode HTTP CONNECT
le header HTTP contient la suite de commandes:
CONNECT secure.site.fr:443 HTTP/1.0
User-agent: Mozilla
Host: secure.site.fr
Content-Length: 0
Proxy-Connection: Keep-Alive
Pragma: no-cache
Proxy-Authorization: Basic xxxxxxxxxxxxxx
Quelques questions:
Quelles sont les lignes obligatoires?
Le content-length egal a 0, ca me surprend, est-ce
normal?
Le Proxy-authorization, comment est il code,
(ethereal me montre les credentials, je suppose
que ce n'est pas crypte).
Pour la suite de la connection, je vois bien des
"continuation or non-HTTP trafic" qui correspond
en gros a ma connection SSL, je pense. Le dump
m'affiche entre autre
"..Thawte Consulting cc1(0&..U.Certification
Services Division1.0U.Thawte Server
CA1&0$..*.H." qui doit etre le certificat, etc..
Autre question: quel est le fonctionnement du proxy?
Il redirige en transparent depuis le port 1699 de ma
machine vers le port 443 du serveur, ou il redirige
_tout_ le trafic de ma machine vers le port 443 du
serveur?
Merci

Poser une question


La première uniquement (le Host: n'est pas obligatoire)
Il n'y a pas de content-length (il n'y a pas de body prévu pour la
méthode CONNECT, qui est une méthode un peu à part) ; cette ligne est un
peu totalement superflue en fait.
Vous voulez dire chiffré :p
C'est encodé en base64 - plus précisément base64(user:pass)
Oui, grosso modo le handshake SSL, qu'on retrouve partout (HTTPs, IMAPs,
SSH..)
Il redirige uniquement les données de la socket connectée vers le
serveur ; c'est à dire il interconnecte uniquement deux connexions point
à point, dont l'une est établie par le client sur le proxy, et l'autre
par le proxy sur le serveur en face. C'est bête comme choux.
Ok
Un sniffer montre tout ce qui va bien.
D'accord. En fait, je m'interroge. J'ai entendu dire qu'on
pouvait faire du ssh par le biais d'un proxy et l'etablissement
d'une connection SSL
La, a moins de patcher un client ssh, je vois pas trop
comment realiser l'action:
si je tape
ssh -p 443 hote.distant.com
ca ne passera pas.
Si j'y vais a coup de telnet:
telnet proxy 8080
host: hote.distant.com:443
etc.. Le proxy m'ouvrira une connection vers le port 443
du serveur distant (imaginons un sshd ecoutant sur ce
port) je ne pourrais pas lancer un ssh derriere, car la
socket n'est pas la meme.
Si je regarde le man ssh, je ne vois pas vraiment pas
d'option d'encapsulation dans un proxy.
Le -o ProxyCommand, peut etre? Mais avec quelle syntaxe?
un genre de
-o '/usr/bin/nc connect 192.0.2.0:8080 %h %p'
et ou mettre le couple user/pass ?
Merci