How To Setup Server Sided Filtering Using Open SuSE 10.1
"DansGuardian 2 ... requires as a minimum 150Mhz per 50 users and 32Mb per
50 users plus 150Mhz and 64Mb. The memory requirement is more for the cacheing
proxy than DansGuardian. A minimum of maybe 4Gb hard drive is required. If you
have fast Internet connectivity (like 512Kbit/sec or more) then think about allocating
more CPU.
For much larger sites, use a dedicated xBSD filtering proxy with at least 256Mb
RAM and 1Ghz Athlon as a minimum. At least one ISP has used DansGuardian 2 with
1200 concurrent users." DansGuardian
Minimum System Requirements
- PIII 500Mhz Processor
- 10Gb Hard Disk Drive
- 512Mb RAM
- Network Card
- Linux Operating System
with the following packages:
- Squid (Internet Proxy Software)
- zlib 1.2.1 (Zlib-devl)
- devel-tools
- make or gmake
- gcc
- pcre-devel
- DansGuardian 2.9.8.0
Basic Installation
Note: These directions are intended to be used with the Open SuSE 10.1
distribution
of Linux with a graphical display (X11).
- Install the linux operation system on your computer. I recommended to use
the above distribution (Open
SuSE 10.1). I am supposing that you know how to install the operating system
- During the installation or if you've already installed the Operating System,
make sure the following packages are installed as well: Zlib-devl,
devel-tools, make or gmake, gcc, & pcre-devel
- Login to the machine as the root user and to make sure you have the
correct privileges to install
and configure the server
- From the console type in the command YaST2.
(This will open a system utility to get to the runlevel editor to enable the
squid proxy server to run.)
- On the left hand side click on System
- Then on the right hand side scroll down to the System
Services (Runlevel) icon and click on it. (This will launch a configuration
wizard.)
- After it loads, scroll down near the bottom of the main scroll pane and
click on the row that has squid
in the Service column (It should be in alphabetical order.)
- Check to see if there is a Yes in the Enabled column. If so,
click on Abort
- If not, click on Enable. Then click Continue,
Ok,
Finish, and then Yes
- Un-zip the DansGuardian file into the /root directory. It should
create a directory called dansguardian-2.9.8.0. This can be done by
changing to the root directory (cd /root) and unpack the file with
the command tar -xzf dansguardian-2.9.8.0.tar.gz
- Change the working directory to the dansguardian-2.9.8.0 folder using
the command cd /root/dansguardian-2.9.8.0
- Next, type ./configure (You will
most likely see a lot of out put but there shouldn't be any errors at this
point. However, if you do click here)
- Now type ./make then ./make
install-strip and ./make clean
- To start the server, type dansguardian to start the server. If it
gives you an error that says it is already running then type dansguardian
-r.
Now it should be ready for configuring. unless there were errors. If there
was an error after typing in one of the commands then click on the command above
that gave you the errors and it will take you to the "errors" page
for help in correcting the problem.
The last step is to configure the internet user to use the proxy filter. The
most effective way to implement this is though the DHCP server or router. Set
the proxy settings to point to the Content Filtering server on port 8080. If
you don't have access to the DHCP server or router then the browser needs to
be configured manually.
Configuration
All of the configuration files are located in the /etc/dansguardian
directory. The most important files out of these are the dansguardian.conf
and dansguardianf1.conf files.
dansguardian.conf -
dansguardianf1.conf -
The files that begin with "banned" describe what attributes are
blocked. These are also known as "Blacklists".
bannedextensionlist - This file lists what type of files cannot be
downloaded. This is very useful especially when it comes to preventing MP3 files
or other files that could potentially be infringing on copyright laws.
banneduserlist - Though not covered in this manual yet, you can specify
which users are banned from using the internet. This is where you set the privileges.
bannediplist - This is the list that banns clients
based on their IP address.
bannedmimetypelist - A list of banned types of files based on their
MIME type.
bannedsitelist - A list of sites that are blocked.
bannedurllist - A list of URLs that are blocked.
bannedphraselist - List of phrases to look for in a web site and if
they exist block the site.
bannedregexpurllist - This is a list of expressions to block in the
web address.
contentregexplist - This lists words that are censored and provides
replacements for them. For instance a [Swearword] would be replaced by "#%*!",
some other expression, or even just omitted.
The lists that begin with "gray" are meant to list sites that
are not to be banned explicitly but still filter content on the sites. These
are also
known as "Graylists".
greyurllist
greysitelist
The following files that begin with "exception" provide exceptions
to the rules stated above; the sites listed won't be filtered at all. These
are also know as "whitelists"
exceptionurllist
exceptioniplist
exceptionphraselist
exceptionsitelist
exceptionuserlist
The remainder of these files are miscellaneous configuration files.
filtergroupslist - If you chose to filter by user. This is where you would
assign a user to a certain group.
languages - This stores the messages returned to blocked sites in the
various languages based on the browser's settings.
logrotation - This is the preference script for rotating the log files.
phraselists - This is a directory or folder that contains phrase patters
for the various types of phrases that get filtered in the weightedphraselist.
pics - This specifies the rules to filtering pictures.
transparent1x1.gif - When pictures are blocked, this is the graphic
that will be displayed in it's place.
weightedphraselist - This gives different integer (numeric) values to
certain phrases contained in a web page. Once the sum of these values exceed a
given amount the site is then blocked.
Keeping Current & Administration
After setup is all done, you will have a working content filter. As none of
the filters are perfect, you will need to periodically update the lists so they
continue to provide the protection that is wanted. There may also be sites that
are blocked that shouldn't have a cause to be blocked. In these cases it is
important to have a way for the users to contact you in order to "challenge"
certain sites that were blocked but don't actually have censorable material
on them.
Blacklist, Whitelist and Greylist Updates
Dansguardian from time to time will update the blacklist. These are located
at urlblacklist.com but are not
provided free of charge.
Reviewing Log Files
Dansguardian logs information based on the specifications in the script file
logrotation. Access logs are located in the folder /var/log/dansguardian.
The most recent log file is named access.log and the files named access.log[#]
where [#] is an integer. The higher the number the older the file is.
Inside the file lists who and what was requested from the internet and will
contain *denied* in the line of the resource that was blocked by the filtering
program.
|