Tinyproxy
Developer(s) | Banu |
---|---|
Initial release | 1998 |
Stable release | 1.8.4 (January 1, 2016) [±] |
Development status | Active |
Written in | C |
Operating system | POSIX |
Platform | Cross-platform |
Type | proxy server |
License | GNU General Public License |
Website |
tinyproxy |
Tinyproxy is a HTTP proxy server daemon for POSIX operating systems. Designed to be fast and small, it is useful when an HTTP/HTTPS proxy is required, but the system resources for a larger proxy are unavailable. Because of this it has been put to uses such as a tether on the iPhone, and on the OpenWrt.[1]
Tinyproxy is primarily designed to run on Unix-like systems. Released under the GNU General Public License, Tinyproxy is free software[2] and has been developed for a number of years. It is currently being maintained on GitHub as a publicly accessible project. Ohloh analyses it to be a project with "mature, well-established codebase and increasing year-over-year development activity."[3]
Features
- Anonymous mode: Allows specification of individual HTTP headers that should be allowed through, and which should be blocked.
- HTTPS support: Tinyproxy allows forwarding of HTTPS connections without modifying traffic in any way.
- Remote monitoring: Tinyproxy can be monitored remotely to view logs and access details.
- Load average monitoring: Tinyproxy can be configured to refuse connections after the server load reaches a certain point.
- Access control: Tinyproxy can be configured to only allow connections from certain subnets or IP addresses.
- Secure: With some configuration, Tinyproxy can be made to run without any special privileges, thus minimizing the chance of system compromise. Furthermore, it was designed with an eye towards preventing buffer overflows.
- Small footprint: Tinyproxy requires very little in the way of system resources - the memory footprint tends to be around 2MB with glibc, and the CPU load increases linearly with the number of simultaneous connections (depending on the speed of the connection). Therefore, Tinyproxy can be run on a spare, older machine without any impact on performance.
- URL based filtering: Tinyproxy allows domain and URL-based black- and whitelisting.
- Transparent proxying: Tinyproxy supports being configured as a transparent proxy, so that a proxy can be used without requiring any client-side configuration.
- Proxy chaining: Tinyproxy can use an upstream proxy server for outbound connections, instead of direct connections to the target server, creating a so-called proxy chain.
Availability in OS distributions
Tinyproxy packages are available for various Linux distributions such as openSUSE,[4] Debian,[5] Fedora,[6] FreeBSD,[7] Gentoo Linux,[8] OpenBSD,[9] Ubuntu,[10] and OpenWrt. Source code is also available.
See also
Overview & Discussions
- Web accelerator which discusses host-based HTTP acceleration
- Proxy server which discusses client-side proxies
- Reverse proxy which discusses origin-side proxies
Proxy-Servers
- Apache HTTP Server
- Hiawatha - secure, easy to use, lightweight web server with reverse proxy functionality.
- lighttpd - open-source web server, optimized for speed-critical environments
- Nginx - lightweight, high-performance web server, reverse proxy and e-mail proxy (IMAP/POP3)
- Polipo - lightweight pipelining, multiplexing proxy server and daemon for a small number of users
- Pound reverse proxy
- Privoxy - privacy enhancing proxy
- RabbIT4 - forwarding, compressing, caching, filtering, HTTP proxy for traffic optimization
- Squid cache - a proxy server and web cache daemon
- Varnish - a performance-focused open source reverse proxy
- Ziproxy - lightweight forwarding, compressing, non-caching, HTTP proxy for traffic optimization
References
- ↑ "Tinyproxy on OpenWrt".
- ↑ "Tinyproxy in the FSF's Free Software Directory".
- ↑ "Ohloh analysis of Tinyproxy project".
- ↑ "Tinyproxy in opensuse.org".
- ↑ "Tinyproxy in packages.debian.org".
- ↑ "Tinyproxy in Fedora package database".
- ↑ "FreeBSD port description of Tinyproxy".
- ↑ "Tinyproxy in packages.gentoo.org".
- ↑ "OpenBSD port description of Tinyproxy".
- ↑ "Tinyproxy on Ubuntu LaunchPad".