Subversion Repositories ALCASAR

Rev

Rev 2458 | Rev 2465 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log

Rev 2458 Rev 2464
Line 1... Line 1...
1
#!/bin/bash
1
#!/bin/bash
2
# $Id: alcasar-uninstall.sh 2458 2017-12-10 15:26:10Z richard $
2
# $Id: alcasar-uninstall.sh 2464 2017-12-17 15:35:45Z richard $
3
 
3
 
4
# alcasar-uninstall.sh
4
# alcasar-uninstall.sh
5
# by Franck BOUIJOUX, Pascal LEVANT and Richard REY
5
# by Franck BOUIJOUX, Pascal LEVANT and Richard REY
6
# This script is distributed under the Gnu General Public License (GPL)
6
# This script is distributed under the Gnu General Public License (GPL)
7
 
7
 
8
# Désisntallation ou mise à jour d'ALCASAR
8
# Désisntallation ou mise à jour d'ALCASAR
9
# Uninstall or update ALCASAR
9
# Uninstall or update ALCASAR
10
 
10
 
11
usage="Usage: alcasar-uninstall.sh {-update or --update} | {-full or --full}"
-
 
12
SED="/bin/sed -i"
11
SED="/bin/sed -i"
13
 
12
 
14
nb_args=$#
-
 
15
args=$1
-
 
16
if [ $nb_args -eq 0 ]
-
 
17
then
-
 
18
	nb_args=1
-
 
19
	args="-h"
-
 
20
fi
-
 
21
case $args in
-
 
22
	-\? | -h* | --h*)
-
 
23
		echo "$usage"
-
 
24
		exit 0
13
init ()
25
		;;
-
 
26
	--update | -update)
-
 
27
		mode="update"
-
 
28
		;;
-
 
29
	--full | -full)
-
 
30
		mode="full"
-
 
31
		;;
-
 
32
	*)
-
 
33
		echo "Argument inconnu :$1";
-
 
34
		echo "$usage"
-
 
35
		exit 1
-
 
36
		;;
-
 
37
esac
-
 
38
 
14
{
39
clear
-
 
40
if [ $mode == "full" ]
-
 
41
then
-
 
42
	echo "----------------------------------------------------------------------------"
-
 
43
	echo "**                     Uninstall/Désinstallation d'ALCASAR		**"
-
 
44
	echo "----------------------------------------------------------------------------"
-
 
45
	services="alcasar-load_balancing vnstat havp freshclam ntpd httpd radiusd mysqld dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole tinyproxy nfsen fail2ban iptables ulogd-ext-access ulogd-ssh ulogd-traceability dansguardian dnsmasq sshd chilli"
-
 
46
	/usr/local/bin/alcasar-logout.sh all # logout everybody
-
 
47
else
-
 
48
	echo "----------------------------------------------------------------------------"
-
 
49
	echo "**                     update/mise à jour d'ALCASAR			**"
-
 
50
	echo "----------------------------------------------------------------------------"
-
 
51
	# dnsmasq & sshd should stay on to allow remote update
-
 
52
	services="alcasar-load_balancing vnstat havp freshclam ntpd httpd radiusd mysqld dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole tinyproxy nfsen fail2ban ulogd-ext-access ulogd-ssh ulogd-traceability dansguardian chilli"
-
 
53
	/usr/local/bin/alcasar-bypass.sh -on # to allow remote update
-
 
54
fi
-
 
55
echo "Stopping service : "
-
 
56
/usr/local/bin/alcasar-sms.sh --stop
-
 
57
for i in $services
-
 
58
do
-
 
59
	if [ -e /lib/systemd/system/$i.service ]
-
 
60
	then
-
 
61
		/usr/bin/systemctl disable $i.service
-
 
62
		/usr/bin/systemctl stop $i.service 1>/dev/null
-
 
63
		sleep 1
-
 
64
	else
-
 
65
		echo "The service $i.service doesn't exist !"
-
 
66
	fi
-
 
67
done
-
 
68
echo "Check the service clearing"
-
 
69
for i in $services
-
 
70
do
-
 
71
	if [ `systemctl is-active $i.service` == "active" ]
-
 
72
	then
-
 
73
		echo "The service '$i' need to be killed"
-
 
74
		/usr/bin/systemctl stop $i.service
-
 
75
		killall $i
-
 
76
	fi
-
 
77
done
-
 
78
if [ $mode == "update" ] # reload sshd in case of remote update
-
 
79
then
-
 
80
	/usr/bin/systemctl reload sshd
-
 
81
fi
-
 
82
echo "Reset ALCASAR main functions : "
-
 
83
echo -en "\n- init (1) : "
15
	echo -en "(3) : "
84
# The files in /usr/local/ will be removed at the end (usefull here)
16
	rm -f /root/ALCASAR* && echo -n "1, " # The files in /usr/local/ will be removed at the end (still usefull here)
85
rm -f /root/ALCASAR* && echo -n "1"
-
 
86
sleep 1
-
 
87
 
-
 
88
echo -en "\n- init (2) : "
-
 
89
[ -e /boot/grub2/user.cfg ] && rm -f /boot/grub2/user.cfg && echo -n "1, "
17
	[ -e /boot/grub2/user.cfg ] && rm -f /boot/grub2/user.cfg && echo -n "2, "
90
[ -e /root/grub.default ] && mv -f /root/grub.default /etc/grub.d/10_linux && echo -n "2"
18
	[ -e /root/grub.default ] && mv -f /root/grub.default /etc/grub.d/10_linux && echo -n "3"
91
sleep 1
19
}
92
 
