1 # Sample Configuration file for the Internet Junkbuster 2.0
4 # $Id: config,v 1.13 2001/06/04 18:31:58 swa Exp $
10 # 2. FORMAT OF THE CONFIGURATION FILE
11 # 3. OTHER CONFIGURATION FILES
13 # 5. WINDOWS GUI OPTIONS
17 # This file holds the Junkbuster configuration. If you modify this
18 # file, you will need to stop & restart Junkbuster, or use the
19 # "Reload Config" option (Windows) before any changes take effect.
21 # When starting Junkbuster on Unix systems, give the name of this
22 # file as an argument. On Windows systems, Junkbuster will look for
23 # this file with the name 'junkbustr.txt' in the same directory where
24 # Junkbuster is installed.
26 # 2. FORMAT OF THE CONFIGURATION FILE
28 # Configuration lines consist of an initial keyword followed by a list
29 # of values, all separated by whitespace (any number of spaces or
32 # blockfile blocklist.ini
34 # Indicates that the blockfile is named 'blocklist.ini'.
36 # The '#' indicates a comment. Any part of a line following a '#' is
37 # ignored, except if the '#' is preceded by a '\'.
39 # Thus, by placing a # at the start of an existing configuration line,
40 # you can make it a comment and it will be treated as if it weren't there.
41 # This is called "commenting out" an option and can be useful to turn
42 # off features: If you comment out the "logfile" line, junkbuster will
43 # not log at all. Watch for the "default:" section in each explanation
44 # to see what happens if the option is left unset (or commented out).
46 # Long lines can be continued on the next line by using a `\' as
47 # the last character. This also works if comments are present in
52 # 3. OTHER CONFIGURATION FILES
54 # Junkbuster uses a number of other files to tell it what ads to
55 # block, what cookies to accept, etc. This section of the
56 # configuration file tells Junkbuster where to find all those other
59 # On Windows, Junkbuster looks for these files in the same
60 # directory as the executable. On Unix, Junkbuster looks for these
61 # files in the current working directory. In either case, an
62 # absolute path name can be used to avoid problems.
64 # While we go modular and multiuser, the blocker, filter, and
65 # per-user config will be stored in subdirectories of confdir.
66 # Now, only confdir/templates is used for storing HTML templates
69 # No trailing /, please.
73 # The directory where all logging (i.e. logfile and jarfile) takes place
74 # No trailing /, please.
79 # Note that all file specifications below are relative to
80 # the above two directories!!!
83 # The permissions file contains patterns to specify the
84 # filtering rules to apply to each site.
86 # Default: Cookies to and from all destinations are filtered.
87 # Popups are disabled for all sites.
88 # All sites are filtered if re_filterfile specified.
89 # No sites are blocked. Nothing is an image.
91 permissionsfile permissionsfile
94 # The re_filterfile contains content modification rules. These rules
95 # permit powerful changes on the content of Web pages, e.g., you
96 # could disable your favourite JavaScript annoyances, rewrite the
97 # actual content, or just have some fun replacing "Microsoft"
98 # with "Microsuck" wherever it appears on a Web page.
100 # Default: No content modification.
102 re_filterfile re_filterfile
105 # The logfile is where all logging and error messages are written.
106 # The logfile can be useful for tracking down a problem with
107 # Junkbuster (e.g., it's not blocking an ad you think it should
108 # block) but in most cases you probably will never look at it.
110 # Your logfile will grow indefinitely, and you will probably want to
111 # periodically remove it. On Unix systems, you can do this with a
112 # cron job (see 'man cron').
114 # On SuSE Linux systems, you can place a line like
115 # "/var/log/junkbuster.* +1024k 644 nobody.nogroup" in /etc/logfiles,
116 # with the effect that cron.daily will automatically archive, gzip,
117 # and empty the log, when it exceeds 1M size.
119 # Default: Log to the standard error channel, not to a file
124 # The jarfile defines where Junkbuster stores the cookies it
125 # intercepts. Note that if you use a jarfile, it may grow quite
128 # Default: Don't store intercepted cookies
136 # This part of the configuration file contains options that control
137 # how Junkbuster operates.
141 # Listen-address specifies the address and port where Junkbuster will
142 # listen for connections from your Web browser. The default is to
143 # listen on the local host on port 8000, and this is suitable for
144 # most users. (In your web browser, under proxy configuration, list
145 # the proxy server as 'localhost' and the port as '8000').
147 # If you already have another service running on port 8000, or if you
148 # want to serve requests from other machines (e.g. on your local
149 # network) as well, you will need to override the default. The syntax
150 # is "listen-address [<ip-address>]:<port>" If you leave out the ip
151 # adress, junkbuster will bind to all interfaces (addresses) on your
152 # machine and may become reachable from the internet. In that case,
153 # consider using access control lists (acl's) (see "aclfile" above).
155 # For example, suppose you are running Junkbuster on a machine which
156 # has the address 192.168.0.1 on your local private network
157 # (192.168.0.0) and has another outside connection with a different
158 # address. You want it to serve requests from inside only:
160 # listen-address 192.168.0.1:8000
162 # If you want it to listen on all addresses (including the outside
165 # listen-address :8000
167 # If you do this, consider using acls (see "aclfile" above).
169 # Note: you will need to point your browser(s) to the address
170 # and port that you have configured here.
172 # Default: listen-address localhost:8000
173 # listen-address 127.0.0.1:8000
178 # The debug option sets the level of debugging information to log in
179 # the logfile (and to the console in the Windows version). A debug
180 # level of 1 is informative because it will show you each request as
181 # it happens. Higher levels of debug are probably only of interest
184 # debug 1 # GPC = show each GET/POST/CONNECT request
185 # debug 2 # CONN = show each connection status
186 # debug 4 # IO = show I/O status
187 # debug 8 # HDR = show header parsing
188 # debug 16 # LOG = log all data into the logfile
189 # debug 32 # FRC = debug force feature
190 # debug 64 # REF = debug regular expression filter
191 # debug 128 # RED = debug fast redirects
192 # debug 256 # CLF = Common Log Format
193 # debug 4096 # INFO = Startup banner and warnings.
194 # debug 8192 # ERROR = Non-fatal errors
196 # It is *highly recommended* that you enable ERROR
197 # reporting. (debug 8192).
199 # The reporting of FATAL errors (i.e. ones which crash
200 # JunkBuster) is always on and cannot be disabled.
202 # If you want to use CLF, you should set "debug 256" ONLY,
203 # do not enable anything else.
205 # Multiple "debug" directives, are OK - they're logical-OR'd
208 # debug 15 # same as setting the first 4 listed above
210 # Default: 0, i.e. log nothing but fatal errors
214 debug 8192 # Errors - *we highly recommended enabling this*
217 # Junkbuster normally uses "multi-threading", a software technique
218 # that permits it to handle many different requests simultaneously.
219 # In some cases you may wish to disable this -- particularly if
220 # you're trying to debug a problem. The 'single-threaded' option
221 # forces Junkbuster to handle requests sequentially.
223 # Default: Multithreaded mode
228 # 'toggle' allows you to temporarily disable all Junkbuster's
229 # filtering. Just set "toggle 0".
231 # The Windows version of Junkbuster puts an icon in the system
232 # tray, which allows you to change this option without having
233 # to edit this file. If you right-click on that icon (or select
234 # the 'Options' menu), one choice is "Enable". Clicking on enable
235 # toggles Junkbuster on and off. This is useful if you want to
236 # temporarily disable Junkbuster, e.g., to access a site that
237 # requires cookies which you normally have blocked.
239 # 'toggle 1' means Junkbuster runs normally, 'toggle 0' means
240 # that Junkbuster becomes a non-anonymizing non-blocking
248 #############################################################################
249 # Access Control List
250 #############################################################################
252 # Access controls are included at the request of some ISPs and systems
253 # administrators, and are not usually needed by individual users.
254 # Please note the warnings in the FAQ that this proxy is not
255 # intended to be a substitute for a firewall or to encourage anyone
256 # to defer addressing basic security weaknesses.
257 # For details see the documentation
259 # If no access settings are specified, the proxy talks to anyone that
260 # connects. If any access settings file are specified, then the proxy
261 # talks only to IP addresses permitted somewhere in this file and not
262 # denied later in this file.
264 # Summary -- if using an ACL:
266 # Client must have permission to receive service
267 # LAST match in ACL wins
268 # Default behavior is to deny service
270 # Syntax for an entry in the Access Control List is:
272 # ACTION SRC_ADDR[/SRC_MASKLEN] [ DST_ADDR[/DST_MASKLEN] ]
274 # where the fields are
276 # ACTION = "permit-access" | "deny-access"
278 # SRC_ADDR = client hostname or dotted IP address
279 # SRC_MASKLEN = number of bits in the subnet mask for the source
281 # DST_ADDR = server or forwarder hostname or dotted IP address
282 # DST_MASKLEN = number of bits in the subnet mask for the target
284 # field separator (FS) is whitespace (space or tab)
288 # If the junkbuster is using a forwarder or a gateway for a particular
289 # destination URL, the DST_ADDRR that is examined is the address of
290 # the forwarder or the gateway and NOT the address of the ultimate target.
291 # This is necessary because it may be impossible for the local
292 # junkbuster to determine the address of the ultimate target
293 # (that's often what gateways are used for).
295 # Here are a few examples to show how the ACL works:
297 # localhost is OK -- no DST_ADDR implies that ALL destination addresses are OK
298 # permit-access localhost
300 # a silly example to illustrate:
302 # permit any host on the class-C subnet with junkbusters to go anywhere
304 # permit-access www.junkbusters.com/24
306 # except deny one particular IP address from using it at all
308 # deny-access ident.junkbusters.com
312 # You can specify an explicit network address and subnet mask.
313 # Explicit addresses do not have to be resolved to be used.
315 # permit-access 207.153.200.0/24
317 # a subnet mask of 0 matches anything, so the next line permits everyone.
319 # permit-access 0.0.0.0/0
321 # Note: you cannot say
325 # to allow all .org domains; every IP-address listed must resolve fully.
327 # An ISP may want to provide a junkbuster that is accessible by "the world"
328 # and yet restrict use of some of their private content to hosts on its
329 # internal network (i.e. its own subscribers). Say, for instance the
330 # ISP owns the Class-B IP address block 123.124.0.0 (a 16 bit netmask).
331 # This is how they could do it:
333 # permit-access 0.0.0.0/0 0.0.0.0/0 # other clients can go anywhere
334 # # with the following exceptions:
336 # deny-access 0.0.0.0/0 123.124.0.0/16 # block all external requests for
337 # # sites on the ISP's network
339 # permit 0.0.0.0/0 www.my_isp.com # except for the ISP's main web site
341 # permit 123.124.0.0/16 0.0.0.0/0 # the ISP's clients can go anywhere
343 # Note that some hostnames may be listed with multiple IP addresses;
344 # the primary value returned by gethostbyname() is used.
346 # Default: Anyone can access the proxy.
349 #############################################################################
351 #############################################################################
354 # This feature allows routing of HTTP requests via multiple proxies.
355 # It can be used to better protect privacy and confidentiality when
356 # accessing specific domains by routing requests to those domains
357 # to a special purpose filtering proxy such as lpwa.com
359 # It can also be used in an environment with multiple networks to route
360 # requests via multiple gateways allowing transparent access to multiple
361 # networks without having to modify browser configurations.
363 # Also specified here are SOCKS proxies. We support SOCKS 4 and SOCKS 4A.
364 # The difference is that SOCKS 4A will resolve the target hostname using
365 # DNS on the SOCKS server, not our local DNS client.
367 # The syntax of each line is
369 # forward target_domain[:port] http_proxy_host[:port]
370 # forward-socks4 target_domain[:port] socks_proxy_host[:port] http_proxy_host[:port]
371 # forward-socks4a target_domain[:port] socks_proxy_host[:port] http_proxy_host[:port]
373 # If http_proxy_host is ".", then requests are not forwarded to
374 # a HTTP proxy but are made directly to the web servers.
376 # Lines are checked in turn, and the last match wins.
378 # There is an implicit line equivalent to the following, which specifies that
379 # anything not finding a match on the list is to go out without forwarding
380 # or gateway protocol; like so:
381 # forward .* . # implicit
383 # In the following common configuration, everything goes to Lucent's LPWA,
384 # except SSL on port 443 (which it doesn't handle)
385 # forward .* lpwa.com:8000
388 # See the FAQ for instructions on how to automate the login procedure for LPWA.
389 # Some users have reported difficulties related to LPWA's use of . as the
390 # last element of the domain, and have said that this can be fixed with this:
391 # forward lpwa. lpwa.com:8000
392 # (NOTE: the syntax for specifiying target_domain has changed since the
393 # previous paragraph weas written - it will not work now. More information
396 # In this fictitious example, everything goes via an ISP's caching proxy,
397 # except requests to that ISP:
399 # forward .* caching.myisp.net:8000
400 # forward myisp.net .
402 # For the @home network, we're told the forwarding configuration is this:
403 # forward .* proxy:8080
404 # Also, we're told they insist on getting cookies and Javascript, so you need
405 # to add home.com to the cookie file. We consider Javascript a security risk;
406 # see our page on cookies. Java need not be enabled.
408 # In this example direct connections are made to all "internal" domains,
409 # but everything else goes through Lucent's LPWA by way of the company's
410 # SOCKS gateway to the Internet.
412 # forward_socks4 .* lpwa.com:8000 firewall.my_company.com:1080
413 # forward my_company.com .
415 # This is how you could set up a site that always uses SOCKS but no forwarders
417 # forward_socks4a .* . firewall.my_company.com:1080
419 # An advanced example for network administrators:
421 # If you have links to multiple ISPs that provide various special content to
422 # their subscribers, you can configure forwarding to pass requests to the
423 # specific host that's connected to that ISP so that everybody can see all
424 # of the content on all of the ISPs.
426 # This is tricky, but here's a sample:
428 # host-a has a PPP connection to isp-a.com
429 # host-b has a PPP connection to isp-b.com
431 # host-a can run an Internet Junkbuster proxy with forwarding like this:
433 # forward isp-b.com host-b:8000
435 # host-b can run an Internet Junkbuster proxy with forwarding like this:
437 # forward isp-a.com host-a:8000
439 # Now, *anyone* on the Internet (including users on host-a and host-b)
440 # can set their browser's proxy to *either* host-a or host-b and
441 # be able to browse the content on isp-a or isp-b.
444 # Here's another practical example, for University of Kent at
445 # Canterbury students with a network connection in their room, who
446 # need to use the University's Squid web cache.
448 # forward *. ssbcache.ukc.ac.uk:3128 # Use the proxy, except for:
449 # forward .ukc.ac.uk . # Anything on the same domain as us
450 # forward * . # Host with no domain specified
451 # forward 129.12.*.* . # A dotted IP on our /16 network.
452 # forward 128.*.*.* . # Loopback address
453 # forward localhost.localdomain . # Loopback address
454 # forward www.ukc.mirror.ac.uk . # Specific host
458 #############################################################################
459 # 5. WINDOWS GUI OPTIONS
460 #############################################################################
462 # Junkbuster has a number of options specific to the Windows GUI
465 # activity-animation {1 or 0}
467 # If set to 1, the Junkbuster icon will animate when Junkbuster is
470 #Win32-only: activity-animation 1
472 # log-messages {1 or 0}
474 # If set to 1, Junkbuster will log messages to the console window.
476 #Win32-only: log-messages 1
478 # log-buffer-size {1 or 0}?
480 # If log-buffer-size is set to 1, the size of the log buffer, that
481 # is the amount of memory used for the log messages displayed in
482 # the console window, will be limited to 'log-max-lines' (see below).
484 # Warning: Setting this to 0 will result in the buffer to grow
485 # infinitely and eat up all your memory!
487 #Win32-only: log-buffer-size 1
489 # log-max-lines {number of lines, e.g., '200'}
491 # Maximum number of lines held in the log buffer. See above.
493 #Win32-only: log-max-lines 200
495 # log-highlight-messages {1 or 0}
497 # If set to 1, Junkbuster will highlight portions of the log
498 # messages with a bold-faced font.
500 #Win32-only: log-highlight-messages 1
502 # log-font-name {font name, e.g., 'Comic Sans MS'}
504 # The font used in the console window.
506 #Win32-only: log-font-name Comic Sans MS
508 # log-font-size {font size in points, e.g., '8'}
510 # Font size used in the console window.
512 #Win32-only: log-font-size 8
514 # show-on-task-bar {1 or 0}
516 # Controls whether or not Junkbuster will appear as a button on the Task
517 # bar when minimized.
519 #Win32-only: show-on-task-bar 0
522 # close-button-minimizes 1
524 # If set, the Windows close button will minimize Junkbuster instead
525 # of closing the program (close with the exit option on the File
528 #Win32-only: close-button-minimizes 1
532 # This option is specific to the Win32 console version of JunkBuster:
536 # If this option is used, Junkbuster will disconnect from and hide
537 # the command console.
539 #Win32-only: #hide-console
542 # Note: Junkbuster is distributed under the GNU General Public License (GPL)
543 # For details, see http://www.gnu.org/copyleft/gpl.html