Python socket通过代理访问web服务实现

一、说明

1.1 背景说明

关于“代理”,从burpsuite到ss这类正向代理,再从nginx到haproxy这类反向代理,也用了好多年配置了好多年了。在日积月累之下也确认了以下几个问题:

正向代理和反向代理的区别----正常访问路径是client----public network----server,如果代理服务器处于client和public network之间就是正向代理,如果代理服务器处于public network和server之间就是反向代理。

代理从连接的角度是怎么实现的----A建立一个tcp连接到B发送应用层内容,B另建立一个tcp连接到C转发A应用层的内容。

socks5是什么和socket库有什关系和区别----socket我们可以认为是“数据链路层+网络层+传输层”的实现库,socks5是传输层之上的一种协议(类比ssl层)

  • ssl密钥协商过程是怎样的----SSL密钥协商过程分析

  • 怎么编写代码实现ssl通信----Python3+ssl实现加密通信

但是仍是有一种不甚了解的感觉,比如这两天实现socket使用代理访问web服务代码就又费了好多功夫。

1.2 环境说明

  • 代理服务----windows本地运行的whistle代理服务,监听端口8899

  • 实现语言----python3

  • 实现功能----socket通过代理访问http服务(第二大点)、socket通过代理访问https服务(第三大点)

你可能感兴趣的:(程序员,python,前端,网络)