RabbIT proxy for a faster web RabbIT logo
w3c on HTTP

New release
rabbit 4.0

Current version: 3.18
updated: Mar 29 2009

Java/6+ only
Old versions

dnsjava source: dnsjava-2.0.6.tar.gz

Old version
RabbIT 2.x

Robert Olofsson


Q) Why does IE6 only want to download file when I try to use rabbit?

A) For some reason it seems that some versions of IE6 don't have gzip support enabled by default. You should be able to turn it on if you enable HTTP/1.1 for proxies and also enable the HTTP/1.1 extensions for proxies (look in "Internet Options->Advanced Tab").
You could also try mozilla or opera.

Q) How do I install rabbit as a windows service?

A) See the windows service page

Q) How do I make RabbIT only cache images/html-pages/mp3's?

A) You enable the rabbit.filter.DontCacheFilter and configure it to your needs
To enable the rabbit.filter.DontCacheFilter append it to either httpinfilters or httpoutfilters depending upon which mode you will be using. You can filter on the URL of the request (httpinfilters) or on the mime type found in the http response (httpoutfilters) or using both modes.
In the "[rabbit.filter.DontCacheFilter]" section you specify how the filter will work. some examples are: "dontCacheURLmatching=(\.html|\.asp)" and "onlyCacheMimematching=text/html". More examples are found in the rabbit.conf file supplied with RabbIT.

Q) How do I make RabbIT block access to certain sites?

A) Enable the BlockFilter and configure it to your needs. An example configuration may look like this: "blockURLmatching=(\.sex\.|[-.]ad(s?)\.)". Which should block some advertising.

Q) How do I enable a new filter?

A) It depends on the type of filter.

Filters that modify or take actions upon reading the request are enabled by appending them to the httpinfilters value found in the [Filters] section of rabbit.conf.

For filters that act upon the response header, append the filter to the httpoutfilters value found in the [Filters] section of rabbit.conf.

For filters of the HTML code append the filter to the filters value found in the [rabbit.handler.FilterHandler] section of rabbit.conf.

Q) How do I make RabbIT filter encrypted sessions (https)?

A) You do not, RabbIT can only tunnel encrypted sessions.

Q) How do I make RabbIT tunnel encrypted sessions (https)?

A) This is the default mode of RabbIT. It is controlled by the configuration option "allowSSL" found in the "[rabbit.proxy.Proxy]" section. Allowed values are "yes", "no" and giving a list of port numbers that are allowed.
Since RabbIT only shuffles the traffic when using SSL tunneling it may be used to telnet (or ssh:ing) out of a restricted zone if you enable unrestricted use of SSL-tunneling.

Q) How do I change the NoAd.gif image?

A) In rabbit.conf change the line: adreplacer=http://$proxy/FileSender/public/NoAd.gif to your own file. If you want RabbIT to serve the file put it in the /path/to/rabbit/htdocs/public/ directory (which is where you will find NoAd.gif).

Q) How do I enable proxy authentication for all users?

A) Add the ProxyAuth class to the http in filters. That is edit the line containing httpinfilters so it looks like this:
Currently ProxyAuth needs to be after the HTTPBaseFilter. After this you edit the file containing the username and passwords that will be used. Normally the file is RabbIT2/conf/allowed, but you can change that in the [rabbit.filter.ProxyAuth]-sectionl if you want to.

Q) Sites that use NTLM authentication does not work with IE

A) Try another browser that supports NTLM connections over a proxy like Mozilla/Firefox. It seems that IE will not even try to establish NTLM connections with rabbit so sadly there is nothing to fix in rabbit.

Q) How do I script log rotation?

A) Rabbits administrative interface have a page that does this. You can use wget to access that page from a script, like this:

robo@ghoul:/tmp$ export http_proxy=http://ghoul.khelekore.org:9666/
robo@ghoul:/tmp$ wget --proxy-user=RabbIT --proxy-passwd=RabbIT http://ghoul.khelekore.org:9666/LogRotator
Replace ghoul.khelekore.org with the hostname of your proxy.
Replace the user and passwd to an administrator of your proxy.
Replace the port number with the port number of your proxy.

Q) How do I set a maximum size on the images that are converted?

A) Add the following to the convert arguments: "-resize 576x432>" (adjust the width and height to fit your screen. This is probably very useful if you use a pda.

Q) How do I make RabbIT identify itself as "My own 1337 proxy"?

A) Edit the serverIdentity in rabbit.conf.