Subversion Repositories ALCASAR

Rev

Rev 2262 | Rev 2648 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
2223 tom.houday 1
#!/bin/bash
1843 raphael.pi 2
 
2223 tom.houday 3
# Id: $Id: alcasar-url_filter_wl.sh 2454 2017-12-09 18:59:31Z tom.houdayer $
4
 
1843 raphael.pi 5
# alcasar-url_filter.sh
6
# by REXY
7
# This script is distributed under the Gnu General Public License (GPL)
8
 
9
# Active / désactive : safesearch des moteurs de recherche
10
# Enable / disable : search engines safesearch
11
# Active / désactive : le filtrage des url contenant une adresse ip à la place d'un nom de domaine
2454 tom.houday 12
# Enable / disable : filter of urls containing ip address instead of domain name
1843 raphael.pi 13
 
14
TINY_CONF="/etc/tinyproxy/tinyproxy.conf"
15
DNSMASQ_WL_CONF="/etc/dnsmasq-whitelist.conf"
1852 raphael.pi 16
IP_WL="/usr/local/share/iptables-wl-enabled/ossi-ip-safesearch"
1843 raphael.pi 17
CONF_FILE="/usr/local/etc/alcasar.conf"
18
SED="/bin/sed -i"
19
safesearch="Off"
20
usage="Usage: alcasar-url_filter_wl.sh { -safesearch_on or -safesearch_off }"
21
nb_args=$#
22
if [ $nb_args -le 0 ]
23
then
24
	echo "$usage"
25
	nb_args=0
26
else
27
	while [ $nb_args -ge 1 ]
28
	do
29
		arg=${!nb_args}
30
		case $arg in
31
		-\? | -h* | --h*)
32
			echo "$usage"
33
			exit 0
34
			;;
35
		# Safe search activation
2454 tom.houday 36
		-safesearch_on | --safesearch_on)
1843 raphael.pi 37
			safesearch="On"
38
			;;
39
		# Safe search desactivation
2454 tom.houday 40
		-safesearch_off | --safesearch_off)
1843 raphael.pi 41
			safesearch="Off"
42
			;;
43
		*)
44
			echo "Argument inconnu :$arg";
45
			echo "$usage"
46
			exit 1
47
			;;
48
		esac
49
	nb_args=$(expr $nb_args - 1)
50
	done
51
	forcesafesearch_server=`host -ta forcesafesearch.google.com|cut -d" " -f4`	# retrieve google forcesafesearch ip
52
	if [ $safesearch == "On" ]
53
	then
54
# add 'SafeSearch' redirection for google searching
55
		$SED "/google/d" $DNSMASQ_WL_CONF # remove old google declaration
1876 raphael.pi 56
		if [ -e $IP_WL ]
57
		then
58
			rm $IP_WL # remove old google declaration
59
		fi
1843 raphael.pi 60
		echo "# SafeSearch redirect server for google" >> $DNSMASQ_WL_CONF
2454 tom.houday 61
		for gg_dnsname in .google.com .google.ad .google.ae .google.com.af .google.com.ag .google.com.ai .google.al .google.am .google.co.ao .google.com.ar .google.as .google.at .google.com.au .google.az .google.ba .google.com.bd .google.be .google.bf .google.bg .google.com.bh .google.bi .google.bj .google.com.bn .google.com.bo .google.com.br .google.bs .google.bt .google.co.bw .google.by .google.com.bz .google.ca .google.cd .google.cf .google.cg .google.ch .google.ci .google.co.ck .google.cl .google.cm .google.cn .google.com.co .google.co.cr .google.com.cu .google.cv .google.com.cy .google.cz .google.de .google.dj .google.dk .google.dm .google.com.do .google.dz .google.com.ec .google.ee .google.com.eg .google.es .google.com.et .google.fi .google.com.fj .google.fm .google.fr .google.ga .google.ge .google.gg .google.com.gh .google.com.gi .google.gl .google.gm .google.gp .google.gr .google.com.gt .google.gy .google.com.hk .google.hn .google.hr .google.ht .google.hu .google.co.id .google.ie .google.co.il .google.im .google.co.in .google.iq .google.is .google.it .google.je .google.com.jm .google.jo .google.co.jp .google.co.ke .google.com.kh .google.ki .google.kg .google.co.kr .google.com.kw .google.kz .google.la .google.com.lb .google.li .google.lk .google.co.ls .google.lt .google.lu .google.lv .google.com.ly .google.co.ma .google.md .google.me .google.mg .google.mk .google.ml .google.com.mm .google.mn .google.ms .google.com.mt .google.mu .google.mv .google.mw .google.com.mx .google.com.my .google.co.mz .google.com.na .google.com.nf .google.com.ng .google.com.ni .google.ne .google.nl .google.no .google.com.np .google.nr .google.nu .google.co.nz .google.com.om .google.com.pa .google.com.pe .google.com.pg .google.com.ph .google.com.pk .google.pl .google.pn .google.com.pr .google.ps .google.pt .google.com.py .google.com.qa .google.ro .google.ru .google.rw .google.com.sa .google.com.sb .google.sc .google.se .google.com.sg .google.sh .google.si .google.sk .google.com.sl .google.sn .google.so .google.sm .google.sr .google.st .google.com.sv .google.td .google.tg .google.co.th .google.com.tj .google.tk .google.tl .google.tm .google.tn .google.to .google.com.tr .google.tt .google.com.tw .google.co.tz .google.com.ua .google.co.ug .google.co.uk .google.com.uy .google.co.uz .google.com.vc .google.co.ve .google.vg .google.co.vi .google.com.vn .google.vu .google.ws .google.rs .google.co.za .google.co.zm .google.co.zw .google.cat
1843 raphael.pi 62
		do
63
			echo "address=/$gg_dnsname/$forcesafesearch_server" >> $DNSMASQ_WL_CONF
64
		done
1867 raphael.pi 65
		echo "add wl_ip_allowed $forcesafesearch_server" >> $IP_WL
1843 raphael.pi 66
	else
67
		$SED "/google/d" $DNSMASQ_WL_CONF
1852 raphael.pi 68
		rm $IP_WL
1843 raphael.pi 69
	fi
70
systemctl restart dnsmasq-whitelist
71
fi
72