首页 > 编程知识 正文

代理协议,代理招聘协议

时间:2023-05-04 04:09:23 阅读:208753 作者:4100

文章目录 1. 基本概念2. 部署流程

1. 基本概念

Socks 是一种会话层代理协议,设计的最初目的是帮助授权用户突破防火墙的限制,获取普通用户不能访问的外部资源。考虑到几乎所有基于 TCP/IP 的应用软件都使用 socket 进行数据通信,为了便于应用软件的设计和开发,该协议针对 socket 中几种经典操作进行了针对设计,并将其定名为 Socks。

目前,广泛使用的协议版本是 Socks4 和 Socks5,Socks5 较前一版本进行了大幅增强:增加对 UDP 协议的支持、支持多种用户身份验证及通信加密方式、优化代理服务器域名解析流程等。Socks5 于1996年被 IETF 确定为国际标准 (RFC 1928)。

Socks 位于 OSI 参考模型的第五层(会话层),作为会话层之间的安全通信方案,具备层间隔离性。它只是简单地传递应用层产生的数据包,而不关心具体的应用层协议,比应用层代理具有更快的速度和更高的通用性。相比之下,由于 HTTP 协议位于 OSI 参考模型的第七层(应用层),基于 HTTP 的代理方案难以处理同为应用层的其他协议的代理请求(需要进行复杂的协议适配和数据包拆装作业),代理能力相对较弱。

OSI 参考模型将计算机网络体系结构划分为七层,自底向上分别为物理层、链路层、网络层、传输层、会话层、表达层和应用层。TCP/IP 参考模型对其进行了简化,将上三层(会话层、表达层和应用层)统称为应用层,即目前广泛应用的五层协议结构。简化的目的是降低通信层数,提高通信效率。虽然简化后上三层之间没有明确界限,但是它们的层级关系依然存在。因此,强调 Socks 与 HTTP 在网络体系结构上的层级差异是必要的。

严格意义上,OSI 与 TCP/IP 各层之间并非一一对应,TCP/IP 的传输层大致对应 OSI 的传输层和会话层。因此,也可以说 Socks 协议工作于传输层和应用层之间。

Shadow-socks 是一款常用的 Socks5 代理软件,原生支持 IPv6。

2. 部署流程

一般使用基于 python 实现的服务器端,通过 pip 包管理工具进行安装。

sudo pip install setuptoolssudo pip install shadowsocksvim /etc/shadowsocks/config.json # 创建配置文件

由于 OpenSSL 版本升级,废弃了 EVP_CIPHER_CTX_cleanup 函数,导致服务器端启动报错
undefined symbol: EVP_CIPHER_CTX_cleanup。需要对 python2.7/dist-packages/shadowsocks/crypto/openssl.py 文件进行修改:

:%s/cleanup/reset/:x

配置文件内容如下:

{ "server": "::", "server_port": 1234, "local_port": 1080, "timeout": 300, "password": "passwd", "method": "aes-256-cfb", "fast_open": true, "workers": 1}

各字段释义如下:

server : 服务器 IP 地址,可同时支持 IPv4 和 IPv6server_port : 服务器端口local_port : 本地服务端口password : 密码timeout : 连接时延method : 加密方法

运行命令 sudo ssserver -c /etc/shadowsocks/config.json -d start 启动服务器端。

修订记录:

日期版本号作者修订内容备注2019-6-251.0moonspirit创建

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。