README 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. # 3APA3A 3proxy tiny proxy server
  2. (c) 2002-2017 by Vladimir '3APA3A' Dubrovin <3proxy@3proxy.ru>
  3. Download:
  4. https://github.com/z3APA3A/3proxy/releases
  5. or
  6. http://3proxy.ru/download/
  7. Archive of old versions: https://github.com/z3APA3A/3proxy-archive
  8. Please read doc/html/index.html and man pages.
  9. Features:
  10. 1. General
  11. + IPv6 support for incoming and outgoing connection,
  12. can be used as a proxy between IPv4 and IPv6 networks
  13. in either direction.
  14. + HTTP/1.1 Proxy with keep-alive client and server support,
  15. transparent proxy support.
  16. + HTTPS (CONNECT) proxy (compatible with HTTP/2 / SPDY)
  17. + Anonymous and random client IP emulation for HTTP proxy mode
  18. + FTP over HTTP support.
  19. + DNS caching with built-in resolver
  20. + DNS proxy
  21. + DNS over TCP support, redirecting DNS traffic via parent
  22. proxy
  23. + SOCKSv4/4.5 Proxy
  24. + SOCKSv5 Proxy
  25. + SOCKSv5 UDP and BIND support (fully compatible with
  26. SocksCAP/FreeCAP for UDP)
  27. + Transparent SOCKS redirection for HTTP, POP3, FTP, SMTP
  28. + POP3 Proxy
  29. + FTP proxy
  30. + TCP port mapper (port forwarding)
  31. + UDP port mapper (port forwarding)
  32. + SMTP proxy
  33. + Threaded application (no child process).
  34. + Web administration and statistics
  35. + Plugins for functionality extension
  36. + Native 64 bit application
  37. 2. Proxy chaining and network connections
  38. + Can be used as a bridge between client and different proxy type
  39. (e.g. convert incoming HTTP proxy request from client to SOCKSv5
  40. request to parent server).
  41. + Connect back proxy support to bypass firewalls
  42. + Parent proxy support for any type of incoming connection
  43. + Username/password authentication for parent proxy(s).
  44. + HTTPS/SOCKS4/SOCKS5 and ip/port redirection parent support
  45. + Random parent selection
  46. + Chain building (multihop proxing)
  47. + Load balancing between few network connections by choosing network
  48. interface
  49. 3. Logging
  50. + tuneable log format compatible with any log parser
  51. + stdout logging
  52. + file logging
  53. + syslog logging (Unix)
  54. + ODBC logging
  55. + RADIUS accounting
  56. + log file rotation (hourly, daily, weekly, monthly)
  57. + automatic log file comperssion with external archiver (for files)
  58. + automatic removal of older log files
  59. + Character filtering for log files
  60. + different log files for different servces are supported
  61. 4. Access control
  62. + ACL-driven Access control by username, source IP,
  63. destination IP/hostname, destination port and destination action
  64. (POST, PUT, GET, etc), weekday and daytime.
  65. + ACL-driven (user/source/destination/protocol/weekday/daytime or
  66. combined) bandwith limitation for incoming and (!)outgoing trafic.
  67. + ACL-driven (user/source/destination/protocol/weekday/daytime or
  68. combined) traffic limitation per day, week or month for incoming and
  69. outgoing traffic
  70. + User authentication by username / password
  71. + RADIUS Authentication and Authorization
  72. + User authentication by DNS hostname
  73. + Access control by username/password for SOCKSv5 and HTTP/HTTPS/FTP
  74. + Cleartext or encrypted (crypt/MD5 or NT) passwords.
  75. + Connection redirection
  76. + Access control by requested action (CONNECT/BIND,
  77. HTTP GET/POST/PUT/HEAD/OTHER).
  78. + All access control entries now support weekday and time limitations
  79. + Hostnames and * templates are supported instead of IP address
  80. 5. Extensions
  81. + Regular expression filtering (with PCRE) via PCREPlugin
  82. + Authentication with Windows username/password (cleartext only)
  83. + SSL/TLS decryptions with certificate spoofing
  84. + Transparent redirection support for Linux and *BSD
  85. 6. Configuration
  86. + support for configuration files
  87. + support for includes in configuration files
  88. + interface binding
  89. + socket options
  90. + running as daemon process
  91. + utility for automated networks list building
  92. + configuration reload on any file change
  93. Unix
  94. + support for chroot
  95. + support for setgid
  96. + support for setuid
  97. + support for signals (SIGUSR1 to reload configuration)
  98. Windows
  99. + support --install as service
  100. + support --remove as service
  101. + support for service START, STOP, PAUSE and CONTINUE commands (on
  102. PAUSE no new connection accepted, but active connections still in
  103. progress, on CONTINUE configuration is reloaded)
  104. Windows 95/98/ME
  105. + support --install as service
  106. + support --remove as service
  107. 6. Compilation
  108. + MSVC (static)
  109. + OpenWatcom (static)
  110. + Intel Windows Compiler (msvcrt.dll)
  111. + Windows/gcc (msvcrt.dll)
  112. + Cygwin/gcc (cygwin.dll)
  113. + Unix/gcc
  114. + Unix/ccc
  115. + Solaris
  116. + Mac OS X, iPhone OS
  117. + Linux and derivered systems
  118. + Lite version for Windows 95/98/NT/2000/XP/2003
  119. + 32 bit and 64 bit versions for Windows Vista and above, Windows 2008 server and above
  120. 3proxy Combined proxy server may be used as
  121. executable or service (supports installation and removal).
  122. It uses config file to read it's configuration (see
  123. 3proxy.cfg.sample for details).
  124. 3proxy.exe is all-in-one, it doesn't require all others .exe
  125. to work.
  126. See 3proxy.cfg.sample for examples, see man 3proxy.cfg
  127. --install installs and starts proxy as Windows service
  128. (config file should be located in the same directory)
  129. --remove removes the service (should be stopped before via
  130. 'net stop 3proxy').
  131. To build in Linux install git and build-essential packages, use
  132. git clone https://github.com/z3apa3a/3proxy
  133. cd 3proxy
  134. ln -s Makefile.Linux Makefile
  135. make
  136. make install
  137. use /etc/3proxy/add3proxyuser.sh script to add users.
  138. proxy HTTP proxy server, binds to port 3128
  139. ftppr FTP proxy server, binds to port 21
  140. socks SOCKS 4/5 proxy server, binds to port 1080
  141. ftppr FTP proxy server, please do not mess it with FTP over HTTP
  142. proxy used in browsers
  143. pop3p POP3 proxy server, binds to port 110. You must specify
  144. POP3 username as username@target.host.ip[:port]
  145. port is 110 by default.
  146. Exmple: in Username configuration for you e-mail reader
  147. set someuser@pop.somehost.ru, to obtains mail for someuser
  148. from pop.somehost.ru via proxy.
  149. smtpp SMTP proxy server, binds to port 25. You must specify
  150. SMTP username as username@target.host.ip[:port]
  151. port is 25 by default.
  152. Exmple: in Username configuration for you e-mail reader
  153. set someuser@mail.somehost.ru, to send mail as someuser
  154. via mail.somehost.ru via proxy.
  155. tcppm TCP port mapping. Maps some TCP port on local machine to
  156. TCP port on remote host.
  157. udppm UDP port mapping. Maps some UDP port on local machine to
  158. UDP port on remote machine. Only one user simulationeously
  159. can use UDP mapping, so it cann't be used for public service
  160. in large networks. It's OK to use it to map to DNS server
  161. in small network or to map Counter-Strike server for single
  162. client (you can use few mappings on different ports for
  163. different clients in last case).
  164. mycrypt Program to obtain crypted password fro cleartext. Supports
  165. both MD5/crypt and NT password.
  166. mycrypt password
  167. produces NT password
  168. mycrypt salt password
  169. produces MD5/crypt password with salt "salt".
  170. dighosts Utility for building networks list from web page.
  171. Run utility with --help option for command line reference.
  172. Latest version is available from http://3proxy.ru/
  173. Want to donate the project? http://3proxy.ru/donations/