20
 
-
 
21
ACC ()
-
 
22
{
93
echo -en "\n- ACC (11) : "
23
	echo -en "(11) : "
94
[ -d /var/www/html ] && rm -rf /var/www/html && echo -n "1, "
24
	[ -d /var/www/html ] && rm -rf /var/www/html && echo -n "1, "
95
[ -d /etc/freeradius-web ] && rm -rf /etc/freeradius-webl && echo -n "2, "
25
	[ -d /etc/freeradius-web ] && rm -rf /etc/freeradius-webl && echo -n "2, "
96
[ -e /etc/php.ini.default ] && mv -f /etc/php.ini.default /etc/php.ini && echo -n "3, "
26
	[ -e /etc/php.ini.default ] && mv -f /etc/php.ini.default /etc/php.ini && echo -n "3, "
97
[ -e /etc/httpd/conf/httpd.conf.default ] && mv /etc/httpd/conf/httpd.conf.default /etc/httpd/conf/httpd.conf && echo -n "4, "
27
	[ -e /etc/httpd/conf/httpd.conf.default ] && mv /etc/httpd/conf/httpd.conf.default /etc/httpd/conf/httpd.conf && echo -n "4, "
98
[ -e /etc/httpd/conf/modules.d/00_base.conf.default ] && mv /etc/httpd/conf/modules.d/00_base.conf.default /etc/httpd/conf/modules.d/00_base.conf && echo -n "5, "
28
	[ -e /etc/httpd/conf/modules.d/00_base.conf.default ] && mv /etc/httpd/conf/modules.d/00_base.conf.default /etc/httpd/conf/modules.d/00_base.conf && echo -n "5, "
Line 100... Line 30...
100
[ -e /etc/httpd/conf/conf.d/multilang-errordoc.conf.default ] && mv /etc/httpd/conf/conf.d/multilang-errordoc.conf.default /etc/httpd/conf/conf.d/multilang-errordoc.conf && echo -n "7, "
30
	[ -e /etc/httpd/conf/conf.d/multilang-errordoc.conf.default ] && mv /etc/httpd/conf/conf.d/multilang-errordoc.conf.default /etc/httpd/conf/conf.d/multilang-errordoc.conf && echo -n "7, "
101
[ -e /usr/share/httpd/error/include/top.html.default ] && mv /usr/share/httpd/error/include/top.html.default /usr/share/httpd/error/include/top.html && echo -n "8, "
31
	[ -e /usr/share/httpd/error/include/top.html.default ] && mv /usr/share/httpd/error/include/top.html.default /usr/share/httpd/error/include/top.html && echo -n "8, "
102
[ -e /usr/share/httpd/error/include/bottom.html.default ] && mv /usr/share/httpd/error/include/bottom.html.default /usr/share/httpd/error/include/top.html && echo -n "9, "
32
	[ -e /usr/share/httpd/error/include/bottom.html.default ] && mv /usr/share/httpd/error/include/bottom.html.default /usr/share/httpd/error/include/top.html && echo -n "9, "
103
[ -d /usr/local/etc/digest ] && rm -rf /usr/local/etc/digest && echo -n "10, "
33
	[ -d /usr/local/etc/digest ] && rm -rf /usr/local/etc/digest && echo -n "10, "
104
[ -e /etc/httpd/conf/webapps.d/alcasar.conf ] && rm -f /etc/httpd/conf/webapps.d/alcasar.conf && echo -n "11"
34
	[ -e /etc/httpd/conf/webapps.d/alcasar.conf ] && rm -f /etc/httpd/conf/webapps.d/alcasar.conf && echo -n "11"
105
sleep 1
35
}
106
 
36
 
-
 
37
CA ()
-
 
38
{
107
echo -en "\n- CA (5) : "
39
	echo -en "(5) : "
108
[ -e /etc/pki/CA/alcasar-ca.crt ] && rm -f /etc/pki/CA/alcasar-ca.crt && echo -n "1, "
40
	[ -e /etc/pki/CA/alcasar-ca.crt ] && rm -f /etc/pki/CA/alcasar-ca.crt && echo -n "1, "
109
[ -e /etc/pki/CA/private/alcasar-ca.key ] && rm -f /etc/pki/CA/private/alcasar-ca.key && echo -n "2, "
41
	[ -e /etc/pki/CA/private/alcasar-ca.key ] && rm -f /etc/pki/CA/private/alcasar-ca.key && echo -n "2, "
110
[ -e /etc/pki/tls/certs/alcasar.crt ] && rm -f /etc/pki/tls/certs/alcasar.crt && echo -n "3, "
42
	[ -e /etc/pki/tls/certs/alcasar.crt ] && rm -f /etc/pki/tls/certs/alcasar.crt && echo -n "3, "
111
[ -e /etc/pki/tls/private/alcasar.key ] && rm -f /etc/pki/tls/private/alcasar.key && echo -n "4, "
43
	[ -e /etc/pki/tls/private/alcasar.key ] && rm -f /etc/pki/tls/private/alcasar.key && echo -n "4, "
112
[ -e /etc/httpd/conf/vhosts-ssl.default ] && FIC_VIRTUAL_SSL=`find /etc/httpd/conf -type f -name *default_ssl_vhost.conf` && mv /etc/httpd/conf/vhosts-ssl.default $FIC_VIRTUAL_SSL && echo -n "5"
44
	[ -e /etc/httpd/conf/vhosts-ssl.default ] && FIC_VIRTUAL_SSL=`find /etc/httpd/conf -type f -name *default_ssl_vhost.conf` && mv /etc/httpd/conf/vhosts-ssl.default $FIC_VIRTUAL_SSL && echo -n "5"
113
sleep 1
45
}
114
 
