美文网首页
代理(proxy)服务器原理

代理(proxy)服务器原理

作者: zhf_sy | 来源:发表于2020-09-30 10:22 被阅读0次

[toc]

来源

基于原文截取修改:
原文链接:让代理服务器支持HTTPS很难吗?

Web隧道

我们开展稳定高匿名HTTP代理业务以来,我听到客户咨询最多的问题之一就是“你们的代理支持HTTPS协议吗?”。我觉得很多人对HTTPS代理存在理解上的误区,所以我写了这篇文章。目的就是想说明“实现支持HTTPS的代理一点都不难!”。

说到HTTPS代理很多人瞬间就会联想到HTTPS的各种证书和各种加密,觉得很高端很复杂的样子。其实不然,代理服务器不需要配置证书、也不需要处理任何加密。因为HTTPS代理是通过Web隧道(Web tunnel)工作的。

Web隧道允许用户通过HTTP连接发送非HTTP流量(例如FTP,Telnet,SMTP),这就使得那些使用非HTTP协议的应用程序可以通过HTTP代理工作了。你现在应该就明白了为什么QQ可用设置使用HTTP代理工作。Web隧道这么强大,但它并不复杂。

Web隧道是用HTTP协议的CONNECT方法建立起来的。CONNECT方法不是HTTP/1.1核心规范的一部分,但确是一种得到广泛应用的扩展。客户端通过CONNECT方法请求代理服务器创建一条到达任意目的服务器和端口的TCP链接,代理服务器仅对客户端和服务器之间的后续数据进行盲转发(只是转发,不关心、也不懂发送的内容是什么)。

Web隧道建立的详细步骤

1) 客户端通过HTTP协议发送一条CONNECT方法的请求给代理服务器,告知代理服务器需要连接的主机和端口。

例如:

CONNECT www.alipay.com:443 HTTP/1.1
User-agent: Mozilla/5.0

在本例中客户端通过CONNECT方法请求代理服务器打开一条到www.alipay.com主机443端口的TCP链接。

2) 代理服务器一旦建立了和目标主机(上例中的www.alipay.com:443)TCP连接,就会回送一条HTTP 200 Connection Established应答给客户端。

例如:

HTTP/1.1 200 Connection Established
Poryx-Agent: Squid/3.2

3) 此时隧道就建立起来了。客户端通过该HTTP隧道发送的所有数据都会被代理服务器(通过之前建立起来的与目标主机的TCP连接)原封不动的转发给目标服务器。目标服务器发送的所有数据也会被代理服务器原封不动的转发给客户端。注意:是原封不动的转发,代理服务器并不需要知道内容的含义,也不会尝试去对内容进行解析。

在这里插入图片描述

PS:上面这张插图是我引用《HTTP权威指南》一书的,做了修改。

这下你应该明白了Web隧道的工作原理。所以对代理服务器来说只要其支持Web隧道就支持HTTPS协议(和其它非HTTP协议),与证书、加密没有任何直接的关系。从上面的过程可以看出,实现Web隧道并不难,只要代理服务器能够正确处理CONNECT请求,然后对数据进行盲转发即可。从难度上看这比标准的HTTP协议代理还要简单(标准HTTP协议代理需要对客户端和服务端双方的HTTP报文先进行解析,修改后再进行转发)。

我能说

socks 隧道

哈哈,没写,你来

相关文章

  • 反向代理服务器的工作原理

    本文转载自:反向代理服务器的工作原理 一、概述 反向代理(Reverse Proxy)方式是指以代理服务器来接受I...

  • 四、反向代理

    nginx Proxy 代理 1、代理原理 - 反向代理服务的实现:需要有一个负载均衡设备(即反向代理服务器)来分...

  • nginx-知识点整理

    一、Nginx Proxy代理 1、代理原理 (1)反向代理:需要有一个负载均衡设备(即反向代理服务器)来分发用户...

  • nginx_proxy原理及实验

    代理原理 Proxy配置 语法 启用代理 1,环境两台nginx真实服务器 2,nginx-1 启动网站(内容) ...

  • Nginx总结之反向代理

    nginx Proxy 代理 1、代理原理 反向代理产生的背景:在计算机世界里,由于单个服务器的处理客户端(用户)...

  • 代理基本原理

    基本原理 我们常称呼的代理实际上指的就是代理服务器,英文叫做 Proxy Server,它的功能是代理网络用户去取...

  • nginx配置反向代理

    反向代理配置 说明:proxy_pass指令,代理后端服务器的地址。 配置代理常用指令 proxy_redirec...

  • 代理(proxy)服务器原理

    [toc] 来源 基于原文截取修改:原文链接:让代理服务器支持HTTPS很难吗?[http://www.site-...

  • Proxy & Reverse Proxy

    Proxy Proxy: 代理,即正向代理(Forward Proxy),在客户端和另一个系统之间路由通信的服务器...

  • 代理

    什么是代理? 代理就是代理服务器(proxy server),存在的目的:代理网络用户访问服务器获取数据 为什么使...

网友评论

      本文标题:代理(proxy)服务器原理

      本文链接:https://www.haomeiwen.com/subject/vtduuktx.html