在 HTTP CONNECT 隧道中(引用 http://en.wikipedia.org/wiki/HTTP_tunnel),客户端/浏览器发送CONNET 方法请求,而不是直接 https 连接中的客户端问候 .
我的问题是,如果我在客户端和目标服务器之间放置一个简单的端口转发器,我是否可以强制浏览器仍然发送客户端问候?或者是什么让浏览器知道它应该发送 CONNECT 方法请求 而不是 client hello 当两者之间有 HTTP 代理时?
sends a CONNET method request instead of a client hello
没有。它首先发送 CONNECT 让代理建立到原始服务器的隧道。一旦隧道建立,正常的 SSL 握手就完成了,即
使用 CONNECT(即代理)
--- connect to proxy
>> CONNECT sslhost:port HTTP/1.0
<< HTTP/1.0 200 Connection established
--- everything from now own is transferred by the proxy to/from the target host
>> SSLClientHello
<< SSLServerHello
....
没有 CONNECT(没有代理)
--- direct connection to sslhost:port
>> SSLClientHello
<< SSLServerHello
....
我是一名优秀的程序员,十分优秀!