46
 
-
 
47
time_server ()
-
 
48
{
115
echo -en "\n- time_server (2) : "
49
	echo -en "(2) : "
116
[ -e /etc/ntp/step-tickers.default ] && mv /etc/ntp/step-tickers.default /etc/ntp/step-tickers && echo -n "1, "
50
	[ -e /etc/ntp/step-tickers.default ] && mv /etc/ntp/step-tickers.default /etc/ntp/step-tickers && echo -n "1, "
117
[ -e /etc/ntp.conf.default ] && mv /etc/ntp.conf.default /etc/ntp.conf && echo -n "2"
51
	[ -e /etc/ntp.conf.default ] && mv /etc/ntp.conf.default /etc/ntp.conf && echo -n "2"
-
 
52
}
118
 
53
 
-
 
54
init_db ()
-
 
55
{
119
echo -en "\n- init_db (2) : "
56
	echo -en "(2) : "
120
[ -e /etc/my.cnf.default ] && mv -f /etc/my.cnf.default /etc/my.cnf && echo -n "1, "
57
	[ -e /etc/my.cnf.default ] && mv -f /etc/my.cnf.default /etc/my.cnf && echo -n "1, "
121
[ -e /lib/systemd/system/mysqld.service.default ] && mv -f /lib/systemd/system/mysqld.service.default /lib/systemd/system/mysqld.service && echo -n "2"
58
	[ -e /lib/systemd/system/mysqld.service.default ] && mv -f /lib/systemd/system/mysqld.service.default /lib/systemd/system/mysqld.service && echo -n "2"
122
/usr/bin/systemctl daemon-reload
59
	/usr/bin/systemctl daemon-reload
123
rm -rf /var/lib/mysql
60
	rm -rf /var/lib/mysql
124
sleep 1
61
}
125
 
62
 
-
 
63
freeradius ()
-
 
