 SQUIDWALL README
==================



WHAT IS IT
----------

Squidwall is a fast, small and secure squid redirector.



FEATURES
--------

- user-based accesscontrol to squid (the internet)

- host/ip based accesscontrol to squid

- pass-through antivirus scanning with clamav

- squidwall and squid doesn't need a restart or kill -HUP, if sth. is changed
  within the acl's of squidwall

- the acl's are two directories, which have empty files named by these convention:
  '+filename' -> access ok
  '?filename' -> restricted access ok
  '-filename' -> access denied





ACL's for squidwall
-------------------


1. USERNAME ACL's
-----------------

$USERS_DIR/+user1
- user 'user1' can use the internet, without any restrictions
- but: if the user is on a restricted host, he has restrictions!

$USERS_DIR/?user2
- user 'user2' can use filtered/scanned internet

$USERS_DIR/-user3
- user 'user3' can NOT use the internet

$USERS_DIR/!
- squidwall rereads the directory only, if the mtime of '!' has changed


2. HOST/IP ACL's:
-----------------

/etc/squidwall/hosts/+192.168.1.1
- IP 192.168.1.1 can use the internet

/etc/squidwall/hosts/?192.168.1.2
- IP 192.168.1.2 has filtered/scanned internet access

/etc/squidwall/hosts/-192.168.1.3
- IP 192.168.1.3 can NOT use the internet

/etc/squidwall/hosts/!
- squidwall rereads the directory only, if the mtime of '!' has changed


filters for squidwall
---------------------


/etc/squidwall/filters/! contains:

+C,Filter1,Filter2,* (real content filtering)
-C (disable content filering)

+U,Filter1,Filter2,* (url filtering)
-U (disable url filtering)

+V (scan for viruses with clamav)
-V (disable scanning)

DEFAULT:
+C,n*
+U,n*
+V

-> all other files in /etc/squidwall/filters/ are filters
-> each line is a definition of a filter
-> xxx ... add here a good documentation


VARIABLES FOR REDIR-SITES
-------------------------

These variables can be used in the errorpages, the client/user will see:

$version - version of squidwall
$url - the requested url
$ip - the ip, which has sent the request
$host - the host, which has sent the request
$user - the user, which has sent the request
$method - the request method

$clamd - version of clamd, including 
$virus - name, of the virus which was found

$filter - name of filter, which matched (url|content)
