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