Différences entre versions de « SquidGuard »

De Cliss XXI
Sauter à la navigation Sauter à la recherche
imported>SylvainBeucler
m
imported>SylvainBeucler
Ligne 16 : Ligne 16 :
 
  mkdir -p /var/log/squidguard/
 
  mkdir -p /var/log/squidguard/
 
  chown proxy: /var/log/squidguard/
 
  chown proxy: /var/log/squidguard/
 +
 +
Rotation des logs:
 +
<pre>
 +
echo <<EOF > /etc/logrotate.d/squidguard
 +
/var/log/squidguard/*.log {
 +
daily
 +
compress
 +
delaycompress
 +
rotate 10
 +
        nocreate
 +
}
 +
EOF
 +
</pre>
  
 
== La liste noire ==
 
== La liste noire ==

Version du 30 juin 2009 à 14:33

Installation

Compilation (Debian 5.0 Lenny):

cd /usr/src/
wget http://www.squidguard.org/Downloads/squidGuard-1.4.tar.gz
tar xzf squidGuard-1.4.tar.gz
cd squidGuard-1.4
apt-get install build-essential
apt-get install libdb-dev 
./configure --with-squiduser=proxy
make
make install

Création des répertoires:

mkdir -p /var/lib/squidguard/db/
mkdir -p /var/log/squidguard/
chown proxy: /var/log/squidguard/

Rotation des logs:

echo <<EOF > /etc/logrotate.d/squidguard
/var/log/squidguard/*.log {
	daily
	compress
	delaycompress
	rotate	10
        nocreate
}
EOF

La liste noire

On récupère celle de Toulouse quotidiennement:

cat <<EOF > /etc/cron.daily/liste_noire_de_toulouse
#!/bin/bash
# Refresh DB
rsync -aq rsync://ftp.univ-tlse1.fr/blacklist/ /var/lib/squidguard/db/blacklist/
# Cf. http://www.squidguard.org/Doc/configure.html
squidGuard -C all
chown -R proxy: /var/lib/squidguard/db/blacklist/
EOF

Configuration

Dans /usr/local/squidGuard/squidGuard.conf:

dbhome /var/lib/squidguard/db/blacklist
logdir /var/log/squidguard

Pour créer le fichier de configuration, on peut s'appuyer sur les scripts suivants:

  • Déclaration des listes:
cd /var/lib/squidguard/db/blacklist/dest/
ls */usage | xargs grep -l black | xargs -n1 dirname | (
    while read list; do
	echo "dest $list {"
	if [ -f "$list/domains" ]; then
	    echo "  domainlist $list/domains"
	fi
	if [ -f "$list/urls" ]; then
	    echo "  urllist $list/urls"
	fi
	if [ -f "$list/expressions" ]; then
	    echo "  expressionlist $list/expressions"
	fi
	echo "}"
    done
)
  • Références dans le block default:
echo $(ls */usage | xargs grep -l black | xargs -n1 dirname | while read list; do echo '!'$list; done)

Squid

apt-get install squid3

Dans /etc/squid3/squid.conf:

acl localnet src 10.0.0.0/8                                                                     
http_access allow localnet
url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/squidGuard/squidGuard.conf

Configuration proxy transparent:

http_port 3128 transparent

Dans iptables:

iptables -t nat -A PREROUTING -i eth-local -p tcp --dport 80 -j REDIRECT --to-port 3128

Liens