Subversion Repositories ALCASAR

Rev

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

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