pproxy:多协议高性能Python异步隧道代理工具
pproxy:用 Python 构建强大的异步隧道代理
厌倦了为各种代理协议和功能寻找不同的工具?pproxy
应运而生!这是一个基于 Python 3 asyncio
实现的异步隧道代理工具,支持 HTTP、HTTP2、HTTP3、Socks4、Socks5、Shadowsocks、ShadowsocksR、SSH、Redirect、Pf 等多种协议,并支持 TCP 和 UDP 流量。
pproxy
的目标是提供一个轻量级、纯 Python 实现的强大代理解决方案,无需额外依赖库。它具备丰富的功能,包括:
- 支持多种协议: 涵盖主流代理协议,满足不同场景需求。
- 异步 IO: 基于
asyncio
实现单线程异步 IO,性能高效。 - TCP/UDP 代理客户端/服务器: 可作为代理客户端或服务器使用,灵活配置。
- 负载均衡: 支持在多个远程服务器之间进行流量调度。
- 流量自动检测: 智能识别并处理不同的入站流量。
- 隧道、跳跃和反向跳跃: 支持多级代理和反向连接。
- Unix 域套接字支持: 提供更安全的本地通信方式。
- HTTP v2 和 v3 (QUIC) 支持: 紧跟最新的网络协议。
- 认证支持: 提供用户/密码认证功能。
- 基于正则表达式的域名过滤: 精细控制流量走向。
- SSL/TLS 客户端/服务器: 支持加密连接。
- Shadowsocks OTA 和 SSR 插件: 增强 Shadowsocks 功能。
- 流量统计: 提供带宽和流量使用统计。
- PAC 支持: 支持 JavaScript 自动代理配置。
- NAT 重定向: 支持 Iptables 和 Pf 的 NAT 重定向。
- 系统代理自动设置: 方便地配置操作系统代理。
- 客户端/服务器 API: 可集成到其他 Python 项目中。
快速入门
安装 pproxy
非常简单,使用 pip 即可:
pip3 install pproxy
安装完成后,可以直接运行 pproxy
启动默认配置的代理服务器:
pproxy
默认情况下,pproxy
会在 8080 端口监听 HTTP、Socks4 和 Socks5 协议。
你也可以指定监听协议,例如启动 Shadowsocks 代理服务器:
pproxy -l ss://chacha20:abc@:8080
为了获得更好的加密性能,可以安装 pycryptodome
:
pip3 install pproxy[accelerated]
pproxy
也提供了 Docker 镜像,方便快速部署:
docker run -it -p 8080:8080 mosajjal/pproxy:latest -l http://:8080 -vv
强大的 URI 配置
pproxy
使用简洁灵活的 URI 语法进行配置,格式如下:
{scheme}://[{cipher}@]{netloc}/[@{localbind}][,{plugins}][?{rules}][#{auth}]
你可以通过组合不同的 scheme
来同时启用多种协议,例如 http+socks4+socks5://
。cipher
支持多种加密算法,并且可以通过 PyPy 或 pycryptodome
进行性能优化。netloc
指定监听地址和端口或 Unix 域套接字路径。localbind
可以指定出站流量使用的本地 IP 地址。plugins
用于启用特定的 ShadowsocksR 插件。rules
可以指定一个包含正则表达式规则的文件,用于匹配并重定向流量。auth
用于配置用户认证。
pproxy
还支持通过 __
连接多个 URI 来实现代理跳跃,例如 ss://server1__http://server2
。
多样的应用场景
pproxy
凭借其丰富的功能和灵活的配置,可以应用于多种场景:
- 科学上网: 支持多种加密协议,提供安全稳定的代理连接。
- 内网穿透: 通过反向跳跃功能实现对内网服务的访问。
- 流量转发: 将特定流量重定向到其他代理服务器。
- 负载均衡: 在多个后端代理服务器之间分发流量。
- 流量分析和过滤: 利用正则表达式规则进行流量控制。
- 自定义代理逻辑: 提供客户端/服务器 API,方便集成到其他应用中。
除了命令行工具,pproxy
还提供了 Python API,方便开发者集成代理功能到自己的项目中。
如果你正在寻找一个功能强大、灵活且易于使用的 Python 代理工具,pproxy
绝对值得尝试。访问其 GitHub 页面获取更多详细信息和示例:https://github.com/qwj/python-proxy。
- 原文作者:iamdev
- 原文链接:https://blog.iamdev.cn/post/2025/pproxy%E5%A4%9A%E5%8D%8F%E8%AE%AE%E9%AB%98%E6%80%A7%E8%83%BDPython%E5%BC%82%E6%AD%A5%E9%9A%A7%E9%81%93%E4%BB%A3%E7%90%86%E5%B7%A5%E5%85%B7-1/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止转载 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。