Warning: include(../header.php) [function.include]: failed to open stream: No such file or directory in /home2/everett/public_html/filterproject/index.php on line 31

Warning: include(../header.php) [function.include]: failed to open stream: No such file or directory in /home2/everett/public_html/filterproject/index.php on line 31

Warning: include() [function.include]: Failed opening '../header.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home2/everett/public_html/filterproject/index.php on line 31

How To Setup Server Sided Filtering
Using Open SuSE 10.1

Hardware Requirements

"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

Required Software

  • 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

Server Side

Note: These directions are intended to be used with the Open SuSE 10.1 distribution of Linux with a graphical display (X11).

  1. 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
  2. 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
  3. Login to the machine as the root user and to make sure you have the correct privileges to install and configure the server
  4. 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.)
  5. On the left hand side click on System
  6. Then on the right hand side scroll down to the System Services (Runlevel) icon and click on it. (This will launch a configuration wizard.)
  7. 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.)
  8. Check to see if there is a Yes in the Enabled column. If so, click on Abort
  9. If not, click on Enable. Then click Continue, Ok, Finish, and then Yes
  10. 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
  11. Change the working directory to the dansguardian-2.9.8.0 folder using the command cd /root/dansguardian-2.9.8.0
  12. 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)
  13. Now type ./make then ./make install-strip and ./make clean
  14. 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.

Client Side

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.


Warning: include(../footer.php) [function.include]: failed to open stream: No such file or directory in /home2/everett/public_html/filterproject/index.php on line 55

Warning: include(../footer.php) [function.include]: failed to open stream: No such file or directory in /home2/everett/public_html/filterproject/index.php on line 55

Warning: include() [function.include]: Failed opening '../footer.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home2/everett/public_html/filterproject/index.php on line 55