Subversion Repositories ALCASAR

Rev

Rev 1843 | Rev 1867 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log

#/bin/bash

# alcasar-url_filter.sh
# by REXY
# This script is distributed under the Gnu General Public License (GPL)

# Active / désactive : safesearch des moteurs de recherche
# Enable / disable : search engines safesearch
# Active / désactive : le filtrage des url contenant une adresse ip à la place d'un nom de domaine
# Enable / disable : filter of urls containing ip address instead of domain name 

TINY_CONF="/etc/tinyproxy/tinyproxy.conf"
DNSMASQ_WL_CONF="/etc/dnsmasq-whitelist.conf"
IP_WL="/usr/local/share/iptables-wl-enabled/ossi-ip-safesearch"
CONF_FILE="/usr/local/etc/alcasar.conf"
SED="/bin/sed -i"
safesearch="Off"
usage="Usage: alcasar-url_filter_wl.sh { -safesearch_on or -safesearch_off }"
nb_args=$#
if [ $nb_args -le 0 ]
then
        echo "$usage"
        nb_args=0
else
        while [ $nb_args -ge 1 ]
        do
                arg=${!nb_args}
                case $arg in
                -\? | -h* | --h*)
                        echo "$usage"
                        exit 0
                        ;;
                # Safe search activation
                -safesearch_on | --safesearch_on)       
                        safesearch="On"
                        ;;
                # Safe search desactivation
                -safesearch_off | --safesearch_off)     
                        safesearch="Off"
                        ;;
                *)
                        echo "Argument inconnu :$arg";
                        echo "$usage"
                        exit 1
                        ;;
                esac
        nb_args=$(expr $nb_args - 1)
        done
        forcesafesearch_server=`host -ta forcesafesearch.google.com|cut -d" " -f4`      # retrieve google forcesafesearch ip
        if [ $safesearch == "On" ]
        then
# add 'SafeSearch' redirection for google searching
                $SED "/google/d" $DNSMASQ_WL_CONF # remove old google declaration
                echo "# SafeSearch redirect server for google" >> $DNSMASQ_WL_CONF
                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 
                do
                        echo "address=/$gg_dnsname/$forcesafesearch_server" >> $DNSMASQ_WL_CONF
                done
                $SED "/$forcesafesearch_server/d" $IP_WL
                echo "add whitelist_ip_allowed $forcesafesearch_server" >> $IP_WL
        else
                $SED "/google/d" $DNSMASQ_WL_CONF
                rm $IP_WL
        fi
systemctl restart dnsmasq-whitelist
fi