Best proxy server for Linux
A proxy server is a server program which allows clients to contact it and make indirect network connections to network services such as web-servers.
In bullet summary
A typical proxy is used like this:
- Your web browser connects to a proxy,
- the proxy hands the request to a server,
- the proxy feeds the information acquired from the server back to the web browser.
This can be good because:
- The server thinks it's the proxy who's making the original request (unless the proxy forwards information which reveals who is making the request)
- Caching Proxy servers store requested web-pages, images, and so on for later use, which saves bandwidth. Web-browsers also do caching, but are limited to one browser. Caching proxies are very useful in environments where 20-30 share a proxy. Small and fast caching proxies like Polipo can be very useful for personal use if you normally use 2-3 different web-browsers (or just different profiles in the same web-browser).
Filtering proxies alter the client's request or the server's response.
Polipo  is the best light-weight proxy available today. It's small and cute and uses little or no resources (apart from storage-space). This is a proxy every GNU/Linux user should consider.
Squid is the most commonly used proxy today and it is excellent for huge corporations who are willing to dedicate a computer just for doing proxy-services. Polipo is designed to be small and cute, Squid is designed to run on a dedicated box.
You can use a combination of proxies. The proxy your web-browser contacts can contact an upstream proxy. Example: Firefox -> Polipo -> Privoxy.
Open proxies are proxies who allow anyone to connect to them. Most proxies are private and are protected by a firewall or require a user-name and password. Open Proxies, on the other hand, can be used by everyone and anyone. This is extremely good for everyone.