Subversion Repositories ALCASAR

Rev

Rev 2223 | Rev 2454 | 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 2262 2017-05-29 20:19:03Z 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
12
# Enable / disable : filter of urls containing ip address instead of domain name 
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
36
		-safesearch_on | --safesearch_on)	
37
			safesearch="On"
38
			;;
39
		# Safe search desactivation
40
		-safesearch_off | --safesearch_off)	
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
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 
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