3proxy(8)

NAME
3proxy - 3[APA3A] tiny proxy server, or trivial proxy server, or free proxy server

SYNOPSIS
3proxy [config_file]
3proxy [--install]
3proxy [--remove]

DESCRIPTION
3proxy is a universal proxy server. It can be used to provide internal users with fully controllable access to external resources or to provide external users with access to internal resources. 3proxy is not developed to replace squid(8), but it can extend the functionality of an existing caching proxy. It can be used to route requests between different types of clients and proxy servers. Think about it as application level gateway with configuration like hardware router has for network layer. It can establish multiple gateways with HTTP and HTTPS proxy with FTP over HTTP support, SOCKS v4, v4.5 and v5, POP3 proxy, UDP and TCP portmappers. Each gateway is started from the configuration file like an independent service proxy(8) socks(8) pop3p(8) tcppm(8) udppm(8) ftppr(8) dnspr but 3proxy is not a kind of wrapper or superserver for these daemons. It just has the same code compiled in, but provides much more functionality. SOCKSv5 implementation allows you to use 3proxy with any UDP or TCP based client applications designed without proxy support (with SocksCAP, FreeCAP or another client-side redirector under Windows or with a socksification library under Unix). So you can play your favourite games, listen to music, exchange files and messages and even accept incoming connections behind a proxy server.

dnspr does not exist as an independent service. It's a DNS caching proxy (it requires nscache and nserver to be set in the configuration. Only A-records are cached. Please note that this caching is mostly a 'hack' and has nothing to do with a real DNS server, but it works perfectly for SOHO networks.

3proxy supports access control lists (ACL) like network router. Source and destination networks and destination port can be specified. In addition, usernames and gateway action (for example GET or POST) can be used in ACLs. In order to filter request on username basis user must be authenticated somehow. There are few authentication types including password authentication and authentication by NetBIOS name for Windows clients (it's very like ident authentication). Depending on ACL action request can be allowed, denied or redirected to another host or to another proxy server or even to a chain of proxy servers.

It supports different types of logging: to logfiles, syslog(3) (only under Unix) or to an ODBC database. Logging format is tunable to provide compatibility with existing log file parsers. It makes it possible to use 3proxy with IIS, ISA, Apache or Squid log parsers.

OPTIONS

config_file
    Name of config file. See 3proxy.cfg(3) for configuration file format. Under Windows, if config_file is not specified, 3proxy looks for a file named 3proxy.cfg in the default location (in the same directory as the executable file and in the current directory). Under Unix, if no config file is specified, 3proxy reads configuration from stdin. It makes it possible to use the 3proxy.cfg file as an executable script just by setting +x mode and adding
    #!/usr/local/3proxy/3proxy
    as a first line in 3proxy.cfg

--install
    (Windows NT family only) install 3proxy as a system service

--remove
    (Windows NT family only) remove 3proxy from system services

SIGNALS
Under Unix there are a few signals 3proxy catches. See kill(1).

SIGTERM
    clean up connections and exit

SIGPAUSE
    stop accepting new connections, on second signal - start and re-read configuration

SIGCONT
    start to accept new connections

SIGUSR1
    reload configuration

Under Windows, if 3proxy is installed as a service you can use standard service management to start, stop, pause and continue the 3proxy service, for example:
net start 3proxy
net stop 3proxy
net pause 3proxy
net continue 3proxy

Web admin service can also be used to reload configuration. Use wget to automate this task.

FILES

/usr/local/3proxy/3proxy.cfg (3proxy.cfg)
    3proxy configuration file

BUGS
Report all bugs to 3proxy@3proxy.org

SEE ALSO
3proxy.cfg(5), proxy(8), ftppr(8), socks(8), pop3p(8), tcppm(8), udppm(8), kill(1), syslogd(8),
https://3proxy.org/

AUTHORS
3proxy is designed by Vladimir Dubrovin <vlad@3proxy.org>