这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
Proxy-Go v6.6 发布啦。Proxy 是 golang 实现的高性能 http,https,websocket,tcp,udp,socks5 代理服务器, 支持正向代理、反向代理、透明代理、内网穿透、TCP/UDP 端口映射、SSH 中转、TLS 加密传输、协议转换、DNS 防污染代理。
- 优化了 limitconn 的关闭逻辑, 释放更多资源.
- http(s)/socks 代理增加了–intelligent, 智能模式设置, 可以是 intelligent|direct|parent 三者之一,
默认是:intelligent. 每个值的含义如下.
–intelligent=direct, 不在 blocked 里面的目标都直连.
–intelligent=parent, 不在 direct 里面的目标都走上级.
–intelligent=intelligent,blocked 和 direct 里面都没有的目标, 智能判断是否使用上级访问目标.
特点:
- 链式代理, 程序本身可以作为一级代理, 如果设置了上级代理那么可以作为二级代理, 乃至 N 级代理.
- 通讯加密, 如果程序不是一级代理, 而且上级代理也是本程序, 那么可以加密和上级代理之间的通讯, 采用底层 tls 高强度加密, 安全无特征.
- 智能 HTTP,SOCKS5 代理, 会自动判断访问的网站是否屏蔽, 如果被屏蔽那么就会使用上级代理 (前提是配置了上级代理) 访问网站; 如果访问的网站没有被屏蔽, 为了加速访问, 代理会直接访问网站, 不使用上级代理.
- 域名黑白名单,更加自由的控制网站的访问方式。
- 跨平台性, 无论你是 widows,linux, 还是 mac, 甚至是树莓派, 都可以很好的运行 proxy.
- 多协议支持, 支持 HTTP(S),TCP,UDP,Websocket,SOCKS5 代理.
- TCP/UDP 端口转发.
- 支持内网穿透, 协议支持 TCP 和 UDP.
- SSH 中转,HTTP(S),SOCKS5 代理支持 SSH 中转, 上级 Linux 服务器不需要任何服务端, 本地一个 proxy 即可开心上网.
- KCP 协议支持,HTTP(S),SOCKS5 代理支持 KCP 协议传输数据, 降低延迟, 提升浏览体验.
- 集成外部 API,HTTP(S),SOCKS5 代理认证功能可以与外部 HTTP API 集成,可以方便的通过外部系统控制代理用户.
- 反向代理, 支持直接把域名解析到 proxy 监听的 ip, 然后 proxy 就会帮你代理访问需要访问的 HTTP(S) 网站.
- 透明 HTTP(S) 代理, 配合 iptables, 在网关直接把出去的 80,443 方向的流量转发到 proxy, 就能实现无感知的智能路由器代理.
- 协议转换,可以把已经存在的 HTTP(S) 或 SOCKS5 或 SS 代理转换为一个端口同时支持 HTTP(S) 和 SOCKS5 和 SS 代理,转换后的 SOCKS5 和 SS 代理如果上级是 SOCKS5 代理, 那么支持 UDP 功能, 同时支持强大的级联认证功能。
- 自定义底层加密传输,http(s)/sps/socks 代理在 tcp 之上可以通过 tls 标准加密以及 kcp 协议加密 tcp 数据, 除此之外还支持在 tls 和 kcp 之后进行自定义加密, 也就是说自定义加密和 tls|kcp 是可以联合使用的, 内部采用 AES256 加密, 使用的时候只需要自己定义一个密码即可。
- 底层压缩高效传输,http(s)/sps/socks 代理在 tcp 之上可以通过自定义加密和 tls 标准加密以及 kcp 协议加密 tcp 数据, 在加密之后还可以对数据进行压缩, 也就是说压缩功能和自定义加密和 tls|kcp 是可以联合使用的。
- 安全的 DNS 代理,可以通过本地的 proxy 提供的 DNS 代理服务器与上级代理加密通讯实现安全防污染的 DNS 查询。
- 负载均衡, 高可用,HTTP(S)/SOCKS5/SPS 代理支持上级负载均衡和高可用, 多个上级重复-P 参数即可.
- 指定出口 IP,HTTP(S)/SOCKS5/SPS 代理支持客户端用入口 IP 连接过来的, 就用入口 IP 作为出口 IP 访问目标网站的功能。如果入口 IP 是内网 IP,出口 IP 不会使用入口 IP
- 支持限速,HTTP(S)/SOCKS5/SPS 代理支持限速.
- SOCKS5 代理支持级联认证.
- 证书参数使用 base64 数据, 默认情况下-C,-K 参数是 crt 证书和 key 文件的路径, 如果是 base64://开头, 那么就认为后面的数据是 base64 编码的, 会解码后使用.
下载地址:
- Gitee
- GitHUB
86 次点击
加入收藏
下一篇:Jaeger 1.8.2 发布 开源分布式追踪系统