<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7655.10">
<TITLE>RE: Problems with SSL via Proxy</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<BR>

<P><FONT SIZE=2>Thanks Dmitry<BR>
<BR>
I will try this out now and give you my feedback.<BR>
<BR>
Regards,<BR>
<BR>
Mohammed Rakhada<BR>
<BR>
-----Original Message-----<BR>
From: Dmitry Kurochkin [<A HREF="mailto:dmitry.kurochkin@measurement-factory.com">mailto:dmitry.kurochkin@measurement-factory.com</A>]<BR>
Sent: Thu 22/09/2011 10:40<BR>
To: Mohammed Rakhada (morakhad); users<BR>
Subject: Re: Problems with SSL via Proxy<BR>
<BR>
Hi Mohammed.<BR>
<BR>
On Wed, 21 Sep 2011 20:45:48 +0100, Mohammed Rakhada <morakhad@cisco.com> wrote:<BR>
> Hello,<BR>
><BR>
> I am having trouble trying to use Web Polygraph with a Proxy.<BR>
><BR>
> I seem to have tracked it down to Web Polygraph not sending a Host<BR>
> Header with the request and so the Proxy rejects the connections.<BR>
><BR>
> I have captured the network traffic during this to see what is happening<BR>
> and I can see that for a request sent from my browser the Host Header is<BR>
> sent but not when a request comes from Web Polygraph.<BR>
><BR>
<BR>
This is a bug indeed.  Polygraph never sends Host header in CONNECT<BR>
requests, though RFC 2616 requires client to send Host header in any<BR>
HTTP/1.1 request.  Apparently, many proxies ignore the missing Host<BR>
header and use the URI.<BR>
<BR>
Please try the attached patch and let me know if it helps.<BR>
<BR>
Regards,<BR>
  Dmitry<BR>
<BR>
> >From Web Polygraph to Proxy:<BR>
><BR>
> CONNECT 192.168.29.104:443 HTTP/1.1<BR>
> Proxy-Connection: close<BR>
><BR>
> >From Browser to Proxy:<BR>
><BR>
> CONNECT 192.168.29.104:443 HTTP/1.1<BR>
> User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-GB; rv:1.9.2.22)<BR>
> Gecko/20110905 Ubuntu/10.04 (lucid) Firefox/3.6.22<BR>
> Proxy-Connection: keep-alive<BR>
> Host: 192.168.29.104<BR>
><BR>
> Here is an extract from my polygraph.pg file so you can see what I am<BR>
> trying to do. Is there some configuration missing? Been stuck on this<BR>
> problem for a while, originally had a problem trying to jsut run basic<BR>
> SSL tests. When going direct from Client to Server (no proxy involved),<BR>
> web-polygraph runs fine. If you require any further information please<BR>
> do let me know.<BR>
><BR>
> I am running v 4.4.0.<BR>
><BR>
> SslWrap wrap = {<BR>
>       protocols = [ "SSLv3", "TLSv1" ];<BR>
>       root_certificate = "/opt/home/user/CA-priv+pub.pem";<BR>
>       ciphers = [ "ALL:HIGH: !SSLv2: !aNULL: !AES128-SHA: !AES256-SHA:":<BR>
> 100% ];<BR>
>       rsa_key_sizes = [ 512bit, 1024bit, 2048bit ];<BR>
>       ssl_config_file = "/opt/home/user/myssl.conf";<BR>
>       session_resumption = 40%;<BR>
>       session_cache = 100;<BR>
> };<BR>
><BR>
><BR>
> DnsResolver dr = {<BR>
>     servers = [ '127.0.0.1:53' ];<BR>
>     timeout = 5sec;<BR>
> };<BR>
><BR>
><BR>
> Server PlainServer = {<BR>
>         kind = "HTTP";<BR>
>         contents = [ cntJPG: 26%, cntGIF: 28%, cntPNG: 9%, cntPDF:<BR>
> 0.05%, cntZIP: 0.22%, cntMalware, cntEXE: 0.43%, cntSWF: 1.9%,<BR>
> cntJavascript: 32% ];<BR>
>         direct_access = contents;<BR>
>       addresses = [ '192.168.29.104:8080' , '192.168.29.104:80' ];<BR>
> };<BR>
><BR>
> Server SSL = PlainServer;<BR>
><BR>
> SSL = {<BR>
>       kind = "HTTPS";<BR>
>       addresses = [ '192.168.29.104:443' ];<BR>
>       ssl_wraps = [ wrap ];<BR>
> };<BR>
><BR>
> Robot R = {<BR>
>         kind = "robot";<BR>
>         pop_model = { pop_distr = popUnif(); };<BR>
>         recurrence = 15% ;<BR>
>         req_rate = 1/sec;<BR>
>       ssl_wraps = [ wrap ];<BR>
>       origins = [ PlainServer.addresses, SSL.addresses ];<BR>
>          http_proxies = [ '192.168.111.42:8080' ];<BR>
>       addresses = [ '192.168.29.101' ** 200 , '192.168.29.103' ** 5 ,<BR>
> '192.168.29.105' ** 2 , '192.168.29.107'  ** 200, '192.168.29.109' **<BR>
> 200 , '192.168.29.111' ** 200 , '192.168.29.113' ** 200 ,<BR>
> '192.168.29.115' ** 200 ];<BR>
> };<BR>
><BR>
> use (hostnames);<BR>
> use (SSL,PlainServer,R);<BR>
><BR>
> _______________________________________________<BR>
> Users mailing list<BR>
> Users@web-polygraph.org<BR>
> <A HREF="http://www.web-polygraph.org/mailman/listinfo/users">http://www.web-polygraph.org/mailman/listinfo/users</A><BR>
<BR>
</FONT>
</P>

</BODY>
</HTML>