3proxy/README

199 lines
7.1 KiB
Plaintext
Raw Normal View History

2017-08-15 17:28:46 +08:00
# 3APA3A 3proxy tiny proxy server
2020-10-16 07:33:59 +08:00
(c) 2002-2020 by Vladimir '3APA3A' Dubrovin <3proxy@3proxy.ru>
2014-04-08 17:20:46 +08:00
2020-10-19 18:28:02 +08:00
Branches:
Master (stable) branch - 3proxy 0.9
Devel branch - 3proxy 10
2017-08-15 17:30:09 +08:00
Download:
https://github.com/z3APA3A/3proxy/releases
or
2019-01-17 17:26:38 +08:00
https://3proxy.org/download/
2017-08-15 17:27:06 +08:00
Archive of old versions: https://github.com/z3APA3A/3proxy-archive
2018-04-25 07:52:31 +08:00
3proxy --install
2018-04-25 07:51:18 +08:00
installs and starts proxy as Windows service
(config file should be located in the same directory)
2018-04-25 07:52:31 +08:00
3proxy --remove
2018-04-25 07:51:18 +08:00
removes the service (should be stopped before via
'net stop 3proxy').
2019-01-28 23:05:48 +08:00
To build in Linux install git and build-essential packages, use
2018-04-25 07:51:18 +08:00
2018-04-25 07:52:31 +08:00
git clone https://github.com/z3apa3a/3proxy
cd 3proxy
ln -s Makefile.Linux Makefile
make
2018-04-28 23:27:45 +08:00
sudo make install
2018-04-25 07:51:18 +08:00
use /etc/3proxy/add3proxyuser.sh script to add users.
2014-04-08 17:20:46 +08:00
Please read doc/html/index.html and man pages.
2016-01-24 01:38:10 +08:00
Features:
1. General
2017-12-22 23:53:04 +08:00
+ IPv6 support for incoming and outgoing connection,
can be used as a proxy between IPv4 and IPv6 networks
in either direction.
2016-01-24 01:38:10 +08:00
+ HTTP/1.1 Proxy with keep-alive client and server support,
transparent proxy support.
2017-12-22 23:53:04 +08:00
+ HTTPS (CONNECT) proxy (compatible with HTTP/2 / SPDY)
+ Anonymous and random client IP emulation for HTTP proxy mode
2016-01-24 01:38:10 +08:00
+ FTP over HTTP support.
+ DNS caching with built-in resolver
2017-12-22 23:53:04 +08:00
+ DNS proxy
+ DNS over TCP support, redirecting DNS traffic via parent
proxy
2016-01-24 01:38:10 +08:00
+ SOCKSv4/4.5 Proxy
+ SOCKSv5 Proxy
2017-12-22 23:53:04 +08:00
+ SOCKSv5 UDP and BIND support (fully compatible with
2016-01-24 01:38:10 +08:00
SocksCAP/FreeCAP for UDP)
2018-04-23 02:43:47 +08:00
+ Transparent SOCKS redirection for HTTP, POP3, FTP, SMTP
2016-01-24 01:38:10 +08:00
+ POP3 Proxy
+ FTP proxy
2017-12-22 23:53:04 +08:00
+ TCP port mapper (port forwarding)
+ UDP port mapper (port forwarding)
2016-01-24 01:38:10 +08:00
+ SMTP proxy
+ Threaded application (no child process).
+ Web administration and statistics
+ Plugins for functionality extension
2020-10-16 07:33:59 +08:00
+ Native 32/64 bit application
2016-01-24 01:38:10 +08:00
2. Proxy chaining and network connections
2017-12-22 23:53:04 +08:00
+ Can be used as a bridge between client and different proxy type
(e.g. convert incoming HTTP proxy request from client to SOCKSv5
request to parent server).
2016-01-24 01:38:10 +08:00
+ Connect back proxy support to bypass firewalls
+ Parent proxy support for any type of incoming connection
+ Username/password authentication for parent proxy(s).
2017-12-22 23:53:04 +08:00
+ HTTPS/SOCKS4/SOCKS5 and ip/port redirection parent support
2016-01-24 01:38:10 +08:00
+ Random parent selection
+ Chain building (multihop proxing)
+ Load balancing between few network connections by choosing network
interface
3. Logging
2017-12-22 23:53:04 +08:00
+ tuneable log format compatible with any log parser
2016-01-24 01:38:10 +08:00
+ stdout logging
+ file logging
+ syslog logging (Unix)
2016-01-24 01:44:01 +08:00
+ ODBC logging
2017-12-22 23:53:04 +08:00
+ RADIUS accounting
2020-10-16 07:33:59 +08:00
+ log file rotation
+ automatic log file processing with external archiver (for files)
2016-01-24 01:38:10 +08:00
+ Character filtering for log files
+ different log files for different servces are supported
4. Access control
2017-12-22 23:53:04 +08:00
+ ACL-driven Access control by username, source IP,
destination IP/hostname, destination port and destination action
(POST, PUT, GET, etc), weekday and daytime.
2016-01-24 01:38:10 +08:00
+ ACL-driven (user/source/destination/protocol/weekday/daytime or
combined) bandwith limitation for incoming and (!)outgoing trafic.
2020-10-16 07:33:59 +08:00
+ ACL-driven traffic limitation per day, week or month for incoming and
2017-12-22 23:53:04 +08:00
outgoing traffic
2020-10-16 07:33:59 +08:00
+ Connection limitation and ratelimting
2016-01-24 01:44:01 +08:00
+ User authentication by username / password
2017-12-22 23:53:04 +08:00
+ RADIUS Authentication and Authorization
+ User authentication by DNS hostname
2020-10-16 07:33:59 +08:00
+ Authentication cache with possibility to limit user to single IP address
2016-01-24 01:38:10 +08:00
+ Access control by username/password for SOCKSv5 and HTTP/HTTPS/FTP
+ Cleartext or encrypted (crypt/MD5 or NT) passwords.
+ Connection redirection
+ Access control by requested action (CONNECT/BIND,
HTTP GET/POST/PUT/HEAD/OTHER).
+ All access control entries now support weekday and time limitations
+ Hostnames and * templates are supported instead of IP address
5. Extensions
+ Regular expression filtering (with PCRE) via PCREPlugin
2017-12-22 23:53:04 +08:00
+ Authentication with Windows username/password (cleartext only)
2016-01-24 01:38:10 +08:00
+ SSL/TLS decryptions with certificate spoofing
2017-12-22 23:53:04 +08:00
+ Transparent redirection support for Linux and *BSD
2016-01-24 01:38:10 +08:00
6. Configuration
+ support for configuration files
+ support for includes in configuration files
+ interface binding
2017-12-22 23:53:04 +08:00
+ socket options
2016-01-24 01:38:10 +08:00
+ running as daemon process
+ utility for automated networks list building
+ configuration reload on any file change
Unix
+ support for chroot
+ support for setgid
+ support for setuid
2017-12-22 23:53:04 +08:00
+ support for signals (SIGUSR1 to reload configuration)
2016-01-24 01:38:10 +08:00
Windows
+ support --install as service
+ support --remove as service
+ support for service START, STOP, PAUSE and CONTINUE commands (on
PAUSE no new connection accepted, but active connections still in
progress, on CONTINUE configuration is reloaded)
Windows 95/98/ME
+ support --install as service
+ support --remove as service
6. Compilation
+ MSVC (static)
2017-12-22 23:53:04 +08:00
+ OpenWatcom (static)
2016-01-24 01:38:10 +08:00
+ Intel Windows Compiler (msvcrt.dll)
+ Windows/gcc (msvcrt.dll)
+ Cygwin/gcc (cygwin.dll)
+ Unix/gcc
+ Unix/ccc
+ Solaris
+ Mac OS X, iPhone OS
+ Linux and derivered systems
+ Lite version for Windows 95/98/NT/2000/XP/2003
+ 32 bit and 64 bit versions for Windows Vista and above, Windows 2008 server and above
2014-04-08 17:20:46 +08:00
3proxy Combined proxy server may be used as
executable or service (supports installation and removal).
It uses config file to read it's configuration (see
3proxy.cfg.sample for details).
2018-04-25 07:47:25 +08:00
3proxy.exe is all-in-one, it doesn't require all others .exe
to work.
See 3proxy.cfg.sample for examples, see man 3proxy.cfg
2014-04-08 17:20:46 +08:00
proxy HTTP proxy server, binds to port 3128
ftppr FTP proxy server, binds to port 21
socks SOCKS 4/5 proxy server, binds to port 1080
ftppr FTP proxy server, please do not mess it with FTP over HTTP
proxy used in browsers
pop3p POP3 proxy server, binds to port 110. You must specify
POP3 username as username@target.host.ip[:port]
port is 110 by default.
Exmple: in Username configuration for you e-mail reader
2019-01-17 17:08:25 +08:00
set someuser@pop.example.org, to obtains mail for someuser
2014-04-08 17:20:46 +08:00
from pop.somehost.ru via proxy.
smtpp SMTP proxy server, binds to port 25. You must specify
SMTP username as username@target.host.ip[:port]
port is 25 by default.
Exmple: in Username configuration for you e-mail reader
2019-01-17 17:08:25 +08:00
set someuser@mail.example.org, to send mail as someuser
2014-04-08 17:20:46 +08:00
via mail.somehost.ru via proxy.
tcppm TCP port mapping. Maps some TCP port on local machine to
TCP port on remote host.
udppm UDP port mapping. Maps some UDP port on local machine to
UDP port on remote machine. Only one user simulationeously
can use UDP mapping, so it cann't be used for public service
in large networks. It's OK to use it to map to DNS server
in small network or to map Counter-Strike server for single
client (you can use few mappings on different ports for
different clients in last case).
mycrypt Program to obtain crypted password fro cleartext. Supports
both MD5/crypt and NT password.
mycrypt password
produces NT password
mycrypt salt password
produces MD5/crypt password with salt "salt".
dighosts Utility for building networks list from web page.
Run utility with --help option for command line reference.
2019-01-17 17:26:38 +08:00
Latest version is available from https://3proxy.org/
2016-01-10 02:09:16 +08:00
2019-01-17 17:26:38 +08:00
Want to donate the project? https://3proxy.org/donations/