3Proxy是跨平台的代理服务功能组件,支持HTTP,HTTPS,FTP,SOCKS(v4,4.5,5),TCP和UDP端口映射等。可以单独使用某个功能,也可混合同时使用。3Proxy综合代理还支持访问控制、带宽限制,流量限制(按日、周、月)、代理链、日志、日志循环、ODBC数据库日志等。3Proxy可作为windows 服务进行安装,支持Windows,FreeBSD,Linux等操作系统平台。
它的核心功能是搭建和管理各种类型的代理服务,包括:
类型 | 说明 |
HTTP Proxy | 普通网页代理 |
HTTPS(CONNECT)Proxy | 支持 SSL 隧道(适合加密通信) |
SOCKS4/SOCKS5 | 通用代理协议,适用于大多数网络程序 |
POP3/SMTP 代理 | 用于电子邮件的代理 |
TCP/UDP 中继 | 可用于端口映射、NAT 穿透等用途 |
匿名代理 | 可以隐藏客户端的 IP 地址 |
我们可以通过Docker快速搭建一个3Proxy服务器,构建一个代理服务,然后,后续可以通过Proxifier等客户端工具连接此代理服务器,达到通过远程服务器跳板机访问服务器内部局域网的目的
具体用的镜像如下:我们可以从3proxy/3proxy处获取镜像,如果国内源无法访问,可以找台正常访问的Docker的服务器。下载docker镜像,上传到自己的国内源托管,这样就可以从国内源(本出用了阿里云)下载了,操作如下:
docker pull 3proxy/3proxy
docker tag 3proxy/3proxy ×××你的阿里云×××.aliyuncs.com/××项目××/3proxy:latest
docker push ×××你的阿里云×××.aliyuncs.com/××项目××/3proxy:latest
此后,就可以用国内源下载镜像了
docker pull ×××你的阿里云×××.aliyuncs.com/××项目××/3proxy:latest
下好镜像之后,我们可以部署容器,首先。我们先建一个文件夹/root/3proxy/conf,里面配置文件3proxy.cfg
auth strong
users 你的用户名1:CL:你的密码1 你的用户名2:CL:你的密码2
allow 你的用户名1,你的用户名2
socks -i0.0.0.0 -p1080
users表示你用户列表,格式为:”你的用户名:CL:你的密码”,多用户需要用空格分隔
allow为允许连接的用户
socks为3Proxy在DOCKER容器中运行的端口
配置完成后,我们需要新建3proxy容器,此处我用服务器宿主机的19001映射到容器内部的1080端口
docker run -d --name 3proxy -p 19001:1080 -v /root/3proxy/conf:/usr/local/3proxy/conf ×××你的阿里云×××.aliyuncs.com/××项目××/3proxy:latest --restart=always
这样,3proxy的代理服务就配置了完成了
下面,我就可以用Proxifier等代理客户端,选择SOCKS5服务来连接此服务器的19001端口,并输入你配置的用户名和密码,就可以从服务端网络访问内部局域网了