Subversion Repositories ALCASAR

Rev

Rev 2465 | Rev 2467 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

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