Outils pour utilisateurs

Outils du site


dansguardian

= Dansguardian =

Logiciel de filtrage web (contrôle parental) avec possibilité de scanner les flux à l'aide d'un antivirus

Compilation à partir des sources

La version 2.9 proposée par Debian stable n'est pas très efficace, notamment avec images.google. La version 2.10 l'est beaucoup plus.

Dépendances:

  • zlib1g-dev
  • pkg-config

Construction du paquet:

Arborescence Debian

   apt-get install build-essentials zlib1g-dev pkg-config
   wget http://dansguardian.org/downloads/2/Stable/dansguardian-2.10.1.1.tar.gz
   tar xzf dansguardian-2.10.1.1.tar.gz
   cd dansguardian-2.10.1.1
   dh_make -s -n -e thomas@opendoor.fr

Script d'init et log

Créer les fichiers suivants: - debian/postinst.debhelper:

# Automatically added by dh_installinit
if [ -x "/etc/init.d/dansguardian" ]; then
   update-rc.d dansguardian defaults 50 19 >/dev/null
   if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
      invoke-rc.d dansguardian start || exit $?
   else
      /etc/init.d/dansguardian start || exit $?
   fi
fi
# End automatically added section

- debian.prerm.debhelper:

# Automatically added by dh_installinit
if [ -x "/etc/init.d/dansguardian" ]; then
   if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
      invoke-rc.d dansguardian stop || exit $?
   else
      /etc/init.d/dansguardian stop || exit $?
   fi
fi
# End automatically added section

- debian/dansguardian.init:

#! /bin/sh
# Startup script for dansguardian
#
# description: A web content filtering plugin for web \
#              proxies, developed to filter using lists of \
#              banned phrases, MIME types, filename \
#              extensions and PICS labling.
# processname: dansguardian
# pidfile: /var/run/dansguardian.pid
# config: /etc/dansguardian/dansguardian.conf
### BEGIN INIT INFO
# Provides:          dansguardian
# Required-Start:    $network $syslog
# Required-Stop:     $network 
# Default-Start:     2 3 5 
# Default-Stop:      0 6 
# Description: Starts [[:dansguardian|dansguardian]] content proxy 
# short-description: [[:dansguardian|dansguardian]] configuration
### END INIT INFO

#include lsb functions
. /lib/lsb/init-functions

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/dansguardian
NAME=dansguardian
DESC="[[:dansguardian|DansGuardian]]"

CONFFILELOCATION=/etc/dansguardian/
#BINARYLOCATION=/usr/sbin/
#PIDDIR=/var/run/

grep -q ^UNCONFIGURED ${CONFFILELOCATION}[[:dansguardian|dansguardian]].conf && {
cat <<EOF
        DansGuardian has not been configured!
        Please edit ${CONFFILELOCATION}dansguardian.conf manually then rerun
        this script.
EOF
exit; }

test -x $DAEMON || exit 0
test -f $CONFIG || exit 0

set -e

case "$1" in
  start)
   log_daemon_msg "Starting $DESC" "$NAME"
   test -d /var/lock/subsys || mkdir -p /var/lock/subsys
   start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
      --exec $DAEMON || log_end_msg 1
   log_end_msg 0
   ;;
  stop)
   log_daemon_msg "Stopping $DESC" "$NAME"
   start-stop-daemon --stop --quiet --retry 15 --oknodo --pidfile /var/run/$NAME.pid \
      --exec $DAEMON || log_end_msg 1
   log_end_msg 0
   ;;
  reload)
   log_action_begin_msg "Reloading $DESC configuration..."
   echo "Reloading $DESC configuration files."
   start-stop-daemon --stop --signal 1 --quiet --pidfile \
      /var/run/$NAME.pid --exec $DAEMON || log_action_end_msg 1
   log_action_end_msg 0
   ;;
  restart|force-reload)
   #
   #	If the "reload" option is implemented, move the "force-reload"
   #	option to the "reload" entry above. If not, "force-reload" is
   #	just the same as "restart".
   #
   echo -n "Restarting $DESC: "
   log_daemon_msg "Restarting $DESC: "
   start-stop-daemon --stop --quiet --retry 15 --oknodo --pidfile \
      --retry 15 /var/run/$NAME.pid --exec $DAEMON || log_end_msg 1
   start-stop-daemon --start --quiet --pidfile \
      /var/run/$NAME.pid --exec $DAEMON || log_end_msg 1
   log_end_msg 0
   ;;
   *)
   N=/etc/init.d/$NAME
   # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
   log_action_msg "Usage: $N {start|stop|restart|force-reload}" >&2
   exit 1
   ;;
esac

exit 0

//debian/dansguardian.logrotate//:
<code>
/var/log/dansguardian/access.log {
   rotate 5
   daily
   prerotate
      /etc/init.d/dansguardian stop > /dev/null 2>&1 || true
   endscript
   postrotate
      /etc/init.d/dansguardian start > /dev/null 2>&1
   endscript
}

- debian/rules:

   %:
        dh  $@
build:
        dh_auto_configure -- --enable-pcre=no

- debian/control: Renseigner simplement mainteneur, section et description

Construction du paquet:

   fakeroot debian/rules clean
   fakeroot debian/rules build

Le paquet se trouve dans le répertoire parent.

Attention le fichier debian/rules a été modifié pour supprimer la dépendance avec libpcre3:

   %:
        dh  $@
build:
        dh_auto_configure -- --enable-pcre=no

Installation et Configuration

Il suffit d'installer le paquet ci-dessus. On peut ensuite utiliser (ci-possible) le mode transparent (tous les flux web sont redirigés sur le proxy, ou utiliser un proxy, comme tinyproxy.

Tinyproxy

Il suffit de l'installer, et de noter son port d'écoute (par défaut 8888). Celui-ci devra être accessible depuis le réseau local.

Dansguardian

La configuration est centralisée dans le fichier /etc/dansguardian/dansguardian.conf. Les éléments suivants peuvent être modifiés: - language = french - logfileformat = 3 - syslog = on - proxyport = 88888 - urlcachenumber=5000

# vim: set filetype=dokuwiki:

dansguardian.txt · Dernière modification: 2015/10/06 20:06 (modification externe)