Rev 1574 | Rev 1791 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log
Rev | Author | Line No. | Line |
---|---|---|---|
807 | franck | 1 | #!/bin/sh |
825 | franck | 2 | # $Id: alcasar-daemon.sh 1596 2015-03-16 23:07:55Z richard $ |
807 | franck | 3 | |
824 | franck | 4 | # alcasar-daemon.sh |
1474 | richard | 5 | # by Franck BOUIJOUX & Rexy |
807 | franck | 6 | # This script is distributed under the Gnu General Public License (GPL) |
7 | # Watchdog of Services |
||
8 | # See /etc/cron.d/alcasar-daemon-watchdog for config the time |
||
9 | |||
824 | franck | 10 | conf_file="/usr/local/etc/alcasar.conf" |
11 | SSH=`grep SSH= $conf_file|cut -d"=" -f2` # sshd active (on/off) |
||
12 | SSH=${SSH:=off} |
||
1474 | richard | 13 | SERVICES="mysqld httpd ntpd iptables dnsmasq dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole radiusd nfsen dansguardian freshclam ulogd-ssh ulogd-traceability ulogd-ext-access chilli fail2ban sshd" |
1596 | richard | 14 | nb_available_srv=`echo $SERVICES|wc -w` |
807 | franck | 15 | |
824 | franck | 16 | function ServiceTest () { |
1596 | richard | 17 | CMD=`/usr/bin/systemctl is-active $s` |
18 | if [ $CMD != "active" ] |
||
19 | then |
||
1476 | richard | 20 | logger -i "!! $s is inactive. Activation attempt" |
1596 | richard | 21 | echo "the $s service is disabled! trying to start it..." |
22 | /usr/bin/systemctl start $s.service |
||
23 | else |
||
24 | nb_srv=$((nb_srv+1)) |
||
25 | fi |
||
824 | franck | 26 | } |
807 | franck | 27 | |
1596 | richard | 28 | nb_srv=0 |
1474 | richard | 29 | for s in $SERVICES |
807 | franck | 30 | do |
824 | franck | 31 | if [ $s != "sshd" ] |
807 | franck | 32 | then |
1596 | richard | 33 | ServiceTest |
824 | franck | 34 | else |
1596 | richard | 35 | { |
36 | if [ $SSH == "ON" ] || [ $SSH == "on" ] || [ $SSH == "On" ] |
||
37 | then |
||
38 | ServiceTest |
||
39 | else |
||
40 | nb_available_srv=$((nb_available_srv-1)) |
||
41 | fi |
||
42 | } |
||
807 | franck | 43 | fi |
44 | done |
||
1596 | richard | 45 | if [ $nb_available_srv -ne $nb_srv ] |
46 | then |
||
47 | echo "restart this script to know if all is ok" |
||
48 | else |
||
49 | echo "$nb_srv services are started. All is ok" |
||
50 | fi |