64
{
126
echo -en "\n- freeradius (12) : "
65
	echo -en "(12) : "
127
[ -e /etc/raddb/empty-radiusd-db.sql ] && rm -f /etc/raddb/empty-radiusd-db.sql && echo -n "1, "
66
	[ -e /etc/raddb/empty-radiusd-db.sql ] && rm -f /etc/raddb/empty-radiusd-db.sql && echo -n "1, "
128
[ -e /etc/raddb/radiusd.conf.default ] && mv /etc/raddb/radiusd.conf.default /etc/raddb/radiusd.conf && echo -n "2, "
67
	[ -e /etc/raddb/radiusd.conf.default ] && mv /etc/raddb/radiusd.conf.default /etc/raddb/radiusd.conf && echo -n "2, "
129
[ -e /etc/raddb/sites-enabled/alcasar ] && rm /etc/raddb/sites-enabled/alcasar && echo -n "3, "
68
	[ -e /etc/raddb/sites-enabled/alcasar ] && rm /etc/raddb/sites-enabled/alcasar && echo -n "3, "
130
[ -e /etc/raddb/sites-available/alcasar ] && rm /etc/raddb/sites-available/alcasar && echo -n "4, "
69
	[ -e /etc/raddb/sites-available/alcasar ] && rm /etc/raddb/sites-available/alcasar && echo -n "4, "
131
[ -e /etc/raddb/clients.conf.default ] && mv /etc/raddb/clients.conf.default /etc/raddb/clients.conf && echo -n "5, "
70
	[ -e /etc/raddb/clients.conf.default ] && mv /etc/raddb/clients.conf.default /etc/raddb/clients.conf && echo -n "5, "
Line 134... Line 73...
134
[ -e /etc/raddb/mods-config/sql/main/mysql/queries.conf.default ] && mv /etc/raddb/mods-config/sql/main/mysql/queries.conf.default /etc/raddb/mods-config/sql/main/mysql/queries.conf && echo -n "8, "
73
	[ -e /etc/raddb/mods-config/sql/main/mysql/queries.conf.default ] && mv /etc/raddb/mods-config/sql/main/mysql/queries.conf.default /etc/raddb/mods-config/sql/main/mysql/queries.conf && echo -n "8, "
135
[ -e /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf && echo -n "9, "
74
	[ -e /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf && echo -n "9, "
136
[ -e /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf && echo -n "10, "
75
	[ -e /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/monthlycounter.conf && echo -n "10, "
137
[ -e /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf && echo -n "11, "
76
	[ -e /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf.default ] && mv /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf.default /etc/raddb/mods-config/sql/counter/mysql/noresetcounter.conf && echo -n "11, "
138
[ -e /lib/systemd/system/radiusd.service.default ] && mv /lib/systemd/system/radiusd.service.default /lib/systemd/system/radiusd.service && echo -n "12"
77
	[ -e /lib/systemd/system/radiusd.service.default ] && mv /lib/systemd/system/radiusd.service.default /lib/systemd/system/radiusd.service && echo -n "12"
139
sleep 1
78
}
140
 
79
 
-
 
80
chilli ()
-
 
81
{
141
echo -en "\n- chilli (4) : "
82
	echo -en "(4) : "
142
[ -e /etc/init.d/chilli.default ] && mv /etc/init.d/chilli.default /etc/init.d/chilli && echo -n "1, "
83
	[ -e /etc/init.d/chilli.default ] && mv /etc/init.d/chilli.default /etc/init.d/chilli && echo -n "1, "
143
[ -e /usr/libexec/chilli ] && rm /usr/libexec/chilli && echo -n "2, "
84
	[ -e /usr/libexec/chilli ] && rm /usr/libexec/chilli && echo -n "2, "
144
[ -e /etc/chilli.conf.default ] && mv /etc/chilli.conf.default /etc/chilli.conf && echo -n "3, "
85
	[ -e /etc/chilli.conf.default ] && mv /etc/chilli.conf.default /etc/chilli.conf && echo -n "3, "
145
[ -e /lib/systemd/system/chilli.service ] && rm /lib/systemd/system/chilli.service && echo -n "4"
86
	[ -e /lib/systemd/system/chilli.service ] && rm /lib/systemd/system/chilli.service && echo -n "4"
146
sleep 1
87
}
147
 
88
 
-
 
89
dansguardian ()
-
 
90
{
148
echo -en "\n- dansguardian (8) : "
91
	echo -en "(8) : "
149
[ -d /var/dansguardian ] && rm -rf /var/dansguardian && echo -n "1, "
92
	[ -d /var/dansguardian ] && rm -rf /var/dansguardian && echo -n "1, "
150
[ -e /etc/dansguardian/dansguardian.conf.default ] && mv /etc/dansguardian/dansguardian.conf.default /etc/dansguardian/dansguardian.conf && echo -n "2, "
93
	[ -e /etc/dansguardian/dansguardian.conf.default ] && mv /etc/dansguardian/dansguardian.conf.default /etc/dansguardian/dansguardian.conf && echo -n "2, "
151
[ -e /etc/dansguardian/lists/bannedphraselist.default ] && mv /etc/dansguardian/lists/bannedphraselist.default /etc/dansguardian/lists/bannedphraselist && echo -n "3, "
94
	[ -e /etc/dansguardian/lists/bannedphraselist.default ] && mv /etc/dansguardian/lists/bannedphraselist.default /etc/dansguardian/lists/bannedphraselist && echo -n "3, "
152
[ -e /etc/dansguardian/dansguardianf1.conf.default ] && mv /etc/dansguardian/dansguardianf1.conf.default /etc/dansguardian/dansguardianf1.conf && echo -n "4, "
95
	[ -e /etc/dansguardian/dansguardianf1.conf.default ] && mv /etc/dansguardian/dansguardianf1.conf.default /etc/dansguardian/dansguardianf1.conf && echo -n "4, "
153
[ -e /etc/dansguardian/lists/bannedextensionlist.default ] && mv /etc/dansguardian/lists/bannedextensionlist.default /etc/dansguardian/lists/bannedextensionlist && echo -n "5, "
96
	[ -e /etc/dansguardian/lists/bannedextensionlist.default ] && mv /etc/dansguardian/lists/bannedextensionlist.default /etc/dansguardian/lists/bannedextensionlist && echo -n "5, "
154
[ -e /etc/dansguardian/lists/bannedmimetypelist.default ] && mv /etc/dansguardian/lists/bannedmimetypelist.default /etc/dansguardian/lists/bannedmimetypelist && echo -n "6, "
97
	[ -e /etc/dansguardian/lists/bannedmimetypelist.default ] && mv /etc/dansguardian/lists/bannedmimetypelist.default /etc/dansguardian/lists/bannedmimetypelist && echo -n "6, "
155
[ -e /etc/dansguardian/lists/exceptioniplist.default ] && mv /etc/dansguardian/lists/exceptioniplist.default /etc/dansguardian/lists/exceptioniplist && echo -n "7, "
98
	[ -e /etc/dansguardian/lists/exceptioniplist.default ] && mv /etc/dansguardian/lists/exceptioniplist.default /etc/dansguardian/lists/exceptioniplist && echo -n "7, "
156
[ -e /etc/dansguardian/lists/bannedsitelist.default ] && mv /etc/dansguardian/lists/bannedsitelist.default /etc/dansguardian/lists/bannedsitelist && echo -n "8"
99
	[ -e /etc/dansguardian/lists/bannedsitelist.default ] && mv /etc/dansguardian/lists/bannedsitelist.default /etc/dansguardian/lists/bannedsitelist && echo -n "8"
157
sleep 1
100
}
158
 
101
 
-
 
102
antivirus ()
-
 
103
{
159
echo -en "\n- antivirus (5) : "
104
	echo -en "(5) : "
160
if [ -e /etc/init.d/havp ]
105
	if [ -e /etc/init.d/havp ]
161
then
106
	then
162
	[ -e /etc/havp/havp.config.default ] && mv /etc/havp/havp.config.default /etc/havp/havp.config && echo -n "1, "
107
		[ -e /etc/havp/havp.config.default ] && mv /etc/havp/havp.config.default /etc/havp/havp.config && echo -n "1, "
163
	userdel -r havp 2>/dev/null && echo -n "2, "
108
		userdel -r havp 2>/dev/null && echo -n "2, "
164
	[ -e /etc/init.d/havp.default ] && mv /etc/init.d/havp.default /etc/init.d/havp && echo -n "3, "
109
		[ -e /etc/init.d/havp.default ] && mv /etc/init.d/havp.default /etc/init.d/havp && echo -n "3, "
165
	[ -e /lib/systemd/system/havp.service.default ] && mv /lib/systemd/system/havp.service.default /lib/systemd/system/havp.service && echo -n "4, "
110
		[ -e /lib/systemd/system/havp.service.default ] && mv /lib/systemd/system/havp.service.default /lib/systemd/system/havp.service && echo -n "4, "
166
	[ -e /etc/freshclam.conf.default ] && mv /etc/freshclam.conf.default /etc/freshclam.conf && echo -n "5"
111
		[ -e /etc/freshclam.conf.default ] && mv /etc/freshclam.conf.default /etc/freshclam.conf && echo -n "5"
167
else	echo -n "uninstalled"
112
	else	echo -n "already uninstalled"
168
fi
113
	fi
169
sleep 1
114
}
170
 
115
 
-
 
116
tinyproxy ()
-
 
117
{
171
echo -en "\n- tinyproxy (2) : "
118
	echo -en "(2) : "
172
if [ -e /etc/init.d/tinyproxy ]
119
	if [ -e /etc/init.d/tinyproxy ]
173
then
120
	then
174
	[ -e /etc/tinyproxy/tinyproxy.conf.default ] && mv /etc/tinyproxy/tinyproxy.conf.default /etc/tinyproxy/tinyproxy.conf && echo -n "1, "
121
		[ -e /etc/tinyproxy/tinyproxy.conf.default ] && mv /etc/tinyproxy/tinyproxy.conf.default /etc/tinyproxy/tinyproxy.conf && echo -n "1, "
175
	userdel -r tinyproxy 2>/dev/null && echo -n "2"
122
		userdel -r tinyproxy 2>/dev/null && echo -n "2"
176
else	echo -n "uninstalled"
123
	else	echo -n "already uninstalled"
177
fi
124
	fi
178
sleep 1
125
}
179
 
126
 
-
 
127
ulogd ()
-
 
128
{
180
echo -en "\n- ulogd (6) : "
129
	echo -en "(6) : "
181
i=0
130
	i=0
182
for log_type in traceability ssh ext-access
131
	for log_type in traceability ssh ext-access
183
do
132
	do
184
	i=`expr $i + 1`
133
		i=`expr $i + 1`
185
	[ -e /etc/ulogd-$log_type.conf ] && rm -f /etc/ulogd-$log_type.conf && echo -n "$i, "
134
		[ -e /etc/ulogd-$log_type.conf ] && rm -f /etc/ulogd-$log_type.conf && echo -n "$i, "
186
	i=`expr $i + 1`
135
		i=`expr $i + 1`
187
	[ -e /lib/systemd/system/ulogd-$log_type.service ] && rm -f /lib/systemd/system/ulogd-$log_type.service && echo -n "$i, "
136
		[ -e /lib/systemd/system/ulogd-$log_type.service ] && rm -f /lib/systemd/system/ulogd-$log_type.service && echo -n "$i, "
188
done
137
	done
189
sleep 1
138
}
190
 
139
 
-
 
140
nfsen ()
-
 
141
{
191
echo -en "\n- nfsen (1) : "
142
	echo -en "(1) : "
192
[ -e /lib/systemd/system/nfsen.service ] && rm -f /lib/systemd/system/nfsen.service && echo -n "1"
143
	[ -e /lib/systemd/system/nfsen.service ] && rm -f /lib/systemd/system/nfsen.service && echo -n "1"
193
sleep 1
144
}
194
 
145
 
-
 
146
vnstat ()
-
 
147
{
195
echo -en "\n- vnstat (1) : "
148
	echo -en "(1) : "
196
[ -e /etc/vnstat.conf.default ] && mv /etc/vnstat.conf.default /etc/vnstat.conf && echo -n "1"
149
	[ -e /etc/vnstat.conf.default ] && mv /etc/vnstat.conf.default /etc/vnstat.conf && echo -n "1"
197
sleep 1
150
}
198
 
151
 
-
 
152
dnsmasq ()
-
 
153
{
199
echo -en "\n- dnsmasq (6 if update ; 8 if uninstall) : "
154
	echo -en "(6 if update ; 8 if uninstall) : "
200
i=0
155
	i=0
201
for list in blacklist whitelist blackhole
156
	for list in blacklist whitelist blackhole
202
do
157
	do
203
	i=`expr $i + 1`
158
		i=`expr $i + 1`
204
	[ -e /etc/dnsmasq-$list.conf ] && rm /etc/dnsmasq-$list.conf && echo -n "$i, "
159
		[ -e /etc/dnsmasq-$list.conf ] && rm /etc/dnsmasq-$list.conf && echo -n "$i, "
Line 211... Line 166...
211
	then
166
		then
212
		[ -e /etc/dnsmasq.conf.default ] && mv /etc/dnsmasq.conf.default /etc/dnsmasq.conf && echo -n "7, "
167
			[ -e /etc/dnsmasq.conf.default ] && mv /etc/dnsmasq.conf.default /etc/dnsmasq.conf && echo -n "7, "
213
		[ -e /lib/systemd/system/dnsmasq.service.default ] && mv /lib/systemd/system/dnsmasq.service.default /lib/systemd/system/dnsmasq.service && echo -n "8"
168
			[ -e /lib/systemd/system/dnsmasq.service.default ] && mv /lib/systemd/system/dnsmasq.service.default /lib/systemd/system/dnsmasq.service && echo -n "8"
214
	fi
169
		fi
215
fi
170
	fi
-
 
171
}
-
 
172
 
216
sleep 1
173
cron ()
-
 
174
{
-
 
175
	echo -en "(11) : "
-
 
176
	i=1
-
 
177
	for cron in `ls /etc/cron.d/alcasar-* 2>/dev/null`
-
 
178
	do
-
 
179
		rm $cron && echo -n "$i, "
-
 
180
		i=`expr $i + 1`
-
 
181
	done
-
 
182
	[ -e /etc/crontab.default ] && mv /etc/crontab.default /etc/crontab && echo -n "10, "
-
 
183
	[ -e /etc/anacrontab.default ] && mv /etc/anacrontab.default /etc/anacrontab && echo -n "11"
-
 
184
}
217
 
185
 
-
 
186
fail2ban ()
-
 
187
{
218
echo -en "\n- fail2ban (8) : "
188
	echo -en "(8) : "
219
[ -e /etc/fail2ban/fail2ban.conf.default ] && mv /etc/fail2ban/fail2ban.conf.default /etc/fail2ban/fail2ban.conf && echo -n "1, "
189
	[ -e /etc/fail2ban/fail2ban.conf.default ] && mv /etc/fail2ban/fail2ban.conf.default /etc/fail2ban/fail2ban.conf && echo -n "1, "
220
[ -e /etc/fail2ban/jail.conf.default ] && mv /etc/fail2ban/jail.conf.default /etc/fail2ban/jail.conf && echo -n "2, "
190
	[ -e /etc/fail2ban/jail.conf.default ] && mv /etc/fail2ban/jail.conf.default /etc/fail2ban/jail.conf && echo -n "2, "
221
[ -e /etc/fail2ban/action.d/iptables-allports.conf.default ] && mv /etc/fail2ban/action.d/iptables-allports.conf.default /etc/fail2ban/action.d/iptables-allports.conf && echo -n "3, "
191
	[ -e /etc/fail2ban/action.d/iptables-allports.conf.default ] && mv /etc/fail2ban/action.d/iptables-allports.conf.default /etc/fail2ban/action.d/iptables-allports.conf && echo -n "3, "
222
i=3
192
	i=3
223
for filter in `ls /etc/fail2ban/filter.d/alcasar_*`
193
	for filter in `ls /etc/fail2ban/filter.d/alcasar_* 2>/dev/null`
224
do
194
	do
225
	i=`expr $i + 1`
195
		i=`expr $i + 1`
226
	rm $filter && echo -n "$i, "
196
		rm $filter && echo -n "$i, "
227
done
197
	done
228
[ -e /lib/systemd/system/fail2ban.service.default ] && mv /lib/systemd/system/fail2ban.service.default /lib/systemd/system/fail2ban.service && echo -n "8"
198
	[ -e /lib/systemd/system/fail2ban.service.default ] && mv /lib/systemd/system/fail2ban.service.default /lib/systemd/system/fail2ban.service && echo -n "8"
229
sleep 1
199
}
230
 
200
 
231
echo -en "\n- cron (11) : "
-
 
232
i=1
-
 
233
for cron in `ls /etc/cron.d/alcasar-*`
-
 
234
do
-
 
235
	rm $cron && echo -n "$i, "
-
 
236
	i=`expr $i + 1`
201
gammu_smsd ()
237
done
-
 
238
[ -e /etc/crontab.default ] && mv /etc/crontab.default /etc/crontab && echo -n "10, "
-
 
239
[ -e /etc/anacrontab.default ] && mv /etc/anacrontab.default /etc/anacrontab && echo -n "11"
-
 
240
sleep 1
-
 
241
 
202
{
242
echo -en "\n- gammu-smsd (3) : "
203
	echo -en "(3) : "
243
[ -e /etc/gammu_smsd_conf ] && rm -f /etc/gammu_smsd_conf && echo -n "1, "
204
	[ -e /etc/gammu_smsd_conf ] && rm -f /etc/gammu_smsd_conf && echo -n "1, "
244
[ -e /lib/udev/rules.d/66-huawei.rules ] && rm -f /lib/udev/rules.d/66-huawei.rules && echo -n "2, "
205
	[ -e /lib/udev/rules.d/66-huawei.rules ] && rm -f /lib/udev/rules.d/66-huawei.rules && echo -n "2, "
245
[ -e /var/log/gammu-smsd ] && rm -rf /var/log/gammu-smsd && echo -n "3"
206
	[ -e /var/log/gammu-smsd ] && rm -rf /var/log/gammu-smsd && echo -n "3"
246
sleep 1
207
}
247
 
208
 
-
 
209
msec ()
-
 
210
{
248
echo -en "\n- msec (2) : "
211
	echo -en "(2) : "
249
if [ -e /etc/security/msec/security.conf ]
212
	if [ -e /etc/security/msec/security.conf ]
250
then
213
	then
251
	[ -e /etc/security/msec/security.conf.default ] && mv /etc/security/msec/security.conf.default /etc/security/msec/security.conf && echo -n "1, "
214
		[ -e /etc/security/msec/security.conf.default ] && mv /etc/security/msec/security.conf.default /etc/security/msec/security.conf && echo -n "1, "
252
	[ -e /etc/security/msec/perm.local ] && rm -f /etc/security/msec/perm.local && echo -n "2"
215
		[ -e /etc/security/msec/perm.local ] && rm -f /etc/security/msec/perm.local && echo -n "2"
253
else	echo -n "uninstalled"
216
	else	echo -n "uninstalled"
254
fi
217
	fi
255
sleep 1
218
}
256
 
219
 
-
 
220
letsencrypt ()
-
 
221
{
257
echo -en "\n- letsencrypt-client (2) : "
222
	echo -en "(3) : "
258
[ -e /usr/local/etc/letsencrypt ] && rm -rf /usr/local/etc/letsencrypt && echo -n "1, "
223
	[ -e /usr/local/etc/letsencrypt ] && rm -rf /usr/local/etc/letsencrypt && echo -n "1, "
259
[ -e /opt/acme.sh ] && /opt/acme.sh/acme.sh --uninstall --nocron 1>/dev/null && echo -n "2"
224
	[ -e /opt/acme.sh/acme.sh ] && /opt/acme.sh/acme.sh --uninstall --nocron 1>/dev/null && echo -n "2, "
-
 
225
	[ -e /opt/acme.sh ] && rm -rf /opt/acme.sh && echo -n "3"
-
 
226
}
-
 
227
 
-
 
228
post_install ()
-
 
229
{
-
 
230
echo -en "(7) : "
-
 
231
	[ -e /etc/mageia-release.default ] && mv -f /etc/mageia-release.default /etc/mageia-release && echo -n "1, "
-
 
232
	[ -e /etc/ssh/alcasar-banner-ssh ] && rm -f /etc/ssh/alcasar-banner-ssh && echo -n "2, "
-
 
233
	[ -e /etc/ssh/sshd_config.default ] && mv -f /etc/ssh/sshd_config.default /etc/ssh/sshd_config && echo -n "3, "
-
 
234
	[ -e /etc/bashrc.default ] && mv -f /etc/bashrc.default /etc/bashrc && echo -n "4, "
-
 
235
	[ -e /etc/sudoers.default ] && mv -f /etc/sudoers.default /etc/sudoers && echo -n "5, "
-
 
236
	[ -e /lib/systemd/system/alcasar-load_balancing.service ] && rm -f /lib/systemd/system/alcasar-load_balancing.service && echo -n "6, "
-
 
237
	[ -e /etc/default/grub.default ] && mv -f /etc/default/grub.default /etc/default/grub && echo -n "7"
-
 
238
}
-
 
239
 
-
 
240
 
-
 
241
usage="Usage: alcasar-uninstall.sh {-update or --update} | {-full or --full}"
-
 
242
 
-
 
243
nb_args=$#
-
 
244
args=$1
-
 
245
if [ $nb_args -eq 0 ]
-
 
246
then
-
 
247
	nb_args=1
-
 
248
	args="-h"
-
 
249
fi
-
 
250
case $args in
-
 
251
	-\? | -h* | --h*)
-
 
252
		echo "$usage"
-
 
253
		exit 0
-
 
254
		;;
-
 
255
	--update | -update)
-
 
256
		mode="update"
-
 
257
		;;
-
 
258
	--full | -full)
-
 
259
		mode="full"
-
 
260
		;;
-
 
261
	*)
-
 
262
		echo "Argument inconnu :$1";
-
 
263
		echo "$usage"
-
 
264
		exit 1
-
 
265
		;;
-
 
266
esac
-
 
267
clear
-
 
268
if [ $mode == "full" ]
-
 
269
then
-
 
270
	echo "----------------------------------------------------------------------------"
-
 
271
	echo "**                     Uninstall/Désinstallation d'ALCASAR		**"
-
 
272
	echo "----------------------------------------------------------------------------"
-
 
273
	services="alcasar-load_balancing vnstat havp freshclam ntpd httpd radiusd mysqld dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole tinyproxy nfsen fail2ban iptables ulogd-ext-access ulogd-ssh ulogd-traceability dansguardian dnsmasq sshd chilli"
-
 
274
	/usr/local/bin/alcasar-logout.sh all # logout everybody
-
 
275
else
-
 
276
	echo "--------------------------------------------------------------------------"
-
 
277
	echo "**                     update/mise à jour d'ALCASAR			**"
-
 
278
	echo "--------------------------------------------------------------------------"
-
 
279
	# dnsmasq & sshd should stay on to allow remote update
-
 
280
	services="alcasar-load_balancing vnstat havp freshclam ntpd httpd radiusd mysqld dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole tinyproxy nfsen fail2ban ulogd-ext-access ulogd-ssh ulogd-traceability dansguardian chilli"
-
 
281
	/usr/local/bin/alcasar-bypass.sh -on # to allow remote update
-
 
282
fi
-
 
283
echo "Stopping service : "
-
 
284
/usr/local/bin/alcasar-sms.sh --stop
-
 
285
for i in $services
-
 
286
do
-
 
287
	if [ -e /lib/systemd/system/$i.service ]
-
 
288
	then
-
 
289
		/usr/bin/systemctl disable $i.service
-
 
290
		/usr/bin/systemctl stop $i.service 1>/dev/null
260
sleep 1
291
		sleep 1
-
 
292
	else
-
 
293
		echo "The service $i.service doesn't exist !"
-
 
294
	fi
-
 
295
done
-
 
296
echo "Check the service clearing"
-
 
297
for i in $services
-
 
298
do
-
 
299
	if [ `systemctl is-active $i.service` == "active" ]
-
 
300
	then
-
 
301
		echo "The service '$i' need to be killed"
-
 
302
		/usr/bin/systemctl stop $i.service
-
 
303
		killall $i
-
 
304
	fi
-
 
305
done
-
 
306
if [ $mode == "update" ] # reload sshd in case of remote update
-
 
307
then
-
 
308
	/usr/bin/systemctl reload sshd
-
 
309
fi
-
 
310
echo "Reset ALCASAR main functions : "
-
 
311
for func in init ACC CA time_server init_db freeradius chilli dansguardian antivirus tinyproxy ulogd nfsen vnstat dnsmasq cron fail2ban gammu_smsd msec letsencrypt post_install
-
 
312
do
-
 
313
	echo -en "\n- $func "
-
 
314
	$func
-
 
315
	sleep 1
-
 
316
# echo -en " *** 'debug' : end of function $func - Hit enter ***"; read a
-
 
317
done
261
 
318
 
262
if [ $mode == "full" ]
319
if [ $mode == "full" ]
263
then
320
then
264
	echo -en "\n- network(9) : "
321
	echo -en "\n- network(9) : "
265
	hostnamectl set-hostname localhost.localdomain
322
	hostnamectl set-hostname localhost.localdomain
266
	CONF_FILE="/usr/local/etc/alcasar.conf"
323
	chmod a-x /etc/sysconfig/network-scripts/default-*
267
	EXTIF=`grep ^EXTIF= $CONF_FILE|cut -d"=" -f2`		# EXTernal InterFace
-
 
268
	INTIF=`grep ^INTIF= $CONF_FILE|cut -d"=" -f2`		# INTernal InterFace
-
 
269
	i=0
324
	i=0
270
	for nic in $EXTIF $INTIF
325
	for nic in `ls /etc/sysconfig/network-scripts/default-*|cut -d'-' -f4`
271
	do
326
	do
272
		i=`expr $i + 1`
327
		i=`expr $i + 1`
273
		/sbin/ifdown $nic
328
		/sbin/ifdown $nic
274
		[ -e /etc/sysconfig/network-scripts/default-ifcfg-$nic ] && mv -f /etc/sysconfig/network-scripts/default-ifcfg-$nic /etc/sysconfig/network-scripts/ifcfg-$nic && echo -n "$i, "
329
		[ -e /etc/sysconfig/network-scripts/default-ifcfg-$nic ] && mv -f /etc/sysconfig/network-scripts/default-ifcfg-$nic /etc/sysconfig/network-scripts/ifcfg-$nic && echo -n "$i ($nic), "
275
	done
330
	done
276
	[ -e /etc/sysconfig/network.default ] && mv -f /etc/sysconfig/network.default /etc/sysconfig/network && echo -n "3, "
331
	[ -e /etc/sysconfig/network.default ] && mv -f /etc/sysconfig/network.default /etc/sysconfig/network && echo -n "3, "
277
	[ -e /etc/hosts.default ] && mv -f /etc/hosts.default /etc/hosts && echo -n "4, "
332
	[ -e /etc/hosts.default ] && mv -f /etc/hosts.default /etc/hosts && echo -n "4, "
278
	[ -e /etc/hosts.allow.default ] && mv -f /etc/hosts.allow.default /etc/hosts.allow && echo -n "5, "
333
	[ -e /etc/hosts.allow.default ] && mv -f /etc/hosts.allow.default /etc/hosts.allow && echo -n "5, "
279
	[ -e /etc/hosts.deny.default ] && mv -f /etc/hosts.deny.default /etc/hosts.deny && echo -n "6, "
334
	[ -e /etc/hosts.deny.default ] && mv -f /etc/hosts.deny.default /etc/hosts.deny && echo -n "6, "
Line 282... Line 337...
282
	[ -e /usr/libexec/iptables.init.default ] && mv -f /usr/libexec/iptables.init.default /usr/libexec/iptables.init && echo -n "9"
337
	[ -e /usr/libexec/iptables.init.default ] && mv -f /usr/libexec/iptables.init.default /usr/libexec/iptables.init && echo -n "9"
283
	/usr/bin/systemctl restart network
338
	/usr/bin/systemctl restart network
284
	sleep 1
339
	sleep 1
285
fi
340
fi
286
 
341
 
287
#post_install
-
 
288
echo -en "\n- post_install (7) : "
-
 
289
[ -e /etc/mageia-release.default ] && mv -f /etc/mageia-release.default /etc/mageia-release && echo -n "1, "
-
 
290
[ -e /etc/ssh/alcasar-banner-ssh ] && rm -f /etc/ssh/alcasar-banner-ssh && echo -n "2, "
-
 
291
[ -e /etc/ssh/sshd_config.default ] && mv -f /etc/ssh/sshd_config.default /etc/ssh/sshd_config && echo -n "3, "
-
 
292
[ -e /etc/bashrc.default ] && mv -f /etc/bashrc.default /etc/bashrc && echo -n "4, "
-
 
293
[ -e /etc/sudoers.default ] && mv -f /etc/sudoers.default /etc/sudoers && echo -n "5, "
-
 
294
[ -e /lib/systemd/system/alcasar-load_balancing.service ] && rm -f /lib/systemd/system/alcasar-load_balancing.service && echo -n "6, "
-
 
295
[ -e /etc/default/grub.default ] && mv -f /etc/default/grub.default /etc/default/grub && echo -n "7"
-
 
296
sleep 1
-
 
297
 
-
 
298
# Cleaning (remove all "old" alcasar scripts)
342
# Cleaning (remove all "old" alcasar scripts)
299
echo -en "\n- End of cleaning ...\n"
343
echo -en "\n- End of cleaning ...\n"
300
for rm_fic in /usr/local/bin /usr/local/etc /usr/local/sbin
344
for rm_fic in /usr/local/bin /usr/local/etc /usr/local/sbin
301
do
345
do
302
	rm -rf $rm_fic/alcasar*
346
	rm -rf $rm_fic/alcasar*
Line 319... Line 363...
319
		i=`expr $i + 1`
363
		i=`expr $i + 1`
320
		sleep 1
364
		sleep 1
321
	done
365
	done
322
fi
366
fi
323
echo
367
echo
-
 
368