3proxy/3proxy

GitHub: 3proxy/3proxy

3proxy 是一款功能完备的轻量级代理服务器,支持多种协议和平台,可用于网络流量转发和访问控制。

Stars: 5043 | Forks: 896

# 3APA3A 3proxy 微型代理服务器 (c) 2002-2025 由 Vladimir '3APA3A' Dubrovin <3proxy@3proxy.org> 分支: Master(稳定)分支 - 3proxy 0.9 Devel 分支 - 3proxy 10(请勿使用) * 下载 已发布版本(master 分支)的二进制文件和源代码(Windows、Linux): https://github.com/z3APA3A/3proxy/releases Docker 镜像: https://hub.docker.com/repository/docker/3proxy/3proxy 旧版本归档:https://github.com/z3APA3A/3proxy-archive * 文档 文档(man 页面和 HTML)随下载包提供,位于 https://3proxy.org/ 以及 github wiki https://github.com/3proxy/3proxy/wiki * Windows 安装 3proxy [path_to_config_file] --install ``` installs and starts proxy as Windows service (config file should be located in the same directory or may be optionally specified) ``` 3proxy --remove ``` removes the service (should be stopped before via 'net stop 3proxy'). ``` * 在 Linux 中构建 使用 Makefile: git clone https://github.com/z3apa3a/3proxy cd 3proxy ln -s Makefile.Linux Makefile make sudo make install 默认配置(适用于 Linux/Unix): 3proxy 使用 2 个配置文件: /etc/3proxy/3proxy.cfg(chroot 之前)。此配置文件在 chroot 之前执行,不应修改。 /usr/local/3proxy/conf/3proxy.cfg(从 /etc/3proxy/conf/3proxy.cfg 符号链接)(chroot 之后)是主配置文件。如有需要,请修改此文件。 /usr/local/3proxy/conf/3proxy.cfg 中的所有路径都相对于 chroot 目录(/usr/local/3proxy)。计划在后续版本中将 3proxy chroot 目录移至 /var。 日志文件创建在 /usr/local/3proxy/logs,从 /var/log/3proxy 符号链接。 默认情况下,socks 在 0.0.0.0:1080 启动,proxy 在 0.0.0.0:3128 启动,带有基本认证,默认不添加用户。 使用 /etc/3proxy/conf/add3proxyuser.sh 脚本添加用户。 用法:/etc/3proxy/conf/add3proxyuser.sh username password [day_limit] [bandwidth] day_limit - 每日流量限制(MB) bandwidth - 带宽(比特每秒)1048576 = 1Mbps 或直接修改 /etc/3proxy/conf/ 文件。 使用 CMake: git clone https://github.com/z3apa3a/3proxy cd 3proxy mkdir build && cd build cmake .. cmake --build . sudo cmake --install . CMake 不使用 chroot 配置,配置文件为 /etc/3proxy/3proxy.cfg * 适用于 MacOS X / FreeBSD / *BSD 使用 Makefile: git clone https://github.com/z3apa3a/3proxy cd 3proxy ln -s Makefile.FreeBSD Makefile make (二进制文件在 bin/ 目录中) 使用 CMake(推荐): git clone https://github.com/z3apa3a/3proxy cd 3proxy mkdir build && cd build cmake .. cmake --build . sudo cmake --install . 这会将二进制文件安装到 /usr/local/bin/,配置安装到 /etc/3proxy/, 插件安装到 /usr/local/lib/3proxy/,rc 脚本安装到 BSD 的 rc.d,MacOS 的 launchd plist 安装到 /Library/LaunchDaemons/。 macOS 上的服务管理: # 加载并启动服务 sudo launchctl load /Library/LaunchDaemons/org.3proxy.3proxy.plist # 停止服务 sudo launchctl stop org.3proxy.3proxy # 启动服务 sudo launchctl start org.3proxy.3proxy # 卸载并禁用服务 sudo launchctl unload /Library/LaunchDaemons/org.3proxy.3proxy.plist 功能: 1. 通用功能 + IPv6 支持(用于传入和传出连接), 可用作 IPv4 和 IPv6 网络之间的代理 支持任意方向。 + HTTP/1.1 代理,支持 keep-alive 客户端和服务器, 支持透明代理。 + HTTPS(CONNECT)代理(兼容 HTTP/2 / SPDY) + HTTP 代理模式下支持匿名和随机客户端 IP 模拟 + 支持 FTP over HTTP。 + 带内置解析器的 DNS 缓存 + DNS 代理 + 支持 DNS over TCP,可通过父代理重定向 DNS 流量 + SOCKSv4/4.5 代理 + SOCKSv5 代理 + SOCKSv5 UDP 和 BIND 支持(与 SocksCAP/FreeCAP 的 UDP 完全兼容) + 支持 HTTP、POP3、FTP、SMTP 的透明 SOCKS 重定向 + SNI 代理(基于 TLS 主机名) + TLS(SSL)服务器 - 可用作 https:// 类型代理 + POP3 代理 + FTP 代理 + TCP 端口映射器(端口转发) + UDP 端口映射器(端口转发) + SMTP 代理 + 多线程应用程序(无子进程)。 + Web 管理和统计 + 功能扩展插件 + 原生 32/64 位应用程序 2. 代理链和网络连接 + 可用作不同代理类型之间的桥接(例如,将客户端的传入 HTTP 代理请求转换为向父服务器的 SOCKSv5 请求)。 + 支持连接回退代理以绕过防火墙 + 支持任何类型传入连接的父代理 + 父代理的用户名/密码认证。 + 支持 HTTPS/SOCKS4/SOCKS5 和 ip/端口重定向父代理 + 随机父代理选择 + 链式构建(多跳代理) + 通过选择网络接口在多个网络连接之间进行负载均衡 3. 日志记录 + 可调日志格式,兼容任何日志解析器 + 标准输出日志 + 文件日志 + syslog 日志(Unix) + ODBC 日志 + RADIUS 计费 + 日志文件轮转 + 支持使用外部归档器自动处理日志文件(针对文件) + 日志文件的字符过滤 + 支持不同服务使用不同的日志文件 4. 访问控制 + 基于用户名、源 IP、目标 IP/主机名、目标端口和目标操作(POST、PUT、GET 等)、星期和时间的 ACL 驱动访问控制。 + 基于 ACL 的带宽限制(用户/源/目标/协议/星期/时间或组合),适用于传入和(!)传出流量。 + 基于 ACL 的流量限制,按天、周或月,适用于传入和传出流量 + 连接限制和速率限制 + 用户名/密码用户认证 + RADIUS 认证和授权 + 基于 DNS 主机名的用户认证 + 认证缓存,支持限制用户仅使用单个 IP 地址 + SOCKSv5 和 HTTP/HTTPS/FTP 的用户名/密码访问控制 + 明文或加密(crypt/MD5 或 NT)密码。 + 连接重定向 + 基于请求操作(CONNECT/BIND、HTTP GET/POST/PUT/HEAD/OTHER)的访问控制 + 所有访问控制条目现在都支持星期和时间限制 + 支持使用主机名和 * 模板代替 IP 地址 5. 扩展 + 通过 PCREPlugin 支持正则表达式过滤(使用 PCRE2) + 支持 Windows 用户名/密码认证(仅明文) + 支持证书欺骗的 SSL/TLS 解密 + 支持 Linux 和 *BSD 的透明重定向 6. 配置 + 支持配置文件 + 支持配置文件中的 include + 接口绑定 + 套接字选项 + 作为守护进程运行 + 自动构建网络列表的工具 + 任何文件更改时重新加载配置 Unix + 支持 chroot + 支持 setgid + 支持 setuid + 支持信号(SIGUSR1 重新加载配置) Windows + 支持作为服务安装 --install + 支持作为服务移除 --remove + 支持服务 START、STOP、PAUSE 和 CONTINUE 命令(PAUSE 时不接受新连接,但活动连接仍在进行;CONTINUE 时重新加载配置) Windows 95/98/ME + 支持作为服务安装 --install + 支持作为服务移除 --remove 7. 编译 + MSVC(静态) + OpenWatcom(静态) + Intel Windows Compiler(msvcrt.dll) + Windows/gcc(msvcrt.dll) + Cygwin/gcc(cygwin.dll) + Unix/gcc Unix/ccc + Solaris + Mac OS X,iPhone OS + Linux 及衍生系统 + 适用于 Windows 95/98/NT/2000/XP/2003 的精简版 + 适用于 Windows Vista 及以上版本、Windows 2008 服务器及以上的 32 位和 64 位版本 3proxy 组合代理服务器可用作 可执行文件或服务(支持安装和移除)。 它使用配置文件读取其配置(详见 3proxy.cfg.sample)。 3proxy.exe 是一体化版本,不需要其他 .exe 文件即可运行。 有关示例请参阅 3proxy.cfg.sample,请参阅 man 3proxy.cfg proxy HTTP 代理服务器,绑定到端口 3128 ftppr FTP 代理服务器,绑定到端口 21 socks SOCKS 4/5 代理服务器,绑定到端口 1080 ftppr FTP 代理服务器,请勿与浏览器中使用的 FTP over HTTP 代理混淆 pop3p POP3 代理服务器,绑定到端口 110。您必须指定 POP3 用户名为 username@target.host.ip[:port] 端口默认为 110。 示例:在邮件阅读器的用户名配置中 设置 someuser@pop.example.org,以通过代理 从 pop.somehost.ru 获取 someuser 的邮件。 smtpp SMTP 代理服务器,绑定到端口 25。您必须指定 SMTP 用户名为 username@target.host.ip[:port] 端口默认为 25。 示例:在邮件阅读器的用户名配置中 设置 someuser@mail.example.org,以通过代理 以 someuser 身份通过 mail.somehost.ru 发送邮件。 tcppm TCP 端口映射。将本地计算机上的某个 TCP 端口 映射到远程主机上的 TCP 端口。 tlspr TLS 代理(SNI 代理)- 从 TLS 握手 中嗅探主机名 udppm UDP 端口映射。将本地计算机上的某个 UDP 端口 映射到远程计算机上的 UDP 端口。一次只能有一个用户 使用 UDP 映射,因此不能用于大型网络中的公共服务。 可以将其用于小型网络中的 DNS 服务器映射 或为单个客户端映射 Counter-Strike 服务器(在后一种情况下, 您可以针对不同客户端使用不同端口进行多个映射)。 mycrypt 用于从明文获取加密密码的程序。支持 MD5/crypt 和 NT 密码。 mycrypt password 生成 NT 密码 mycrypt salt password 生成带盐值 "salt" 的 MD5/crypt 密码。 运行实用程序时使用 --help 选项查看命令行参考。 最新版本可从 https://3proxy.org/ 获取 想要捐赠此项目?https://3proxy.org/donations/
标签:3proxy, Docker, HTTP代理, IP 地址批量处理, MacOS取证, SOCKS代理, Windows服务, 安全防御评估, 客户端加密, 带宽限制, 流量控制, 用户认证, 网络安全, 网络工具, 请求拦截, 轻量级代理, 隐私保护, 隐私工具