Subversion Repositories ALCASAR

Rev

Rev 63 | Blame | Last modification | View Log

#/bin/sh
# $Id: alcasar-nf.sh 323 2010-11-16 22:48:34Z richard $

# active ou desactive le filtrage réseau
# by rexy

SED="/bin/sed -i"
FIC_SERVICES="/usr/local/etc/alcasar-services"
FIC_EXCEPTIONS="/usr/local/etc/alcasar-filter-exceptions"

usage="Usage: alcasar-nf.sh -on | -off "
nb_args=$#
args=$1
if [ $nb_args -eq 0 ]
then
        nb_args=1
        args="-h"
fi
case $args in
        -\? | -h* | --h*)
                echo "$usage"
                exit 0
                ;;
        -on)    
                # activation du filtrage réseau
                $SED "s?^FILTERING.*?FILTERING=\"yes\"?g" /usr/local/bin/alcasar-iptables.sh
                # tri du fichier de services
                $SED "/^$/d" $FIC_SERVICES # suppression lignes vides
                sort -k2n $FIC_SERVICES > /tmp/alcasar-services-sort
                mv -f /tmp/alcasar-services-sort $FIC_SERVICES
                chown root:apache $FIC_SERVICES
                chmod 660 $FIC_SERVICES
                # vérification de présence du fichier d'exception
                [ -e $FIC_EXCEPTIONS ] || touch $FIC_EXCEPTIONS
                chown root:apache $FIC_EXCEPTIONS
                chmod 664 $FIC_EXCEPTIONS
                /usr/local/bin/alcasar-iptables.sh
                ;;
        -off)
                # désactivation du filtrage réseau
                $SED "s?^FILTERING.*?FILTERING=\"no\"?g" /usr/local/bin/alcasar-iptables.sh
                /usr/local/bin/alcasar-iptables.sh
                ;;
        *)
                echo "Argument inconnu :$1";
                echo "$usage"
                exit 1
                ;;
esac