Subversion Repositories ALCASAR

Rev

Rev 1508 | Rev 1521 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
672 richard 1
#!/bin/bash
63 franck 2
# $Id: alcasar-bypass.sh 1520 2014-12-17 18:10:26Z richard $
3
 
672 richard 4
# alcasar-bypass.sh
1469 richard 5
# by 3abtux and Rexy
672 richard 6
# This script is distributed under the Gnu General Public License (GPL)
7
 
8
# activation / désactivation du contournement de l'authentification et du filtrage WEB
9
# enable / disable the bypass of authenticate process and filtering
10
 
383 franck 11
usage="Usage: alcasar-bypass.sh {--on or -on } | {--off or -off}"
401 richard 12
SED="/bin/sed -i"
1469 richard 13
CONF_FILE="/usr/local/etc/alcasar.conf"
14
INTIF=`grep ^INTIF= $CONF_FILE|cut -d"=" -f2`				# INTernal InterFace
15
 
1 root 16
nb_args=$#
17
args=$1
18
if [ $nb_args -eq 0 ]
19
then
20
	nb_args=1
21
	args="-h"
22
fi
23
case $args in
24
	-\? | -h* | --h*)
25
		echo "$usage"
26
		exit 0
27
		;;
383 franck 28
	--on | -on)	
1482 richard 29
		/usr/local/sbin/alcasar-logout.sh all
30
		for i in chilli 
1 root 31
		do
1469 richard 32
			if  (pgrep $i) > /dev/null ; then /usr/bin/systemctl stop $i.service ; fi
1 root 33
		done
1469 richard 34
		cp /etc/sysconfig/network-scripts/default-ifcfg-$INTIF /etc/sysconfig/network-scripts/ifcfg-$INTIF
35
		ifup $INTIF
1 root 36
		sh /usr/local/bin/alcasar-iptables-bypass.sh
1520 richard 37
		$SED "s?^no-dhcp-interface.*?#&?g" /etc/dnsmasq.conf # dnsmasq become the DHCP server
1482 richard 38
		/usr/bin/systemctl restart dnsmasq
1520 richard 39
		rm -f /etc/cron.d/alcasar-daemon-watchdog # don't restart daemons (specially coova) 
1482 richard 40
		echo "ALCASAR est en mode 'bypass'"
41
		echo "ALCASAR is in 'bypass' mode"
1 root 42
		;;
383 franck 43
	--off | -off)
1482 richard 44
		$SED "s?^#no-dhcp-interface=$INTIF?no-dhcp-interface=$INTIF?g" /etc/dnsmasq.conf
45
		$SED "s?^#no-dhcp-interface=tun0?no-dhcp-interface=tun0?g" /etc/dnsmasq.conf
46
		$SED "s?^#no-dhcp-interface=lo?no-dhcp-interface=lo?g" /etc/dnsmasq.conf
47
		systemctl restart dnsmasq
1469 richard 48
		rm -f /etc/sysconfig/network-scripts/ifcfg-$INTIF
1482 richard 49
		/usr/bin/systemctl start chilli
1 root 50
		sh /usr/local/bin/alcasar-iptables.sh
1520 richard 51
		# activation of the "daemon-watchdog" every 18'
52
		cat << EOF > /etc/cron.d/alcasar-daemon-watchdog
53
# activation du "chien de garde" (daemon-watchdog) toutes les 18'
54
*/18 * * * * root $DIR_DEST_BIN/alcasar-daemon.sh > /dev/null 2>&1
55
EOF
1482 richard 56
		echo "L'authentification et le filtrage sont actifs"
1508 richard 57
		echo "Authentication and filtering system are enabled"
1 root 58
;;
59
	*)
60
		echo "Argument inconnu :$1";
61
		echo "$usage"
62
		exit 1
63
		;;
64
esac