Freshly built HTML docs for 3.0.5 beta.
[privoxy.git] / doc / webserver / man-page / privoxy-man-page.html
1
2 <HTML><HEAD><TITLE>Manpage of PRIVOXY</TITLE>
3 <LINK REL="STYLESHEET" TYPE="text/css" HREF="../p_doc.css"></HEAD><BODY>
4 <H1>PRIVOXY</H1>
5 Section:  (1)<BR>Updated: 21 September 2006<BR><A HREF="#index">Index</A>
6 <HR>
7
8 <A NAME="lbAB">&nbsp;</A>
9 <H2>NAME</H2>
10
11 privoxy - Privacy Enhancing Proxy
12 <A NAME="lbAC">&nbsp;</A>
13 <H2>SYNOPSIS</H2>
14
15 <P>
16 <B>privoxy</B> [<B>--help</B> ] [<B>--version</B> ] [<B>--no-daemon</B> ] [<B>--pidfile </B><I>pidfile</I><B></B> ] [<B>--user </B><I>user[.group]</I><B></B> ] [<B>--chroot</B> ] [<B></B><I>configfile</I><B></B> ]
17 <P>
18 <A NAME="lbAD">&nbsp;</A>
19 <H2>OPTIONS</H2>
20
21 <P>
22
23 <B>Privoxy</B> may be invoked with the following command line
24 options:
25 <DL COMPACT>
26 <DT><B>--help</B><DD>
27 Print brief usage info and exit.
28 <DT><B>--version</B><DD>
29 Print version info and exit.
30 <DT><B>--no-daemon</B><DD>
31 Don't  become  a daemon, i.e. don't fork and become process group
32 leader, don't detach from controlling tty, and do all logging there.
33 <DT><B>--pidfile </B><I>pidfile</I><B></B><DD>
34 On startup, write the process ID to <I>pidfile</I>.
35 Delete the <I>pidfile</I> on exit.
36 Failure to create or delete the <I>pidfile</I>
37 is non-fatal. If no <B>--pidfile</B> option is given, no PID file will be used.
38 <DT><B>--user </B><I>user[.group]</I><B></B><DD>
39 After (optionally) writing the PID file, assume the user ID of
40 <I>user</I> and the GID of
41 <I>group</I>, or, if the optional
42 <I>group</I> was not given, the default group of
43 <I>user</I>. Exit if the privileges are not
44 sufficient to do so.
45 <DT><B>--chroot</B><DD>
46 Before changing to the user ID given in the --user option, chroot to
47 that user's home directory, i.e. make the kernel pretend to the
48 <B>Privoxy</B> process that the directory tree starts
49 there. If set up carefully, this can limit the impact of possible
50 vulnerabilities in <B>Privoxy</B> to the files contained in
51 that hierarchy. 
52 </DL>
53 <P>
54
55 If the <I>configfile</I> is not specified on  the  command  line,
56 <B>Privoxy</B>  will  look for a file named
57 <I>config</I> in the current directory . If no
58 <I>configfile</I> is found, <B>Privoxy</B> will 
59 fail to start.
60 <A NAME="lbAE">&nbsp;</A>
61 <H2>DESCRIPTION</H2>
62
63 <P>
64
65 Privoxy is a 
66 web proxy
67 with advanced filtering capabilities for protecting
68 privacy, modifying web page data, managing 
69 cookies, 
70 controlling access, and removing ads, banners, pop-ups and other obnoxious
71 Internet junk. Privoxy has a very flexible configuration and can be
72 customized to suit individual needs and tastes. Privoxy has application for
73 both stand-alone systems and multi-user networks.
74 <P>
75
76 Privoxy is based on Internet Junkbuster (tm).
77 <A NAME="lbAF">&nbsp;</A>
78 <H2>INSTALLATION AND USAGE</H2>
79
80 <P>
81
82 Browsers must be individually configured to use <B>Privoxy</B> as
83 a HTTP proxy.  The default setting is  for  localhost,  on port  8118
84 (configurable in the main config file).  To set the HTTP proxy in Netscape
85 and Mozilla, go through:  <B>Edit</B>;
86 <B>Preferences</B>;  <B>Advanced</B>;
87 <B>Proxies</B>;  <B>Manual Proxy Configuration</B>;
88 <B>View</B>. 
89 <P>
90
91 For Firefox, go through: <B>Tools</B>; 
92 <B>Options</B>; <B>General</B>;
93 <B>Connection Settings</B>;
94 <B>Manual Proxy Configuration</B>. 
95 <P>
96
97 For Internet Explorer, go through: <B>Tools</B>; 
98 <B>Internet Properties</B>; <B>Connections</B>;
99 <B>LAN Settings</B>. 
100 <P>
101
102 The Secure (SSL) Proxy should also be set to the same values, otherwise
103 https: URLs will not be proxied. Note: <B>Privoxy</B> can only
104 proxy HTTP and HTTPS traffic. Do not try it with FTP or other protocols.
105 HTTPS presents some limitations, and not all features will work with HTTPS 
106 connections.
107 <P>
108
109 For other browsers, check the documentation.
110 <A NAME="lbAG">&nbsp;</A>
111 <H2>CONFIGURATION</H2>
112
113 <P>
114
115 <B>Privoxy</B> can be configured with the various configuration
116 files. The default configuration files are: <I>config</I>,
117 <I>default.filter</I>, and
118 <I>default.action</I>. <I>user.action</I> should 
119 be used for locally defined exceptions to the default rules of
120 <I>default.action</I>, and <I>user.filter</I> for 
121 locally defined filters. These are well commented.  On Unix
122 and Unix-like systems, these are located in
123 <I>/etc/privoxy/</I> by default. 
124 <P>
125
126 <B>Privoxy</B> uses the concept of <B>actions</B> 
127 in order to manipulate the data stream between the browser and remote sites.
128 There are various actions available with specific functions for such things 
129 as blocking web sites, managing cookies, etc. These actions can be invoked
130 individually or combined, and used against individual URLs, or groups of URLs 
131 that can be defined using wildcards and regular expressions. The result is
132 that the user has greatly enhanced control and freedom.
133 <P>
134
135 The actions list (ad blocks, etc) can also be configured with your
136 web browser at <A HREF="http://config.privoxy.org/">http://config.privoxy.org/.</A>
137 <B>Privoxy's</B> configuration parameters  can also  be viewed at
138 the same page. In addition, <B>Privoxy</B> can be toggled on/off.
139 This is an internal page, and does not require Internet access.
140 <P>
141
142 See the <I>User Manual</I> for a detailed
143 explanation of installation, general usage, all configuration options, new
144 features and notes on upgrading.
145 <A NAME="lbAH">&nbsp;</A>
146 <H2>SAMPLE CONFIGURATION</H2>
147
148 <P>
149
150 A brief example of what a simple <I>default.action</I>
151 configuration might look like:
152 <P>
153 <PRE>
154  # Define a few useful custom aliases for later use
155  {{alias}}
156
157  # Useful aliases that combine more than one action
158  +crunch-cookies = +crunch-incoming-cookies +crunch-outgoing-cookies
159  -crunch-cookies = -crunch-incoming-cookies -crunch-outgoing-cookies
160  +block-as-image = +block +handle-as-image
161
162  # Fragile sites should have the minimum changes
163  fragile     = -block -deanimate-gifs -fast-redirects -filter \
164                -hide-referer -prevent-cookies -kill-popups
165
166  ## Turn some actions on ################################
167  ## NOTE: Actions are off by default, unless explictily turned on 
168  ## otherwise with the '+' operator.
169
170 { \
171 -add-header \
172 -block \
173 -content-type-overwrite \
174 -crunch-client-header \
175 -crunch-if-none-match \
176 -crunch-outgoing-cookies \
177 -crunch-incoming-cookies \
178 -crunch-server-header \
179 +deanimate-gifs{last} \
180 -downgrade-http-version \
181 -fast-redirects \
182 -filter{js-annoyances} \
183 -filter{js-events} \
184 -filter{html-annoyances} \
185 -filter{content-cookies} \
186 +filter{refresh-tags} \
187 -filter{unsolicited-popups} \
188 -filter{all-popups} \
189 +filter{img-reorder} \
190 +filter{banners-by-size} \
191 -filter{banners-by-link} \
192 +filter{webbugs} \
193 -filter{tiny-textforms} \
194 +filter{jumping-windows} \
195 -filter{frameset-borders} \
196 -filter{demoronizer} \
197 -filter{shockwave-flash} \
198 -filter{quicktime-kioskmode} \
199 -filter{fun} \
200 -filter{crude-parental} \
201 +filter{ie-exploits} \
202 -filter{site-specifics} \
203 -filter-client-headers \
204 -filter-server-headers \
205 -force-text-mode \
206 -handle-as-empty-document
207 -handle-as-image \
208 -hide-accept-language \
209 -hide-content-disposition \
210 -hide-if-modified-since \
211 +hide-forwarded-for-headers \
212 +hide-from-header{block} \
213 +hide-referrer{forge} \
214 -hide-user-agent \
215 -inspect-jpegs \
216 -kill-popups \
217 -limit-connect \
218 -overwrite-last-modified \
219 -redirect \
220 +prevent-compression \
221 -send-vanilla-wafer \
222 -send-wafer \
223 +session-cookies-only \
224 +set-image-blocker{pattern} \
225 -treat-forbidden-connects-like-blocks \
226 }
227 / # '/' Match *all* URL patterns
228
229  
230  # Block, and treat these URL patterns as if they were 'images'.
231  # We would expect these to be ads.
232  { +block-as-image }
233   .ad.doubleclick.net
234   .a[0-9].yimg.com/(?:(?!/i/).)*$
235   ad.*.doubleclick.net
236
237  # Block all URLs that match these patterns
238  { +block }
239   ad*.
240   .*ads.
241   banner?.
242   /.*count(er)?\.(pl|cgi|exe|dll|asp|php[34]?)
243   .hitbox.com 
244   media./.*(ads|banner)
245
246  # Make exceptions for these harmless ones that would be 
247  # caught by our +block patterns just above.
248  { -block }
249   adsl.
250   advice.
251   .*downloads.
252 </PRE>
253
254 <P>
255
256 Then for a <I>user.action</I>, we would put local,
257 narrowly defined exceptions:
258 <P>
259 <PRE>
260  # Re-define aliases as needed here
261  {{alias}}
262
263  # Useful aliases
264  -crunch-cookies = -crunch-incoming-cookies -crunch-outgoing-cookies
265  
266  # Set personal exceptions to the policies in default.action #######
267
268  # Sites where we want persistent cookies, so allow *all* cookies
269  { -crunch-cookies -session-cookies-only }
270   .redhat.com
271   .sun.com
272   .msdn.microsoft.com
273  
274  # These sites breaks easily. Use our &quot;fragile&quot; alias here.
275  { fragile }
276   .forbes.com
277   mybank.example.com
278
279  # Replace example.com's style sheet with one of my choosing
280  { +redirect{<A HREF="http://localhost/css-replacements/example.com.css}">http://localhost/css-replacements/example.com.css}</A> }
281   example.com/stylesheet.css
282 </PRE>
283
284 <P>
285
286 See the comments in the configuration files themselves, or the 
287 <I>User Manual</I>
288 for full explanations of the above syntax, and other <B>Privoxy</B>
289 configuration options.
290 <A NAME="lbAI">&nbsp;</A>
291 <H2>FILES</H2>
292
293 <P>
294 <PRE>
295  
296  <I>/usr/sbin/privoxy</I>
297  <I>/etc/privoxy/config</I>
298  <I>/etc/privoxy/default.action</I>
299  <I>/etc/privoxy/standard.action</I>
300  <I>/etc/privoxy/user.action</I>
301  <I>/etc/privoxy/default.filter</I>
302  <I>/etc/privoxy/user.filter</I>
303  <I>/etc/privoxy/trust</I>
304  <I>/etc/privoxy/templates/*</I>
305  <I>/var/log/privoxy/logfile</I>
306 </PRE>
307
308 <P>
309
310 Various other files should be included, but may vary depending on platform
311 and build configuration. Additional documentation should be included in the local
312 documentation directory.
313 <A NAME="lbAJ">&nbsp;</A>
314 <H2>SIGNALS</H2>
315
316 <P>
317
318 <B>Privoxy</B> terminates on the <B>SIGINT</B>,
319 <B>SIGTERM</B> and <B>SIGABRT</B> signals. Log
320 rotation scripts may cause a re-opening of the logfile by sending a 
321 <B>SIGHUP</B> to <B>Privoxy</B>. Note that unlike
322 other daemons,  <B>Privoxy</B> does not need to be made aware of
323 config file changes by <B>SIGHUP</B> -- it will detect them
324 automatically. 
325 <A NAME="lbAK">&nbsp;</A>
326 <H2>NOTES</H2>
327
328 <P>
329
330 This is a BETA version of <B>Privoxy</B>. Not 
331 all features are well tested.
332 <P>
333
334 Please see the <I>User Manual</I> on how to contact the
335 developers, for feature requests, reporting problems, and other questions.
336 <A NAME="lbAL">&nbsp;</A>
337 <H2>SEE ALSO</H2>
338
339 <P>
340
341 Other references and sites of interest to <B>Privoxy</B>
342 users:
343 <P>
344
345 <P>
346 <A HREF="http://www.privoxy.org/">http://www.privoxy.org/,</A> 
347 the <B>Privoxy</B> Home page. 
348 <P>
349 <A HREF="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/,</A> 
350 the <B>Privoxy</B> FAQ. 
351 <P>
352 <A HREF="http://sourceforge.net/projects/ijbswa/">http://sourceforge.net/projects/ijbswa/,</A> 
353 the Project Page for <B>Privoxy</B> on 
354 SourceForge.
355 <P>
356 <A HREF="http://config.privoxy.org/">http://config.privoxy.org/,</A>
357 the web-based user interface. <B>Privoxy</B> must be
358 running for this to work. Shortcut: <A HREF="http://p.p/">http://p.p/</A>
359 <P>
360 <A HREF="http://sourceforge.net/tracker/?group_id=11118">http://sourceforge.net/tracker/?group_id=11118</A>&amp;atid=460288, to submit ``misses'' and other
361 configuration related suggestions to the developers. 
362 <P>
363 <A HREF="http://www.junkbusters.com/ht/en/cookies.html">http://www.junkbusters.com/ht/en/cookies.html,</A>
364 an explanation how cookies are used to track web users.
365 <P>
366 <A HREF="http://www.junkbusters.com/ijb.html">http://www.junkbusters.com/ijb.html,</A>
367 the original Internet Junkbuster.
368 <P>
369 <A HREF="http://privacy.net/">http://privacy.net/,</A> a useful site
370 to check what information about you is leaked while you browse the web.
371 <P>
372 <A HREF="http://www.squid-cache.org/">http://www.squid-cache.org/,</A> a very popular
373 caching proxy, which is often used together with <B>Privoxy</B>.
374 <P>
375 <A HREF="http://tor.eff.org/">http://tor.eff.org/,</A> 
376 <B>Tor</B> can help anonymize web browsing, 
377 web publishing, instant messaging, IRC, SSH, and other applications.
378 <P>
379 <A HREF="http://www.privoxy.org/developer-manual/">http://www.privoxy.org/developer-manual/,</A> 
380 the <B>Privoxy</B> developer manual. 
381 <A NAME="lbAM">&nbsp;</A>
382 <H2>DEVELOPMENT TEAM</H2>
383
384 <P>
385 <PRE>
386  Fabian Keil, developer
387  David Schmidt, developer
388  
389  Hal Burgiss
390  Ian Cummings
391  F&#233;lix Rauch
392  Roland Rosenfeld
393 </PRE>
394
395 <A NAME="lbAN">&nbsp;</A>
396 <H2>COPYRIGHT AND LICENSE</H2>
397
398 <A NAME="lbAO">&nbsp;</A>
399 <H3>COPYRIGHT</H3>
400
401 <P>
402
403 Copyright (C) 2001 - 2006 by Privoxy Developers &lt;<A HREF="mailto:ijbswa-developers@lists.sourceforge.net">ijbswa-developers@lists.sourceforge.net</A>&gt;
404 <P>
405
406 Some source code is based on code Copyright (C) 1997 by Anonymous Coders
407 and Junkbusters, Inc. and licensed under the <I>GNU General Public
408 License</I>.
409 <A NAME="lbAP">&nbsp;</A>
410 <H3>LICENSE</H3>
411
412 <P>
413
414 <B>Privoxy</B> is free software; you can
415 redistribute it and/or modify it under the terms of the 
416 <I>GNU General Public
417 License</I>, version 2, as published by the Free Software Foundation.
418 <P>
419
420 This program is distributed in the hope that it will be useful, but WITHOUT
421 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
422 FITNESS FOR A PARTICULAR PURPOSE.  See the 
423 <I>GNU General Public License</I> for
424 more details, which is available from the Free Software Foundation, Inc, 
425 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
426 <P>
427
428 You should have received a copy of the  <I>GNU General Public License</I>
429 along with this program; if not, write to the  Free Software
430 Foundation, Inc. 51 Franklin Street, Fifth Floor
431 Boston, MA 02110-1301
432 USA 
433 <P>
434
435 <HR>
436 <A NAME="index">&nbsp;</A><H2>Index</H2>
437 <DL>
438 <DT><A HREF="#lbAB">NAME</A><DD>
439 <DT><A HREF="#lbAC">SYNOPSIS</A><DD>
440 <DT><A HREF="#lbAD">OPTIONS</A><DD>
441 <DT><A HREF="#lbAE">DESCRIPTION</A><DD>
442 <DT><A HREF="#lbAF">INSTALLATION AND USAGE</A><DD>
443 <DT><A HREF="#lbAG">CONFIGURATION</A><DD>
444 <DT><A HREF="#lbAH">SAMPLE CONFIGURATION</A><DD>
445 <DT><A HREF="#lbAI">FILES</A><DD>
446 <DT><A HREF="#lbAJ">SIGNALS</A><DD>
447 <DT><A HREF="#lbAK">NOTES</A><DD>
448 <DT><A HREF="#lbAL">SEE ALSO</A><DD>
449 <DT><A HREF="#lbAM">DEVELOPMENT TEAM</A><DD>
450 <DT><A HREF="#lbAN">COPYRIGHT AND LICENSE</A><DD>
451 <DL>
452 <DT><A HREF="#lbAO">COPYRIGHT</A><DD>
453 <DT><A HREF="#lbAP">LICENSE</A><DD>
454 </DL>
455 </DL>
456 <HR>
457 This document was created by
458 man2html,
459 using the manual pages.<BR>
460 Time: 01:21:32 GMT, September 22, 2006
461 </BODY>
462 </HTML>