6351b1a897feacd8137987303a057965413b1f4e
[privoxy.git] / doc / source / faq.sgml
1 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
2 <!--
3  File        :  $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
4
5  Purpose     :  FAQ
6                 This file belongs into
7                 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
8                 
9  $Id: faq.sgml,v 1.18 2002/03/18 16:40:31 hal9 Exp $
10
11  Written by and Copyright (C) 2001 the SourceForge
12  IJBSWA team.  http://ijbswa.sourceforge.net
13
14  Based on the Internet Junkbuster originally written
15  by and Copyright (C) 1997 Anonymous Coders and 
16  Junkbusters Corporation.  http://www.junkbusters.com
17 -->
18
19 <article id="index">
20 <artheader>
21 <title>Junkbuster Frequently Asked Questions</title>
22
23 <pubdate>$Id: faq.sgml,v 1.18 2002/03/18 16:40:31 hal9 Exp $</pubdate>
24
25 <authorgroup>
26  <author>
27   <affiliation>
28    <orgname>By: Junkbuster Developers</orgname>
29    </affiliation>
30  </author>
31 </authorgroup>
32
33 <abstract>
34  <para>
35 The FAQ document gives users and developers alike answers to frequently asked
36 questions about the Internet Junkbuster. <application>Internet
37 Junkbuster</application> is a web proxy with advanced filtering capabilities
38 for protecting privacy, filtering web page content, managing cookies,
39 controlling access, and removing ads, banners, pop-ups and other obnoxious
40 Internet Junk. Junkbuster has a very flexible configuration and can be
41 customized to suit individual needs and tastes. <application>Internet
42 Junkbuster</application> has application for both stand-alone systems and
43 multi-user networks.
44  </para>
45  <para>
46 You can find the latest version of the document at <ulink url="http://ijbswa.sourceforge.net/faq/">http://ijbswa.sourceforge.net/faq/</ulink>.
47 Please see the Contact section in the 
48 <ulink url="http://ijbswa.sourceforge.net/user-manual/contact.html">user-manual</ulink> if you want to contact the developers.
49  </para>
50
51 <!--   <para> -->
52 <!--    Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
53 <!--   </para> -->
54 </abstract>
55 </artheader>
56
57
58 <!--   ~~~~~       New section      ~~~~~     -->
59
60 <!--
61 <sect1 id="introduction"><title>Introduction</title>
62 <para>
63    Fillme.
64 </para>
65 </sect1>
66 -->
67 <!--   ~~~~~       New section      ~~~~~     -->
68
69 <sect1 id="questions"><title>Frequently Asked Questions</title>
70
71 <!--   ~~~~~       New section      ~~~~~     -->
72
73 <sect2 id="general"><title>General Information</title>
74
75 <sect3 id="newjb"><title>What is this new version of <application>Junkbuster</application>?</title>
76  <para>
77   The original <application>Internet Junkbuster</application> (tm) is a 
78   coyrighted product of <ulink url="http://www.junkbusters.com">Junkbusters
79   Corporation</ulink>. Development of this effort stopped some time ago as of
80   version 2.0.2. Stefan Walherr started the ijbswa project on <ulink
81   url="http://ijbswa.sourceforge.net">Sourceforge</ulink> to rekindle
82   development. Other developers subsequently joined with Stefan, and have
83   since added many new features, refinements and enhancements. 
84  </para>
85  <para>
86   The new <application>Junkbuster</application> started with the same
87   code base, but has changed significantly at this point.
88  </para>
89
90 </sect3>
91
92 <sect3 id="differs"><title>How does it differ from the old <application>Junkbuster?</application></title>
93  <para>
94    All the old features remain. The new <application>Junkbuster</application> 
95    still blocks ads and banners, still manages cookies, and still helps protect
96    your privacy. But, these are all enhanced, and many new features have been 
97    added, all in the same vein.
98  </para>
99  <para>
100   The configuration has changed significantly as well. This is something that
101   users will notice right off the bat. The <quote>blocklist</quote> file does
102   not exist any more. This is replaced by <quote>actions</quote> files, such
103   as <filename>ijb.actions</filename>. This is where most of the per site
104   configuration is now.
105
106  </para>
107 </sect3>
108
109 <sect3 id="features"><title>What are some of the new features?</title>
110 <!--
111  The section is in both user-manual and faq. Please keep in sync!!!
112 -->
113 <para>
114  <itemizedlist>
115
116  <listitem>
117   <para>
118    Integrated browser based configuration and control utility (<ulink
119    url="http://i.j.b">http://i.j.b</ulink>). Browser-based tracing of rule
120    and filter effects.
121   </para>
122  </listitem> 
123 <!--
124  <listitem>
125   <para>
126    Modularized configuration that will allow for system wide settings, and
127    individual user settings. (not implemented yet, probably a 3.1 feature)
128   </para>
129  </listitem> 
130 -->
131  <listitem>
132   <para>
133     Blocking of annoying pop-up browser windows.
134   </para>
135  </listitem> 
136
137  <listitem>
138   <para>
139    HTTP/1.1 compliant (most, but not all 1.1 features are supported).
140   </para>
141  </listitem> 
142
143  <listitem>
144   <para>
145    Support for Perl Compatible Regular Expressions in the configuration files, and 
146    generally a more sophisticated and flexible configuration syntax over
147    previous versions. 
148   </para>
149  </listitem> 
150
151  <listitem>
152   <para>
153    GIF de-animation. 
154   </para>
155  </listitem> 
156  
157  <listitem>
158   <para>
159    Web page content filtering (removes banners based on size,
160    invisible <quote>web-bugs</quote>, JavaScript, pop-ups, status bar abuse,
161    etc.)
162   </para>
163  </listitem> 
164  
165  <listitem>
166   <para>
167    Bypass many click-tracking scripts (avoids script redirection).
168  
169   </para>
170  </listitem> 
171  
172  <listitem>
173   <para>
174    Multi-threaded (POSIX and native threads).
175   </para>
176  </listitem> 
177
178  <listitem>
179   <para>
180    Auto-detection and re-reading of config file changes.
181   </para>
182  </listitem> 
183
184  <listitem>
185   <para>
186    User-customizable HTML templates (e.g. 404 error page).
187   </para>
188  </listitem> 
189
190  <listitem>
191   <para>
192    Improved cookie management features (e.g. session based cookies).
193   </para>
194 </listitem> 
195
196  <listitem>
197   <para>
198    Builds from source on most UNIX-like systems. Packages available for: Linux
199    (RedHat, SuSE, or Debian), Windows, Sun Solaris, Mac OSX, OS/2, HP-UX 11 and AmigaOS.
200  
201   </para>
202  </listitem> 
203
204  <listitem>
205   <para>
206    In addition, the configuration is much more powerful and versatile over-all.
207   </para>
208 </listitem> 
209
210  </itemizedlist>
211 </para>
212
213 </sect3>
214
215 <sect3 id="proxymoron"><title>What is a <quote>proxy</quote>? How does
216 <application>Junkbuster</application> work? </title>
217  <para>
218   When you connect to a web site with <application>Junkbuster</application>, 
219   you are really connecting to your locally running version of 
220   <application>Junkbuster</application>. <application>Junkbuster</application>
221   intercepts your requests for the web page, and relays that to the 
222   <quote>real</quote> web site. The web site sends the HTTP data stream 
223   back to <application>Junkbuster</application>, where
224   <application>Junkbuster</application> can work its magic before it 
225   relays this data back to your web browser.
226  </para>
227
228  <para>
229   Since <application>Junkbuster</application> sits between you and the 
230   WWW, it is in a position to intercept and completely manage all web traffic and 
231   HTTP content before it gets to your browser.
232   <application>Junkbuster</application> uses various programming methods to do
233   this, all of which is under your control via the various configuration
234   files and options.
235  </para>
236
237  <para>
238   There are many kinds of proxies. <application>Junkbuster</application> best 
239   fits the <quote>filtering proxy</quote> category.
240  </para>
241
242 </sect3>
243
244 <sect3 id="browsers2"><title>My browser does the same things as 
245 Junkbuster. Why should I use Junkbuster at all?</title>
246  <para>
247   Modern browsers do indeed have <emphasis>some</emphasis> of the same
248   functionality as <application>Junkbuster</application>. Maybe this is
249   adequate for you. But <application>Junkbuster</application> is much more
250   verstatile and powerful, and can do a number of things that browsers just can't.
251  </para>
252  <para>
253   In addition, a proxy is good choice if you use multiple browsers, or 
254   have a LAN with multiple computers. This way all the configuration 
255   is in one place, and you don't have to maintain a similar configuration 
256   for possibly many browsers.
257
258  </para>
259 </sect3>
260
261
262
263 <sect3 id="license"><title>Is there is a license or fee? What about a 
264 warranty? Registration?</title>
265  <para>
266   <application>Junkbuster</application> is licensed under the 
267   GNU General Public License (GPL). It is free to use, copy, 
268   modify or distribute as you wish under the terms of this license.
269   See <ulink
270   url="http://www.gnu.org/copyleft/gpl.html">http://www.gnu.org/copyleft/gpl.html</ulink>
271   for specifics.
272   </para>
273  <para>
274   There is no warranty of any kind, expressed, implied or otherwise. That is
275   something that would cost real money ;-) There is no registration either.
276   <application>Junkbuster</application> really is <emphasis>free</emphasis>
277   in every respect!
278
279  </para>
280 </sect3>
281
282 </sect2>
283
284
285 <!--   ~~~~~       New section      ~~~~~     -->
286
287 <sect2 id="installation"><title>Installation</title>
288
289 <sect3 id="newinstall"><title>Can I install the new 
290  <application>Junkbuster</application> over the old one?</title>
291  <para>
292    We recommend you uninstall the old <application>Junkbuster</application>
293    first to minimize conflicts and confusion. You may want to 
294    save your old configuration files for future reference. The configuration
295    is substantially changed.
296  </para>
297  <para>
298   See the <ulink
299   url="http://ijbswa.sourceforge.net/user-manual/">user-manual</ulink> for
300   platform specific installation instructions. [FIXME: This is meant for after
301   the name change for 3.0!]
302  </para>
303  
304 </sect3>
305
306 <sect3>
307 <title id="firststep">I just installed Junkbuster. Is there anything 
308 special I have to do now?</title>
309
310 <para>
311  All browsers must be told to use <application>Junkbuster</application> 
312  as a proxy by specifying the correct proxy address and port number 
313  in the appropriate configuration area for the browser. See below.
314
315 </para>
316
317 </sect3>
318
319
320 <sect3 id="localhost"><title>What is the proxy address of Junkbuster?</title>
321  <para>
322   If you set up the <application>Junkbuster</application> to run on
323   the computer you browse from (rather than your ISP's server or some
324   networked computer on a LAN), the proxy will be on <quote>localhost</quote>
325   (which is the special name used by every computer on the Internet to refer
326   to itself) and the port will be 8118 (unless you have told the Internet
327   Junkbuster to run on a different port with the
328   <emphasis>listen-address</emphasis> config option). 
329  </para>
330  <para>
331   When configuring your browser's proxy settings you typically enter
332   the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
333   and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
334   for <quote>port</quote>.  This tells your browser to send all web 
335   requests to <quote>Junkbuster</quote> instead of directly to the 
336   Interenet.
337  </para>
338  <para>
339   <application>Junkbuster</application> can also be used to proxy for 
340   a Local Area Network. In this case, your would enter either the IP 
341   address of the LAN host where <application>Junkbuster</application> 
342   is running, or the equivalent hostname. Port assignment would be 
343   same as above.
344  </para>
345  <para>
346   <application>Junkbuster</application> does not currently handle
347   protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
348   protocols. 
349  </para>
350 </sect3>
351
352 <sect3>
353 <title id="nothing">I just installed Junkbuster, and nothing is happening.
354 All the ads are there. What's wrong?</title>
355
356 <para>
357  Did you configure your browser to use <application>Junkbuster</application> 
358  as a proxy? It does not sound like it. See above. You might also try flushing
359  the browser's caches to force a full re-reading of pages. You can verify 
360  that <application>Junkbuster</application> is running, and your browser 
361  is correctly configured by entering the special URL: 
362  <ulink url="http://i.j.b/">http://i.j.b/</ulink>. This should give you 
363  a banner that says <quote>This is the Internet JUNKBUSTER</quote> and 
364  access to <application>Junkbuster's</application> internal configuration. 
365  If you see this, then you are good to go. If not, the browser or 
366  <application>Junkbuster</application> are not set up correctly.
367
368 </para>
369
370 </sect3>
371
372 </sect2>
373
374
375 <!--   ~~~~~       New section      ~~~~~     -->
376
377 <sect2 id="configuration"><title>Configuration</title>
378
379 <sect3 id="newconfig"><title>Can I use my old config files?</title>
380  <para>
381    There are major changes to <application>Junkbuster</application> 
382    configuration from version 2.0.x to 2.9.x and later. The older files will
383    not work at all. If this is the case, you will need to re-enter your old
384    data into the new configuration structure. This is probably also a good 
385    recommendation even if upgrading from 2.9.x to 3.x since there were 
386    many minor changes along the way.
387  </para>
388 </sect3>
389
390 <sect3>
391 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
392
393 <para>
394  <quote>actions</quote> files are where various actions that
395  <application>Junkbuster</application> might take, are configured. 
396  Typically, you would define a set of default actions that apply 
397  to all URLs, then add exceptions to these defaults.
398 </para>
399  
400 <para>
401  Actions can be defined on a per site basis, or for groups of sites. Actions
402  can also be grouped together and then applied to one or more sites. There
403  are many possible actions that might apply to any given site. As an example,
404  if we are blocking cookies as one of our default
405  <application>actions</application>, but need to accept cookies from a given
406  site, we would define this in our <quote>actions</quote> file.
407
408 </para>
409
410 <para>
411  <application>Junkbuster</application> comes with several default
412  <application>actions</application> files, with varying degrees 
413  of filtering and blocking, as starting points for your own 
414  configuration (see below).
415 </para>
416
417 </sect3>
418
419 <sect3 id="actionss">
420 <title>The <quote>actions</quote>concept confuses me. Please list 
421 some of these <quote>actions</quote>.</title>
422 <para>
423  These are all explained in the 
424  <ulink url="http://ijbswa.sourceforge.net/user-manual/configuration.html#ACTIONSFILE">user-manual</ulink>.
425  Please refer to that.
426 </para>
427 </sect3>
428
429
430 <sect3>
431 <title id="actconfig">How are actions files configured? What is the easiest
432 way to do this?</title> 
433
434 <para>
435  The easiest way to do this, is to access <application>Junkbuster</application>
436  with your web browser at <ulink url="http://i.j.b/">http://i.j.b/</ulink>, 
437  and then select 
438  "<ulink url="http://ijbswa.sourceforge.net/config/edit-actions">Edit the actions list</ulink>"
439  from the selection list. You can also do this by editing the appropriate 
440  file with a text editor.
441 </para>
442
443 <para>
444  Please see the 
445  <ulink
446  url="http://ijbswa.sourceforge.net/user-manual/configuration.html#ACTIONSFILE">user-manual</ulink> for a
447  detailed explanation of these and other configuration files, and their
448  various options and syntax.
449 </para>
450 </sect3>
451
452
453 <!--
454 FIXME: Commenting these out until we have some data there. HB 03/17/02.
455
456 <sect3 id="yahoo"><title>How can I make my Yahoo account work?</title>
457  <para>
458    Fillme.
459  </para>
460 </sect3>
461
462 <sect3 id="hotmail"> <title>How can I make my Hotmail account work?</title>
463   <para>
464    Fillme.
465   </para>
466 </sect3>
467
468 <sect3 id="gmx"> <title>How can I make my GMX account work?</title>
469  <para>
470    Fillme.
471  </para>
472 </sect3>
473 -->
474
475 <sect3 id="configfiles"> <title>What are the differences between
476 ijb-intermediate.action, ijb-basic.action, etc.?</title>
477  <para>
478 Configuring the Internet Junkbuster is not easy. To help you get started, we
479 provide you with three different default configurations. The following table
480 shows you, which features are enabled in each configuration.
481  </para>
482  <para>
483 <table frame=all><title>Default Configurations</title>
484 <tgroup cols=5 align=left colsep=1 rowsep=1>
485 <colspec colname=c1>
486 <colspec colname=c2>
487 <colspec colname=c3>
488 <colspec colname=c4>
489 <colspec colname=c5>
490 <thead>
491 <row>
492   <entry>Feature</entry>
493   <entry>ijb.action</entry>
494   <entry>ijb-basic.action</entry>
495   <entry>ijb-intermediate.action</entry>
496   <entry>ijb-advanced.action</entry>
497 </row>
498 </thead>
499
500 <!--  <tfoot> -->
501 <!--  <row> -->
502 <!--    <entry>f1</entry> -->
503 <!--    <entry>f2</entry> -->
504 <!--    <entry>f3</entry> -->
505 <!--    <entry>f4</entry> -->
506 <!--    <entry>f5</entry> -->
507 <!--  </row> -->
508 <!--  </tfoot> -->
509
510 <tbody>
511 <!-- new row -->
512 <row>
513   <entry>ad-filtering</entry>
514   <entry>?</entry>
515   <entry>x</entry>
516   <entry>x</entry>
517   <entry>x</entry>
518 </row>
519 <!-- new row -->
520 <row>
521   <entry>blank image</entry>
522   <entry>?</entry>
523   <entry>x</entry>
524   <entry>x</entry>
525   <entry>x</entry>
526 </row>
527 <!-- new row -->
528 <row>
529   <entry>de-animate GIFs</entry>
530   <entry>?</entry>
531   <entry>x</entry>
532   <entry>x</entry>
533   <entry>x</entry>
534 </row>
535 <!-- new row -->
536 <row>
537   <entry>referer forging</entry>
538   <entry>?</entry>
539   <entry>x</entry>
540   <entry>x</entry>
541   <entry>x</entry>
542 </row>
543 <!-- new row -->
544 <row>
545   <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
546   <entry>?</entry>
547   <entry>x</entry>
548   <entry>x</entry>
549   <entry>x</entry>
550 </row>
551 <!-- new row -->
552 <row>
553   <entry>no-popup windows</entry>
554   <entry>?</entry>
555   <entry></entry>
556   <entry>x</entry>
557   <entry>x</entry>
558 </row>
559 <!-- new row -->
560 <row>
561   <entry>fast redirects</entry>
562   <entry>?</entry>
563   <entry></entry>
564   <entry>x</entry>
565   <entry>x</entry>
566 </row>
567 <!-- new row -->
568 <row>
569   <entry>hide-referrer</entry>
570   <entry>?</entry>
571   <entry></entry>
572   <entry>x</entry>
573   <entry>x</entry>
574 </row>
575 <!-- new row -->
576 <row>
577   <entry>hide-useragent</entry>
578   <entry>?</entry>
579   <entry></entry>
580   <entry>x</entry>
581   <entry>x</entry>
582 </row>
583 <!-- new row -->
584 <row>
585   <entry>content-modification</entry>
586   <entry>?</entry>
587   <entry></entry>
588   <entry></entry>
589   <entry>x</entry>
590 </row>
591 <!-- new row -->
592 <row>
593   <entry>feature-x</entry>
594   <entry>?</entry>
595   <entry></entry>
596   <entry></entry>
597   <entry></entry>
598 </row>
599 <!-- new row -->
600 <row>
601   <entry>feature-y</entry>
602   <entry>?</entry>
603   <entry></entry>
604   <entry></entry>
605   <entry></entry>
606 </row>
607 <!-- new row -->
608 <row>
609   <entry>feature-z</entry>
610   <entry>?</entry>
611   <entry></entry>
612   <entry></entry>
613   <entry></entry>
614 </row>
615 <!-- finish -->
616 </tbody>
617 </tgroup>
618 </table>
619 </para>
620 </sect3>
621
622 <sect3 id="browseconfig"> <title>Why can I change the configuration with a
623 browser? Does that not raise security issues?</title>
624  <para>
625 What I don't understand, is how I can browser edit the config file as a
626 regular user, while the whole /etc/junkbuster hierarchy belongs to the user
627 "junkbuster", with only 644 perms.
628  </para>
629  <para>
630 When you use the browser-based editor, JunkBuster itself is writing to the
631 config files.  Because JunkBuster is running as the user "junkbuster", it can
632 update the config files.
633  </para>
634  <para>
635 If you don't like this, setting "enable-edit-actions 0" in the config file
636 will disable the browser-based editor.  If you're that paranoid, you should
637 also consider setting "enable-remote-toggle 0" to prevent browser-based
638 enabling/disabling of JunkBuster.
639  </para>
640  <para>
641 Note that normally only local users can connect to JunkBuster, so this is not
642 (normally) a security problem.
643  </para>
644 </sect3>
645
646 <sect3>
647 <title id="lanconfig">How can I set up Junkbuster to act as a proxy for my 
648  LAN?</title>
649 <para>
650  By default, <application>Junkbuster</application> only responds to requests 
651  from localhost. To have it act as a server for a network, this needs to be 
652  changed in the main config file where the <application>Junkbuster</application>
653  configuration is located. In that file is a <quote>listen-address</quote> 
654  option. It may be commented out with a <quote>#</quote> symbol. Make sure 
655  it is uncommented, and assign it the address of the LAN gateway interface, 
656  and port number to use:
657 </para>
658
659 <para>
660  <screen>
661   listen-address  192.168.1.1:8118
662  </screen>
663 </para>
664
665 <para>
666  Save the file, and restart <application>Junkbuster</application>. Configure 
667  all browsers on the network then to use this address and port number.
668 </para>
669
670 </sect3>
671
672
673 <sect3>
674 <title id="noseeum">Instead of ads, now I get a Junkbuster logo [or 
675 checkerboard]. I don't want to see anything.</title>
676 <para>
677  This is a configuration option for images that
678  <application>Junkbuster</application> is stopping. You have the choice of the
679  <application>Junkbuster</application> logo, a checkerboard pattern (this
680  scales better), a transparent 1x1 GIF image, or a custom URL or your choice.
681 </para>
682
683 <para>
684  If you want to see nothing, then change the <quote>+image-blocker</quote> 
685  action to <quote>+image-blocker{blank}</quote>. This can be done from the 
686  <quote>Edit Actions List</quote> selection at <ulink
687  url="http://i.j.b/">http://i.j.b/</ulink>. Or by hand editing the appropriate 
688  actions file. This will only effect what is defined as <quote>images</quote>
689  though. 
690
691 </para>
692
693 </sect3>
694
695
696 <sect3>
697 <title id="whyseeum">Why would anybody want to see the logo or checkerboard?</title>
698 <para>
699  This can be helpful for troubleshooting problems. It might also be good 
700  for anyone new to <application>Junkbuster</application> so that they can 
701  see if their favorite pages are displaying correctly, and
702  <application>Junkbuster</application> is not inadvertantly removing something 
703  important.
704 </para>
705
706 </sect3>
707
708 <sect3>
709 <title id="blockedisugly">I see large red banners on some pages that say 
710 <quote>Blocked</quote>. How do I get rid of this?</title>
711 <para>
712  These are URLs that match something in one of 
713  <application>Junkbuster's</application> block actions (+block). It is meant
714  to be a warning so that you know something has been blocked and an easy way
715  for you to see why. These are handled differently than what has been defined
716  as <quote>images</quote> (e.g. ad banners). If you want them to be treated
717  as if they were images, so that they can be invisible, then move the
718  offending URL from the <quote>+block</quote> section to the
719  <quote>+imageblock</quote> section of your actions file. Alternately, you
720  could modify the <quote><filename>block</filename></quote> HTML template that
721  is used by <application>Junkbuster</application> to display this, and make it
722  something more to your liking.
723 </para>
724
725 </sect3>
726
727 </sect2>
728
729 <!--   ~~~~~       New section      ~~~~~     -->
730
731 <sect2 id="misc"><title>Misc</title>
732
733 <sect3>
734 <title id="slowsme">How much does Junkbuster slow my browsing down? This 
735 has to add extra time to browsing.</title>
736 <para>
737  It should not slow you down any in real terms, and may actually help 
738  speed things up since ads, banners and other junk are not being displayed.
739  The actual processing time required by <application>Junkbuster</application> 
740  itself for each page, is relatively small in the overall scheme of things,
741  and happens very quickly. This is typically more than offset by time saved
742  not downloading and rendering ad images.
743 </para>
744
745 <para>
746  <quote>Filtering</quote> via the <filename>re_filterfile</filename> 
747  mechanism may cause a perceived slowdown, since the entire page is buffered
748  before displaying. See below.
749 </para>
750
751 </sect3>
752
753
754
755 <sect3 id="loadingtimes"><title>I noticed considerable
756 delays in page requests compared to the old IJB. What's wrong?</title>
757 <para>
758 Using the default filtering configuration, I noticed considerable delays in
759 page requests compared to the old IJB. Loading pages with large contents
760 seemed to take forever, then suddenly delivering all the content at once.
761  </para>
762 <para>
763 The whole content must be loaded in order to filter, and nothing is is
764 sent to the browser during this time. The loading time does not really
765 change in real numbers, but the feeling is different, because most
766 browsers are able to start rendering incomplete content, giving the
767 user a feeling of "it works". 
768  </para>
769 <para>
770 To modify the content of a page (i.e. make frames resizeable again, etc.) and
771 not just replace ads, the Internet Junkbuster needs to download the entire
772 page first, do its content magic and then send the page to the browser.
773 </para>
774 </sect3>
775
776
777 <sect3 id="configurl"><title>What is the "http://i.j.b/"?</title>
778 <para>
779 Since JunkBuster sits between your web browser and the Internet, it can be
780 programmed to handle certain pages specially.
781 </para>
782
783 <para>
784 With recent versions of JunkBuster (version 2.9.x), you can get some
785 information about JunkBuster and change some settings by going to
786 http://i.j.b/ or, equivalently, http://ijbswa.sourceforge.net/config/
787 (Note that i.j.b is far easier to type but may not work in some
788 configurations).
789 </para>
790
791 <para>
792 These pages are *not* forwarded to a server on the internet - instead they are
793 handled by a special web server which is built in to JunkBuster.
794 </para>
795
796 <para>
797 If you are not running JunkBuster, then http://i.j.b/ will fail, and
798 http://ijbswa.sourceforge.net/config/ will return a web page telling you
799 you're not running JunkBuster.
800 </para>
801
802 <para>
803 If you have version 2.0.2, then the equivalent is
804 http://example.com/show-proxy-args (but you get far less information, and you
805 should really consider upgrading to 2.9.x).
806 </para>
807 </sect3>
808
809 <!--
810 FIXME: commented out until we have data. HB 03/18/02.
811
812 <sect3 id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
813 <para>
814    Fillme.
815 </para>
816 </sect3>
817
818 <sect3 id="proxy-chaining"><title>How do I chain Junkbuster with other proxies
819 (e.g. squid)?</title>
820 <para>
821    Fillme.
822 </para>
823 </sect3>
824 -->
825
826 <sect3 id="jointeam"><title>I would like to help you, what do I do?</title>
827 <para>
828    Well, helping the team is always a good idea. We welcome new developers,
829    RPM gurus or documentation makers. Simply get an account on sourceforge.net
830    and mail your id to the developer mailing list. Once we have added you to
831    the team, you'll have write access to the CVS repository, and together
832    we'll find a suitable task for you.
833 </para>
834 </sect3>
835
836 <sect3 id="blocklist"><title>Do you still maintain the blocklists?</title>
837 <para>
838     No. The format of the blocklists has changed significantly in the versions
839     2.9.x. Once we have released the new version, there will again be
840     blocklists that you can update automatically.
841 </para>
842 </sect3>
843
844 <sect3 id="newads"><title>How can I submit new ads?</title>
845 <para>
846     As of now, please discontinue to submit new ad blocking infos. Once we
847     have released the new version, there will again be a form on the website,
848     which you can use to contribute new ads.
849 </para>
850 </sect3>
851
852 <sect3 id="ip"><title>How can I hide my IP address?</title>
853 <para>
854  You cannot hide your IP address with Junkbuster or any other software, since
855 the server needs to know your IP address to send the answer to you.
856 </para>
857 <para>
858 Fortunately there are many publicly usable anonymous proxies out there, which
859 solve the problem by providing a further level of indirection between you and
860 the web server, shared by many people and thus letting your requests "drown"
861 in white noise of unrelated requests as far as user tracking is concerned.
862 </para>
863 <para>
864 Most of them will, however, log your IP address and make it available to the
865 authorities in case you abuse that anonymity for criminal purposes. In fact
866 you can't even rule out that some of them only exist to *collect* information
867 on (those suspicious) people with a more than average preference for privacy.
868 </para>
869 <para>
870 You can find a list of anonymous public proxies at <ulink
871 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
872 more through Google.
873 </para>
874 </sect3>
875
876 <!--  <sect3 id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
877 <!--  <para> -->
878 <!--   Anytime the Junkbuster determines (with the help of the blocklist) that a URL -->
879 <!--   contains an advertisement, it has to decide whether this advertisement is an -->
880 <!--   image or not. The Junkbuster uses the imagefile for that purpose. -->
881 <!--  </para> -->
882 <!--  </sect3> -->
883
884 <sect3>
885 <title id="anonforsure">Can Junkbuster guarantee I am anonymous?</title>
886 <para>
887  No. Your chances of remaining anonymous are greatly improved, but unless you
888  are an expert on Internet security it would be safest to assume that
889  everything you do on the Web can be traced back to you.
890 </para>
891 <para>
892  <application>Junkbuster</application> can remove various information about you,
893  and allows <emphasis>you</emphasis> more freedom  to decide which sites 
894  you can trust. But it's still possible that web sites can find out who you
895  are. Here's one way this can happen.
896 </para>
897 <para>
898  A few browsers disclose the user's email address in certain situations, such
899  as when transferring a file by FTP. <application>Junkbuster</application>
900  does not filter FTP. If you need this feature, or are concerned about the
901  mail handler of your browser disclosing your email address, you might
902  consider products such as <application>NSClean</application>.
903 </para>
904 <para>
905  Browsers available only as binaries could use non-standard headers to give
906  out any information they can have access to: see the manufacturer's license
907  agreement. It's impossible to anticipate and prevent every breach of privacy
908  that might occur. The professionally paranoid prefer browsers available as
909  source code, because anticipating their behavior is easier. Trust the source,
910  Luke!
911 </para>
912
913 </sect3>
914
915 <sect3>
916 <title id="sitebreak">Might some things break because header information is
917 being altered?</title>
918
919 <para>
920  Definitely. More and more sites use HTTP header content to decide what to
921  display and how to display it. There is many ways that this can be handled, 
922  so having hard and fast rules, is tricky.
923 </para>
924
925 <para>
926  <quote>USER AGENT</quote> in particular is often used in this way to identify
927  the browser, and adjust content accordingly. Changing this now is not
928  recommended, since so many sites do look for this. You may get undesirable 
929  results by changing this.
930 </para>
931
932 <para>
933  For instance, different browsers use different encodings of Russian and Czech
934  characters, certain web servers convert pages on-the-fly according to the
935  User Agent header. Giving a <quote>User Agent</quote> with the wrong
936  operating system or browser manufacturer causes some sites in these languages
937  to be garbled; Surfers to Eastern European sites should change it to
938  something closer. And then some page access counters work by looking at the
939  <quote>REFERER</quote> header; they may fail or break if unavailable. The
940  weather maps of Intellicast have been blocked by their server when no
941  <quote>REFERER</quote> or cookie is provided, is another example. There are
942  many, many other ways things can go wrong when trying to fool a web server.
943 </para>
944
945 <para>
946  If you have problems with a site, you will have to adjust your configuration 
947  accordingly. Cookies are probably the most likely adjustment that may 
948  be required, but by no means the only one.
949
950 </para>
951
952 </sect3>
953
954
955 <sect3>
956 <title id="caching">Can Junkbuster act as a <quote>caching</quote> proxy to 
957 speed up web browsing?</title>
958 <para>
959  No, it does not have this ability at all. You want something like 
960  <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes, 
961  before you ask, <application>Junkbuster</application> can co-exist 
962  with other kinds of proxies like <quote>Squid</quote>.
963 </para>
964 </sect3>
965
966 <sect3>
967 <title id="firewall">What about as a firewall? Can Junkbuster protect me?</title>
968 <para>
969  Not in the way you mean, or in the way a true firewall can, or a proxy that
970  has this specific capability. <application>Junkbuster</application> can help
971  protect your privacy, but not really protect you from intrusion attempts.
972 </para>
973 </sect3>
974
975
976 <sect3>
977 <title id="logo">The Junkbuster logo that replaces ads is very blocky 
978 and ugly looking. Can't a better font be used?</title>
979
980 <para>
981  This is not a font problem. The logo is an image that is created by 
982  <application>Junkbuster</application> on the fly. So as to not waste 
983  memory, the image is rather small. The blockiness comes when the 
984  image is scaled to fill a largish area. There is not much to be done 
985  about this, other than to use one of the other
986  <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>, 
987  <emphasis>blank</emphasis>, or a URL of your chosing.
988 </para>
989 </sect3>
990
991
992 <sect3>
993 <title id="wasted">I have large empty spaces now where ads used to be. 
994 Why does Junkbuster leave these large gaps?</title>
995 <para>
996  It would be easy enough to just eliminate this space altogether, rather than
997  fill it with blank space. But, this would create problems with many pages
998  that use the overall size of the ad to help organize the page layout and
999  position the various components of the page where they were intended to be.
1000  It is best left this way.
1001 </para>
1002
1003 </sect3>
1004
1005 <sect3>
1006 <title id="ssl">How can Junkbuster filter Secure (HTTPS) URLs?</title>
1007 <para>
1008  This is a limitation since HTTPS transactions are encrypted SSL sessions
1009  between your browser and the secure site, and are meant to be reliably 
1010  <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1011  header information are also encrypted from the time they leave your browser,
1012  to the site, and vice versa. <application>Junkbuster</application> does not
1013  try to unencrypt this information, so it just passes through as is.
1014  <application>Junkbuster</application> can still catch images and ads that
1015  are embedded in the SSL stream though.
1016 </para>
1017
1018 </sect3>
1019
1020
1021 <sect3>
1022 <title id="secure">Junkbuster runs as a <quote>server</quote>. How 
1023 secure is it? Do I need to take any special precautions?</title>
1024 <para>
1025  There are no known exploits that might effect
1026  <application>Junkbuster</application>. On Unix-like systems, 
1027  <application>Junkbuster</application> can run as a non-privileged 
1028  user, which is how we recommend it be run. Also, by default 
1029  <application>Junkbuster</application> only listens to requests 
1030  from <quote>localhost</quote>. It is not itself directly exposed to the
1031  Internet in this configuration. If you want to have
1032  <application>Junkbuster</application> serve as a LAN proxy, this will have to
1033  be opened up to allow for LAN requests. In this case, we'd recommend
1034  you specify only the LAN gateway address, e.g. 192.168.1.1 in the main 
1035  <application>Junkbuster</application> config file. All LAN hosts can then use 
1036  this as their proxy address in the browser proxy configuration. In this way, 
1037  <application>Junkbuster</application> will not listen on any external ports.
1038  Of course, a firewall is always good too. Better safe than sorry.
1039 </para>
1040
1041 </sect3>
1042
1043 <sect3>
1044 <title id="filterfile">What is a <quote>re_filterfile</quote>?</title>
1045 <para>
1046  The <quote>re_filterfile</quote> is used to <quote>filter</quote> any
1047  page content. By <quote>filtering</quote> we mean it can modify, remove, 
1048  or change <emphasis>anything</emphasis> on the page, including HTML tags, and
1049  JavaScript. Regular expressions are used to accomplish this. This is
1050  potentially a very powerful feature, but requires some expertise.
1051 </para>
1052
1053 <para>
1054  If you are familiar with regular expressions, and HTML, you can look at 
1055  the provided <filename>re_filterfile</filename> with a text editor and see
1056  some of things it can be used for.
1057 </para>
1058
1059 <para>
1060  Presently, there is no GUI editor option for this part of the configuration.
1061 </para>
1062
1063 </sect3>
1064 </sect2>
1065
1066
1067 <!--   ~~~~~       New section      ~~~~~     -->
1068
1069 <sect2>
1070 <title id="trouble">Troubleshooting</title>
1071
1072 <sect3>
1073 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1074 with every web page?</title>
1075 <para>
1076  Either <application>Junkbuster</application> is not running, or your 
1077  browser is configured for a different port than what
1078  <application>Junkbuster</application> is using.
1079 </para>
1080
1081 <para>
1082  The old <application>Junkbuster</application> used port 8000 by 
1083  default. This has been changed to port 8118 now, due to a conflict 
1084  with NAS (Network Audio Service), which uses port 8000. If you haven't, 
1085  you need to change your browser to the new port number, or alternately 
1086  change <application>Junkbuster's</application> <quote>listen-address</quote>
1087  setting in the <filename>config</filename> file used to start 
1088  <application>Junkbuster</application>.
1089 </para>
1090
1091 </sect3>
1092
1093 <sect3>
1094 <title id="flushit">I just added a new rule, but the steenkin ad is 
1095 still getting through. How?</title>
1096 <para>
1097  If the ad had been displayed before you added its URL, it will probably be
1098  held in the browser's cache for some time, so it will be displayed without
1099  the need for any request to the server, and <application>Junkbuster</application>
1100  will not be in the picture. The best thing to do is try flusing the browser's
1101  caches. And then try again.
1102 </para>
1103
1104 <para>
1105  If this doesn't help, you probably have an error in the rule you
1106  applied. Try pasting the full URL of the offending ad into <ulink
1107  url="http://ijbswa.sourceforge.net/config/show-url-info">http://ijbswa.sourceforge.net/config/show-url-info</ulink>
1108  and see if any actions match your new rule.
1109 </para>
1110
1111 </sect3>
1112
1113 <sect3>
1114 <title id="badsite">One of my favorite sites does not work with Junkbuster.
1115 What can I do?</title>
1116
1117 <para>
1118  First verify that it is indeed a <application>Junkbuster</application> problem, 
1119  by disabling <application>Junkbuster</application> filtering and blocking. 
1120  Go to <ulink url="http://i.j.b/">http://i.j.b/</ulink> and click on 
1121  <quote>Toggle Junkbuster On or Off</quote>, then disable it. Now try that 
1122  page again.
1123 </para>
1124
1125 <para>
1126  If still a problem, go to <quote>Show which actions apply to a URL and
1127  why</quote> from  <ulink url="http://i.j.b/">http://i.j.b/</ulink> and 
1128  paste the full URL of the page in question into the prompt. See which 
1129  actions are being applied to the URL. Now, armed with this information, 
1130  go to <quote>Edit the actions list</quote>. Here you should see various 
1131  sections that have various <quote>Junkbuster</quote> features disabled 
1132  for specific sites. Disabled <quote>actions</quote> will have a
1133  <quote>-</quote> (minus sign) in front of them. Add your problem page 
1134  URL to one of these sections that looks like it is disabling the feature that
1135  is causing the problem. Re-try the page. There might be some trial and error
1136  involved. This is discussed in a little more detail in 
1137  the <ulink url="http://ijbswa.sourceforge.net/user-manual/appenix.html#ACTIONSANAT">user-manual appendix</ulink>.
1138
1139 </para>
1140
1141 <para>
1142  Alternately, if you are comfortable with a text editor, you can accomplish 
1143  the same thing by editing the appropriate <quote>actions</quote> file.
1144 </para>
1145
1146 </sect3>
1147
1148 <sect3>
1149 <title id="time">What time is it?</title>
1150 <para>
1151  Time for you to go!
1152 </para>
1153 </sect3>
1154
1155 </sect2>
1156
1157 </sect1>
1158
1159
1160 <!--   ~~~~~       New section      ~~~~~     -->
1161 <!--
1162 FIXME: Commented out until we have something to put here. HB 03/18/02.
1163 <sect1 id="knownissues"><title>Known Issues</title>
1164 <para>
1165    Fillme.
1166 </para>
1167 </sect1>
1168 -->
1169 <!--   ~~~~~       New section      ~~~~~     -->
1170 <sect1 id="contact"><title>Contact the developers</title>
1171 <para>Please see the user manual for information on how to contact the developers.
1172 </para>
1173 </sect1>
1174
1175 <!--   ~~~~~       New section      ~~~~~     -->
1176 <sect1 id="copyright"><title>Copyright and History</title>
1177 <para>Please see the user manual for information on Copyright and History.
1178 </para>
1179 </sect1>
1180
1181 <!--   ~~~~~       New section      ~~~~~     -->
1182 <sect1 id="seealso"><title>See also</title>
1183 <para>Please see the user manual for information on references.
1184 </para>
1185 </sect1>
1186
1187 <!-- hhmts end -->
1188  <!--
1189  Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1190  
1191  Last modified: Mon Sep 10 19:22:09 CEST 2001
1192  
1193  This program is free software; you can redistribute it 
1194  and/or modify it under the terms of the GNU General
1195  Public License as published by the Free Software
1196  Foundation; either version 2 of the License, or (at
1197  your option) any later version.
1198
1199  This program is distributed in the hope that it will
1200  be useful, but WITHOUT ANY WARRANTY; without even the
1201  implied warranty of MERCHANTABILITY or FITNESS FOR A
1202  PARTICULAR PURPOSE.  See the GNU General Public
1203  License for more details.
1204
1205  The GNU General Public License should be included with
1206  this file.  If not, you can view it at
1207  http://www.gnu.org/copyleft/gpl.html
1208  or write to the Free Software Foundation, Inc., 59
1209  Temple Place - Suite 330, Boston, MA  02111-1307, USA.
1210
1211 $Log: faq.sgml,v $
1212 Revision 1.18  2002/03/18 16:40:31  hal9
1213 More additions.
1214
1215 Revision 1.17  2002/03/18 03:53:53  hal9
1216 Some new additions.
1217
1218 Revision 1.16  2002/03/17 21:32:56  hal9
1219 A few more additions.
1220
1221 Revision 1.15  2002/03/17 07:25:59  hal9
1222 Correcting some of my typos, and some additions.
1223
1224 Revision 1.14  2002/03/17 02:39:13  hal9
1225 A little more added ...
1226
1227 Revision 1.13  2002/03/17 00:22:20  hal9
1228 Adding new stuff, and trying to incorporate stuff from old faq.
1229
1230 Revision 1.12  2002/03/11 20:13:21  swa
1231 typo
1232
1233 Revision 1.11  2002/03/11 18:42:27  swa
1234 new section
1235
1236 Revision 1.10  2002/03/11 13:13:27  swa
1237 correct feedback channels
1238
1239 Revision 1.9  2002/03/10 23:34:04  swa
1240 more info on not hiding ip address
1241
1242 Revision 1.8  2002/03/09 15:55:48  swa
1243 added default config section
1244
1245 Revision 1.7  2002/03/07 18:16:55  swa
1246 looks better
1247
1248 Revision 1.6  2002/03/07 13:16:31  oes
1249 Committing changes by Stefan
1250
1251 Revision 1.5  2002/03/02 15:50:04  swa
1252 2.9.11 version. more input for docs.
1253
1254 Revision 1.4  2002/02/24 14:34:24  jongfoster
1255 Formatting changes.  Now changing the doctype to DocBook XML 4.1
1256 will work - no other changes are needed.
1257
1258 Revision 1.3  2001/09/23 10:13:48  swa
1259 upload process established. run make webserver and
1260 the documentation is moved to the webserver. documents
1261 are now linked correctly.
1262
1263 Revision 1.2  2001/09/13 15:20:17  swa
1264 merged standards into developer manual
1265
1266 Revision 1.1  2001/09/12 15:36:41  swa
1267 source files for junkbuster documentation
1268
1269 Revision 1.3  2001/09/10 17:43:59  swa
1270 first proposal of a structure.
1271
1272 Revision 1.2  2001/06/13 14:28:31  swa
1273 docs should have an author.
1274
1275 Revision 1.1  2001/06/13 14:20:37  swa
1276 first import of project's documentation for the webserver.
1277
1278 -->
1279
1280 </article>