HTTPS connect ueber Proxy?

10/05/2010 - 08:22 von Ulli Horlacher | Report spam
Ich hab ein selbstgeschriebenes Programm, das mit einem HTTPS-Server
kommuniziert. Dazu verwende ich

$SH = IO::Socket::SSL->new(
PeerAddr => $server,
PeerPort => $port,
Proto => 'tcp',
);

Jetzt moechte ich das erweitern, dass man auch einen Proxy angeben kann,
da diverse Anwender hinter Firewall sitzen und keine direkte
tcp-Verbindung zum Server machen koennen.

Wie binde ich da jetzt einen Proxy ein?

Ich muesste ja zuerst einen connect zum Proxy machen und da ein
CONNECT server:443 HTTP/1.1
absetzen.


Ullrich Horlacher Informationssysteme und Serverbetrieb
Rechenzentrum E-Mail: horlacher@rus.uni-stuttgart.de
Universitaet Stuttgart Tel: ++49-711-685-65868
Allmandring 30 Fax: ++49-711-682357
70550 Stuttgart (Germany) WWW: http://www.rus.uni-stuttgart.de/
 

Lesen sie die antworten

#1 Christian Winter
11/05/2010 - 19:24 | Warnen spam
Ulli Horlacher schrieb:
Ich hab ein selbstgeschriebenes Programm, das mit einem HTTPS-Server
kommuniziert. Dazu verwende ich

$SH = IO::Socket::SSL->new(
PeerAddr => $server,
PeerPort => $port,
Proto => 'tcp',
);

Jetzt moechte ich das erweitern, dass man auch einen Proxy angeben kann,
da diverse Anwender hinter Firewall sitzen und keine direkte
tcp-Verbindung zum Server machen koennen.

Wie binde ich da jetzt einen Proxy ein?

Ich muesste ja zuerst einen connect zum Proxy machen und da ein
CONNECT server:443 HTTP/1.1
absetzen.



Jepp, du machst eine IO::Socket::INET-Verbindung zum Server auf,
schickst ihm die CONNECT-Anfrage, und wenn er einen 200er-Status
zurückgibt übergibst du diese Socket an IO::Socket::SSL->start_SSL.

-Christian

Ähnliche fragen