Subversion Repositories ALCASAR

Rev

Rev 885 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 885 Rev 958
1
#/bin/bash
1
#/bin/bash
2
 
2
 
3
# alcasar-url_filter.sh
3
# alcasar-url_filter.sh
4
# by REXY
4
# by REXY
5
# This script is distributed under the Gnu General Public License (GPL)
5
# This script is distributed under the Gnu General Public License (GPL)
6
 
6
 
7
# Active / désactive : safesearch des moteurs de recherche ainsi que le filtrage Youtube
7
# Active / désactive : safesearch des moteurs de recherche ainsi que le filtrage Youtube
8
# Enable / disable : search engines safesearch and Youtube filtering 
8
# Enable / disable : search engines safesearch and Youtube filtering 
9
# Active / désactive : le filtrage des url contenant une adresse ip à la place d'un nom de domaine
9
# Active / désactive : le filtrage des url contenant une adresse ip à la place d'un nom de domaine
10
# Enable / disable : filter of urls containing ip address instead of domain name 
10
# Enable / disable : filter of urls containing ip address instead of domain name 
11
 
11
 
12
DIR_DG="/etc/dansguardian/lists"
12
DIR_DG="/etc/dansguardian/lists"
13
CONF_FILE="/usr/local/etc/alcasar.conf"
13
CONF_FILE="/usr/local/etc/alcasar.conf"
14
SED="/bin/sed -i"
14
SED="/bin/sed -i"
15
safesearch="Off"
15
safesearch="Off"
16
pureip="Off"
16
pureip="Off"
17
usage="Usage: alcasar-url_filter.sh { -safesearch_on or -safesearch_off } & { -pureip_on or --pureip_off }"
17
usage="Usage: alcasar-url_filter.sh { -safesearch_on or -safesearch_off } & { -pureip_on or --pureip_off }"
18
nb_args=$#
18
nb_args=$#
19
if [ $nb_args -le 1 ]
19
if [ $nb_args -le 1 ]
20
then
20
then
21
	echo "$usage"
21
	echo "$usage"
22
	nb_args=0
22
	nb_args=0
23
else
23
else
24
	while [ $nb_args -ge 1 ]
24
	while [ $nb_args -ge 1 ]
25
	do
25
	do
26
		arg=${!nb_args}
26
		arg=${!nb_args}
27
		case $arg in
27
		case $arg in
28
		-\? | -h* | --h*)
28
		-\? | -h* | --h*)
29
			echo "$usage"
29
			echo "$usage"
30
			exit 0
30
			exit 0
31
			;;
31
			;;
32
		# Safe search activation
32
		# Safe search activation
33
		-safesearch_on | --safesearch_on)	
33
		-safesearch_on | --safesearch_on)	
34
			safesearch="On"
34
			safesearch="On"
35
			;;
35
			;;
36
		# Safe search desactivation
36
		# Safe search desactivation
37
		-safesearch_off | --safesearch_off)	
37
		-safesearch_off | --safesearch_off)	
38
			safesearch="Off"
38
			safesearch="Off"
39
			;;
39
			;;
40
		# pure_ip activation
40
		# pure_ip activation
41
		-pureip_on | --pureip_on)
41
		-pureip_on | --pureip_on)
42
			pureip="On"
42
			pureip="On"
43
			;;
43
			;;
44
		# pureip desactivation
44
		# pureip desactivation
45
		-pureip_off | --pureip_off)
45
		-pureip_off | --pureip_off)
46
			pureip="Off"
46
			pureip="Off"
47
			;;
47
			;;
48
		*)
48
		*)
49
			echo "Argument inconnu :$arg";
49
			echo "Argument inconnu :$arg";
50
			echo "$usage"
50
			echo "$usage"
51
			exit 1
51
			exit 1
52
			;;
52
			;;
53
		esac
53
		esac
54
	nb_args=$(expr $nb_args - 1)
54
	nb_args=$(expr $nb_args - 1)
55
	done
55
	done
56
	if [ $safesearch == "On" ]
56
	if [ $safesearch == "On" ]
57
	then
57
	then
58
		$SED "s?^#\"?\"?g" $DIR_DG/urlregexplist #on décommente les lignes de regles
58
		$SED "s?^#\"?\"?g" $DIR_DG/urlregexplist #on décommente les lignes de regles
59
		youtube_id=`grep YOUTUBE_ID $CONF_FILE|cut -d"=" -f2`
59
		youtube_id=`grep YOUTUBE_ID $CONF_FILE|cut -d"=" -f2`
60
		$SED "s?\&edufilter=.*?\&edufilter=$youtube_id\"?g" $DIR_DG/urlregexplist
60
		$SED "s?\&edufilter=.*?\&edufilter=$youtube_id\"?g" $DIR_DG/urlregexplist
61
	else
61
	else
62
		$SED "s?^[^#]?#&?g" $DIR_DG/urlregexplist
62
		$SED "s?^[^#]?#&?g" $DIR_DG/urlregexplist
63
	fi
63
	fi
64
	if [ $pureip == "On" ]
64
	if [ $pureip == "On" ]
65
	then
65
	then
66
		$SED "s/^\#\*ip$/*ip/g" $DIR_DG/bannedsitelist
66
		$SED "s/^\#\*ip$/*ip/g" $DIR_DG/bannedsitelist
67
	else
67
	else
68
		$SED "s/^\*ip$/#*ip/g" $DIR_DG/bannedsitelist
68
		$SED "s/^\*ip$/#*ip/g" $DIR_DG/bannedsitelist
69
	fi
69
	fi
70
 
70
 
71
service dansguardian restart
71
service dansguardian restart
72
fi
72
fi
73
 
73
 
74
 
74