source: npl/internetserver/dansguardian/dansguardian.conf @ c5c522c

gcc484ntopperl-5.22
Last change on this file since c5c522c was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100644
File size: 22.7 KB
RevLine 
[c5c522c]1# DansGuardian config file for version 2.10.1.1
2# Modified for SYN-3 by DatuX
3
4
5
6# Web Access Denied Reporting (does not affect logging)
7#
8# -1 = log, but do not block - Stealth mode
9#  0 = just say 'Access Denied'
10#  1 = report why but not what denied phrase
11#  2 = report fully
12#  3 = use HTML template file (accessdeniedaddress ignored) - recommended
13#
14reportinglevel = 3
15
16# Language dir where languages are stored for internationalisation.
17# The HTML template within this dir is only used when reportinglevel
18# is set to 3. When used, DansGuardian will display the HTML file instead of
19# using the perl cgi script.  This option is faster, cleaner
20# and easier to customise the access denied page.
21# The language file is used no matter what setting however.
22#
23languagedir = '/usr/share/dansguardian/languages'
24
25# language to use from languagedir.
26language = 'ukenglish'
27
28# Logging Settings
29#
30# 0 = none  1 = just denied  2 = all text based  3 = all requests
31loglevel = 1
32
33# Log Exception Hits
34# Log if an exception (user, ip, URL, phrase) is matched and so
35# the page gets let through.  Can be useful for diagnosing
36# why a site gets through the filter.
37# 0 = never log exceptions
38# 1 = log exceptions, but do not explicitly mark them as such
39# 2 = always log & mark exceptions (default)
40logexceptionhits = 2
41
42# Log File Format
43# 1 = DansGuardian format (space delimited)
44# 2 = CSV-style format
45# 3 = Squid Log File Format
46# 4 = Tab delimited
47logfileformat = 1
48
49# truncate large items in log lines
50#maxlogitemlength = 400
51
52# anonymize logs (blank out usernames & IPs)
53#anonymizelogs = on
54
55
56# Syslog logging
57#
58# Use syslog for access logging instead of logging to the file
59# at the defined or built-in "loglocation"
60#syslog = on
61
62# Log file location
63#
64# Defines the log directory and filename.
65#loglocation = '/var/log/dansguardian/access.log'
66
67
68# Statistics log file location
69#
70# Defines the stat file directory and filename.
71# Only used in conjunction with maxips > 0
72# Once every 3 minutes, the current number of IPs in the cache, and the most
73# that have been in the cache since the daemon was started, are written to this
74# file. IPs persist in the cache for 7 days.
75#statlocation = '/var/log/dansguardian/stats'
76
77
78# Network Settings
79#
80# the IP that DansGuardian listens on.  If left blank DansGuardian will
81# listen on all IPs.  That would include all NICs, loopback, modem, etc.
82# Normally you would have your firewall protecting this, but if you want
83# you can limit it to a certain IP. To bind to multiple interfaces,
84# specify each IP on an individual filterip line.
85filterip =
86
87# the port that DansGuardian listens to.
88filterport = 8080
89
90# the ip of the proxy (default is the loopback - i.e. this server)
91proxyip = 127.0.0.1
92
93# the port DansGuardian connects to proxy on
94proxyport = 3128
95
96# Whether to retrieve the original destination IP in transparent proxy
97# setups and check it against the domain pulled from the HTTP headers.
98#
99# Be aware that when visiting sites which use a certain type of round-robin
100# DNS for load balancing, DG may mark requests as invalid unless DG gets
101# exactly the same answers to its DNS requests as clients.  The chances of
102# this happening can be increased if all clients and servers on the same LAN
103# make use of a local, caching DNS server instead of using upstream DNS
104# directly.
105#
106# See http://www.kb.cert.org/vuls/id/435052
107# on (default) | off
108#!! Not compiled !! originalip = on
109
110# accessdeniedaddress is the address of your web server to which the cgi
111# dansguardian reporting script was copied. Only used in reporting levels 1 and 2.
112#
113# This webserver must be either:
114#  1. Non-proxied. Either a machine on the local network, or listed as an exception
115#     in your browser's proxy configuration.
116#  2. Added to the exceptionsitelist. Option 1 is preferable; this option is
117#     only for users using both transparent proxying and a non-local server
118#     to host this script.
119#
120# Individual filter groups can override this setting in their own configuration.
121#
122accessdeniedaddress = 'http://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl'
123
124# Non standard delimiter (only used with accessdeniedaddress)
125# To help preserve the full banned URL, including parameters, the variables
126# passed into the access denied CGI are separated using non-standard
127# delimiters. This can be useful to ensure correct operation of the filter
128# bypass modes. Parameters are split using "::" in place of "&", and "==" in
129# place of "=".
130# Default is enabled, but to go back to the standard mode, disable it.
131nonstandarddelimiter = on
132
133
134
135# Banned image replacement
136# Images that are banned due to domain/url/etc reasons including those
137# in the adverts blacklists can be replaced by an image.  This will,
138# for example, hide images from advert sites and remove broken image
139# icons from banned domains.
140# on (default) | off
141usecustombannedimage = on
142custombannedimagefile = '/usr/share/dansguardian/transparent1x1.gif'
143
144
145
146# Filter groups options
147# filtergroups sets the number of filter groups. A filter group is a set of content
148# filtering options you can apply to a group of users.  The value must be 1 or more.
149# DansGuardian will automatically look for dansguardianfN.conf where N is the filter
150# group.  To assign users to groups use the filtergroupslist option.  All users default
151# to filter group 1.  You must have some sort of authentication to be able to map users
152# to a group.  The more filter groups the more copies of the lists will be in RAM so
153# use as few as possible.
154filtergroups = 1
155filtergroupslist = '/home/system/dansguardian/lists/filtergroupslist'
156
157
158
159# Authentication files location
160bannediplist = '/home/system/dansguardian/lists/bannediplist'
161exceptioniplist = '/home/system/dansguardian/lists/exceptioniplist'
162
163
164
165# Show weighted phrases found
166# If enabled then the phrases found that made up the total which excedes
167# the naughtyness limit will be logged and, if the reporting level is
168# high enough, reported. on | off
169showweightedfound = on
170
171# Weighted phrase mode
172# There are 3 possible modes of operation:
173# 0 = off = do not use the weighted phrase feature.
174# 1 = on, normal = normal weighted phrase operation.
175# 2 = on, singular = each weighted phrase found only counts once on a page.
176#
177weightedphrasemode = 2
178
179
180
181# Positive (clean) result caching for URLs
182# Caches good pages so they don't need to be scanned again.
183# It also works with AV plugins.
184# 0 = off (recommended for ISPs with users with disimilar browsing)
185# 1000 = recommended for most users
186# 5000 = suggested max upper limit
187# If you're using an AV plugin then use at least 5000.
188urlcachenumber = 1000
189#
190# Age before they are stale and should be ignored in seconds
191# 0 = never
192# 900 = recommended = 15 mins
193urlcacheage = 900
194
195
196
197# Clean cache for content (AV) scan results
198# By default, to save CPU, files scanned and found to be
199# clean are inserted into the clean cache and NOT scanned
200# again for a while.  If you don't like this then choose
201# to disable it.
202# (on|off) default = on.
203scancleancache = on
204
205
206
207# Smart, Raw and Meta/Title phrase content filtering options
208# Smart is where the multiple spaces and HTML are removed before phrase filtering
209# Raw is where the raw HTML including meta tags are phrase filtered
210# Meta/Title is where only meta and title tags are phrase filtered (v. quick)
211# CPU usage can be effectively halved by using setting 0 or 1 compared to 2
212# 0 = raw only
213# 1 = smart only
214# 2 = both of the above (default)
215# 3 = meta/title
216phrasefiltermode = 2
217
218# Lower casing options
219# When a document is scanned the uppercase letters are converted to lower case
220# in order to compare them with the phrases.  However this can break Big5 and
221# other 16-bit texts.  If needed preserve the case.  As of version 2.7.0 accented
222# characters are supported.
223# 0 = force lower case (default)
224# 1 = do not change case
225# 2 = scan first in lower case, then in original case
226preservecase = 0
227
228# Note:
229# If phrasefiltermode and preserve case are both 2, this equates to 4 phrase
230# filtering passes. If you have a large enough userbase for this to be a
231# worry, and need to filter pages in exotic character encodings, it may be
232# better to run two instances on separate servers: one with preservecase 1
233# (and possibly forcequicksearch 1) and non ASCII/UTF-8 phrase lists, and one
234# with preservecase 0 and ASCII/UTF-8 lists.
235
236
237
238# Hex decoding options
239# When a document is scanned it can optionally convert %XX to chars.
240# If you find documents are getting past the phrase filtering due to encoding
241# then enable.  However this can break Big5 and other 16-bit texts.
242# off = disabled (default)
243# on = enabled
244hexdecodecontent = off
245
246
247
248# Force Quick Search rather than DFA search algorithm
249# The current DFA implementation is not totally 16-bit character compatible
250# but is used by default as it handles large phrase lists much faster.
251# If you wish to use a large number of 16-bit character phrases then
252# enable this option.
253# off (default) | on (Big5 compatible)
254forcequicksearch = off
255
256
257
258# Reverse lookups for banned site and URLs.
259# If set to on, DansGuardian will look up the forward DNS for an IP URL
260# address and search for both in the banned site and URL lists.  This would
261# prevent a user from simply entering the IP for a banned address.
262# It will reduce searching speed somewhat so unless you have a local caching
263# DNS server, leave it off and use the Blanket IP Block option in the
264# bannedsitelist file instead.
265reverseaddresslookups = off
266
267
268
269# Reverse lookups for banned and exception IP lists.
270# If set to on, DansGuardian will look up the forward DNS for the IP
271# of the connecting computer.  This means you can put in hostnames in
272# the exceptioniplist and bannediplist.
273# If a client computer is matched against an IP given in the lists, then the
274# IP will be recorded in any log entries; if forward DNS is successful and a
275# match occurs against a hostname, the hostname will be logged instead.
276# It will reduce searching speed somewhat so unless you have a local DNS server,
277# leave it off.
278reverseclientiplookups = off
279
280
281# Perform reverse lookups on client IPs for successful requests.
282# If set to on, DansGuardian will look up the forward DNS for the IP
283# of the connecting computer, and log host names (where available) rather than
284# IPs against requests.
285# This is not dependent on reverseclientiplookups being enabled; however, if it
286# is, enabling this option does not incur any additional forward DNS requests.
287logclienthostnames = off
288
289
290# Build bannedsitelist and bannedurllist cache files.
291# This will compare the date stamp of the list file with the date stamp of
292# the cache file and will recreate as needed.
293# If a bsl or bul .processed file exists, then that will be used instead.
294# It will increase process start speed by 300%.  On slow computers this will
295# be significant.  Fast computers do not need this option. on | off
296createlistcachefiles = on
297
298
299
300# POST protection (web upload and forms)
301# does not block forms without any file upload, i.e. this is just for
302# blocking or limiting uploads
303# measured in kibibytes after MIME encoding and header bumph
304# use 0 for a complete block
305# use higher (e.g. 512 = 512Kbytes) for limiting
306# use -1 for no blocking
307#maxuploadsize = 512
308#maxuploadsize = 0
309maxuploadsize = -1
310
311
312
313# Max content filter size
314# Sometimes web servers label binary files as text which can be very
315# large which causes a huge drain on memory and cpu resources.
316# To counter this, you can limit the size of the document to be
317# filtered and get it to just pass it straight through.
318# This setting also applies to content regular expression modification.
319# The value must not be higher than maxcontentramcachescansize
320# The size is in Kibibytes - eg 2048 = 2Mb
321# use 0 to set it to maxcontentramcachescansize
322maxcontentfiltersize = 256
323
324
325
326# Max content ram cache scan size
327# This is only used if you use a content scanner plugin such as AV
328# This is the max size of file that DG will download and cache
329# in RAM.  After this limit is reached it will cache to disk
330# This value must be less than or equal to maxcontentfilecachescansize.
331# The size is in Kibibytes - eg 10240 = 10Mb
332# use 0 to set it to maxcontentfilecachescansize
333# This option may be ignored by the configured download manager.
334maxcontentramcachescansize = 2000
335
336
337
338# Max content file cache scan size
339# This is only used if you use a content scanner plugin such as AV
340# This is the max size file that DG will download
341# so that it can be scanned or virus checked.
342# This value must be greater or equal to maxcontentramcachescansize.
343# The size is in Kibibytes - eg 10240 = 10Mb
344maxcontentfilecachescansize = 20000
345
346
347
348# File cache dir
349# Where DG will download files to be scanned if too large for the
350# RAM cache.
351filecachedir = '/tmp'
352
353
354
355# Delete file cache after user completes download
356# When a file gets save to temp it stays there until it is deleted.
357# You can choose to have the file deleted when the user makes a sucessful
358# download.  This will mean if they click on the link to download from
359# the temp store a second time it will give a 404 error.
360# You should configure something to delete old files in temp to stop it filling up.
361# on|off (defaults to on)
362deletedownloadedtempfiles = on
363
364
365
366# Initial Trickle delay
367# This is the number of seconds a browser connection is left waiting
368# before first being sent *something* to keep it alive.  The
369# *something* depends on the download manager chosen.
370# Do not choose a value too low or normal web pages will be affected.
371# A value between 20 and 110 would be sensible
372# This may be ignored by the configured download manager.
373initialtrickledelay = 20
374
375
376
377# Trickle delay
378# This is the number of seconds a browser connection is left waiting
379# before being sent more *something* to keep it alive.  The
380# *something* depends on the download manager chosen.
381# This may be ignored by the configured download manager.
382trickledelay = 10
383
384
385
386# Download Managers
387# These handle downloads of files to be filtered and scanned.
388# They differ in the method they deal with large downloads.
389# Files usually need to be downloaded 100% before they can be
390# filtered and scanned before being sent on to the browser.
391# Normally the browser can just wait, but with content scanning,
392# for example to AV, the browser may timeout or the user may get
393# confused so the download manager has to do some sort of
394# 'keep alive'.
395#
396# There are various methods possible but not all are included.
397# The author does not have the time to write them all so I have
398# included a plugin systam.  Also, not all methods work with all
399# browsers and clients.  Specifically some fancy methods don't
400# work with software that downloads updates.  To solve this,
401# each plugin can support a regular expression for matching
402# the client's user-agent string, and lists of the mime types
403# and extensions it should manage.
404#
405# Note that these are the matching methods provided by the base plugin
406# code, and individual plugins may override or add to them.
407# See the individual plugin conf files for supported options.
408#
409# The plugins are matched in the order you specify and the last
410# one is forced to match as the default, regardless of user agent
411# and other matching mechanisms.
412#
413downloadmanager = '/home/system/dansguardian/downloadmanagers/fancy.conf'
414##!! Not compiled !! downloadmanager = '/home/system/dansguardian/downloadmanagers/trickle.conf'
415downloadmanager = '/home/system/dansguardian/downloadmanagers/default.conf'
416
417
418
419# Content Scanners (Also known as AV scanners)
420# These are plugins that scan the content of all files your browser fetches
421# for example to AV scan.  The options are limitless.  Eventually all of
422# DansGuardian will be plugin based.  You can have more than one content
423# scanner. The plugins are run in the order you specify.
424# This is one of the few places you can have multiple options of the same name.
425#
426# Some of the scanner(s) require 3rd party software and libraries eg clamav.
427# See the individual plugin conf file for more options (if any).
428#
429#!! Not compiled !! contentscanner = '/home/system/dansguardian/contentscanners/clamav.conf'
430#contentscanner = '/home/system/dansguardian/contentscanners/clamdscan.conf'
431#!! Unimplemented !! contentscanner = '/home/system/dansguardian/contentscanners/kavav.conf'
432#!! Not compiled !! contentscanner = '/home/system/dansguardian/contentscanners/kavdscan.conf'
433#!! Not compiled !! contentscanner = '/home/system/dansguardian/contentscanners/icapscan.conf'
434#contentscanner = '/home/system/dansguardian/contentscanners/commandlinescan.conf'
435
436
437
438# Content scanner timeout
439# Some of the content scanners support using a timeout value to stop
440# processing (eg AV scanning) the file if it takes too long.
441# If supported this will be used.
442# The default of 60 seconds is probably reasonable.
443contentscannertimeout = 60
444
445
446
447# Content scan exceptions
448# If 'on' exception sites, urls, users etc will be scanned
449# This is probably not desirable behavour as exceptions are
450# supposed to be trusted and will increase load.
451# Correct use of grey lists are a better idea.
452# (on|off) default = off
453contentscanexceptions = off
454
455
456
457# Auth plugins
458# These replace the usernameidmethod* options in previous versions. They
459# handle the extraction of client usernames from various sources, such as
460# Proxy-Authorisation headers and ident servers, enabling requests to be
461# handled according to the settings of the user's filter group.
462# Multiple plugins can be specified, and will be queried in order until one
463# of them either finds a username or throws an error. For example, if Squid
464# is configured with both NTLM and Basic auth enabled, and both the 'proxy-basic'
465# and 'proxy-ntlm' auth plugins are enabled here, then clients which do not support
466# NTLM can fall back to Basic without sacrificing access rights.
467#
468# If you do not use multiple filter groups, you need not specify this option.
469#
470#authplugin = '/home/system/dansguardian/authplugins/proxy-basic.conf'
471#authplugin = '/home/system/dansguardian/authplugins/proxy-digest.conf'
472#!! Not compiled !! authplugin = '/home/system/dansguardian/authplugins/proxy-ntlm.conf'
473#authplugin = '/home/system/dansguardian/authplugins/ident.conf'
474#authplugin = '/home/system/dansguardian/authplugins/ip.conf'
475
476
477
478# Re-check replaced URLs
479# As a matter of course, URLs undergo regular expression search/replace (urlregexplist)
480# *after* checking the exception site/URL/regexpURL lists, but *before* checking against
481# the banned site/URL lists, allowing certain requests that would be matched against the
482# latter in their original state to effectively be converted into grey requests.
483# With this option enabled, the exception site/URL/regexpURL lists are also re-checked
484# after replacement, making it possible for URL replacement to trigger exceptions based
485# on them.
486# Defaults to off.
487recheckreplacedurls = off
488
489
490
491# Misc settings
492
493# if on it adds an X-Forwarded-For: <clientip> to the HTTP request
494# header.  This may help solve some problem sites that need to know the
495# source ip. on | off
496forwardedfor = on
497
498
499# if on it uses the X-Forwarded-For: <clientip> to determine the client
500# IP. This is for when you have squid between the clients and DansGuardian.
501# Warning - headers are easily spoofed. on | off
502usexforwardedfor = off
503
504
505# if on it logs some debug info regarding fork()ing and accept()ing which
506# can usually be ignored.  These are logged by syslog.  It is safe to leave
507# it on or off
508logconnectionhandlingerrors = on
509
510
511
512# Fork pool options
513
514# If on, this causes DG to write to the log file whenever child processes are
515# created or destroyed (other than by crashes). This information can help in
516# understanding and tuning the following parameters, but is not generally
517# useful in production.
518logchildprocesshandling = off
519
520# sets the maximum number of processes to spawn to handle the incoming
521# connections.  Max value usually 250 depending on OS.
522# On large sites you might want to try 180.
523maxchildren = 120
524
525
526# sets the minimum number of processes to spawn to handle the incoming connections.
527# On large sites you might want to try 32.
528minchildren = 8
529
530
531# sets the minimum number of processes to be kept ready to handle connections.
532# On large sites you might want to try 8.
533minsparechildren = 4
534
535
536# sets the minimum number of processes to spawn when it runs out
537# On large sites you might want to try 10.
538preforkchildren = 6
539
540
541# sets the maximum number of processes to have doing nothing.
542# When this many are spare it will cull some of them.
543# On large sites you might want to try 64.
544maxsparechildren = 32
545
546
547# sets the maximum age of a child process before it croaks it.
548# This is the number of connections they handle before exiting.
549# On large sites you might want to try 10000.
550maxagechildren = 500
551
552
553# Sets the maximum number client IP addresses allowed to connect at once.
554# Use this to set a hard limit on the number of users allowed to concurrently
555# browse the web. Set to 0 for no limit, and to disable the IP cache process.
556maxips = 0
557
558
559
560# Process options
561# (Change these only if you really know what you are doing).
562# These options allow you to run multiple instances of DansGuardian on a single machine.
563# Remember to edit the log file path above also if that is your intention.
564
565# IPC filename
566#
567# Defines IPC server directory and filename used to communicate with the log process.
568ipcfilename = '/tmp/.dguardianipc'
569
570# URL list IPC filename
571#
572# Defines URL list IPC server directory and filename used to communicate with the URL
573# cache process.
574urlipcfilename = '/tmp/.dguardianurlipc'
575
576# IP list IPC filename
577#
578# Defines IP list IPC server directory and filename, for communicating with the client
579# IP cache process.
580ipipcfilename = '/tmp/.dguardianipipc'
581
582# PID filename
583#
584# Defines process id directory and filename.
585#pidfilename = '/var/run/dansguardian.pid'
586
587# Disable daemoning
588# If enabled the process will not fork into the background.
589# It is not usually advantageous to do this.
590# on|off (defaults to off)
591nodaemon = off
592
593# Disable logging process
594# on|off (defaults to off)
595nologger = off
596
597# Enable logging of "ADs" category blocks
598# on|off (defaults to off)
599logadblocks = off
600
601# Enable logging of client User-Agent
602# Some browsers will cause a *lot* of extra information on each line!
603# on|off (defaults to off)
604loguseragent = off
605
606# Daemon runas user and group
607# This is the user that DansGuardian runs as.  Normally the user/group nobody.
608# Uncomment to use.  Defaults to the user set at compile time.
609# Temp files created during virus scanning are given owner and group read
610# permissions; to use content scanners based on external processes, such as
611# clamdscan, the two processes must run with either the same group or user ID.
612#daemonuser = 'nobody'
613#daemongroup = 'nogroup'
614
615# Soft restart
616# When on this disables the forced killing off all processes in the process group.
617# This is not to be confused with the -g run time option - they are not related.
618# on|off (defaults to off)
619softrestart = off
620
621# Mail program
622# Path (sendmail-compatible) email program, with options.
623# Not used if usesmtp is disabled (filtergroup specific).
624mailer = '/usr/sbin/sendmail -t'
625
Note: See TracBrowser for help on using the repository browser.