Subversion Repositories ALCASAR

Rev

Rev 2470 | Rev 2494 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log

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