Installing an easy HTTP proxy-cache (polipo)

December 2016

Installing a http proxy cache like Polipo can be advantageous in several ways. It makes internet access faster and has a filtering utility. As Polipo is only accessible from the machine on which it is installed, there is less security risk. The Polipo http proxy-cache can be installed in easy steps on a machine with a Linux operating system. Polipo also has a separate DNS cache and does not access the operating system cache to retrieve DNS information, but it can be configured to access other cache locations if required. Installing a http proxy cache can speed up internet access to a great extent.


Intro


Installing an HTTP proxy cache on your computer can bring several advantages:
  • It allows sharing of the Internet connection
  • The cache will display pages faster, even if you do not share your connection
  • It offers an optional filtering utility.


Polipo is an efficient and lightweight HTTP proxy cache.

Quick Installation


sudo apt-get install polipo


Configure your software (e.g. web browser) to use localhost:8123 as the proxy.

Note that Polipo is accessible only from your machine, thus reducing security constraints.

Some of the configurable settings offered are:
  • Setting the memory and disk cache
  • Automatic filtering of HTTP headers such as user-agent, http-referer
  • URL filter

Allowing hosts on the LAN to connect


If your LAN is 192.168.0.0/24 and your proxy server 192.168.0.1, edit the following file /etc/polipo/config and add the lines:
proxyAddress = "192.168.0.1"     
allowedClients = 127.0.0.1, 192.168.0.0/24


Then type sudo /etc/init.d/polipo restart to take into account the new configuration.

Changing the port


To change the port on which Polipo listens, add the following proxyPort parameter to /etc/polipo/config:
proxyPort = 3128
Remember to use sudo /etc/init.d/polipo restart to apply changes.

Use a proxy server parent


If you want Polipo sends its own requests to another proxy, add the following parameter:
parentProxy = "squid.example.org: 3128"

Using an alternative DNS server


For enhanced performance, Polipo makes its own DNS resolutions without the use of the operating system.
It uses the DNS registered directly in /etc/resolv.conf.

But you can request that Polipo use other DNS servers (e.g. to use OpenDNS). Simply add the following parameter:
dnsNameServer = 208.67.222.222, 208.67.220.220

Disabling IPv6


If you are not using IPv6, add this parameter:

dnsQueryIPv6 = no

More info


Learn more: Installing an HTTP proxy server (Squid)

Related :

This document entitled « Installing an easy HTTP proxy-cache (polipo) » from CCM (ccm.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the license, as this note appears clearly.