fff-scripte/monitoring.sh

133 lines
2.7 KiB
Bash
Raw Normal View History

2018-03-05 20:28:53 +01:00
#!/bin/bash
#empfaenger="+491608271789"
#function send_message () {
# #echo "Message: $1"
# for telefon in $empfaenger
# do
# echo -e "$1" | signal-cli -u +4915223927526 send $telefon
## echo "echo -e \"$1\" \| signal-cli -u +4915223927526 send $telefon"
## echo "signal-cli -u +4915223927526 send -m \"$1\" $telefon"
# done
#}
function send_message() {
PUSHOVERMESSAGE="$1"
2018-03-05 20:28:53 +01:00
curl \
`#--silent# ` \
`#--insecure --proxy "$CURLPROXY" ` \
--form-string "token=a5ju5wf34goaqr4juzpeuf2v4iuf4b" \
--form-string "user=u44drxvefhqrehxid8f131d9v5nit4" \
--form-string "message=$PUSHOVERMESSAGE" \
--form-string "title=Gateway Status" \
--form-string "priority=" \
--form-string "device=" \
https://api.pushover.net/1/messages.json
2018-03-05 20:28:53 +01:00
}
fehlermeldung="$(hostname)"
2018-03-05 20:28:53 +01:00
2018-03-05 22:17:06 +01:00
########################################################
# ping-Tests
2018-03-05 20:28:53 +01:00
#Mullvad test
if ! ping -c 4 -I mullvad 8.8.8.8 > /dev/null 2>&1
then
2018-03-05 21:09:12 +01:00
echo "Mullvad-Tunnel broken"
2018-03-05 20:28:53 +01:00
fehler=1
fehlermeldung="$fehlermeldung\nMullvad-Tunnel broken"
2018-03-05 21:09:12 +01:00
else
echo "OK"
2018-03-05 20:28:53 +01:00
fi
#fff-has test
if ! ping -c 4 -I fff-has 10.50.252.158 > /dev/null 2>&1
then
2018-03-05 21:09:12 +01:00
echo "GRE fff-has broken"
2018-03-05 20:28:53 +01:00
fehler=1
fehlermeldung="$fehlermeldung\nGRE-Tunnel: fff-has broken"
2018-03-05 21:09:12 +01:00
else
echo "OK"
2018-03-05 20:28:53 +01:00
fi
if ! ping -c 4 -I fff-has2 10.50.252.160 > /dev/null 2>&1
then
2018-03-05 21:09:12 +01:00
echo "GRE fff-has2 broken"
2018-03-05 20:28:53 +01:00
fehler=1
fehlermeldung="$fehlermeldung\nGRE-Tunnel: fff-has2 broken"
2018-03-05 21:09:12 +01:00
else
echo "OK"
2018-03-05 20:28:53 +01:00
fi
if ! ping -c 4 -I fff-wue1 10.50.252.164 > /dev/null 2>&1
then
2018-03-05 21:09:12 +01:00
echo "GRE fff-wue1 broken"
2018-03-05 20:28:53 +01:00
fehler=1
fehlermeldung="$fehlermeldung\nGRE-Tunnel: fff-wue1 broken"
else
echo "OK"
fi
2018-03-05 22:17:06 +01:00
########################################################
# batctl Version test
if [ ! "$(batctl -v | awk '{print $2}')" = "2013.4.0" ]
then
echo "batctl: Version falsch"
fehler=1
fehlermeldung="$fehlermeldung\nbatctl: Version falsch"
2018-03-05 21:09:12 +01:00
else
echo "OK"
2018-03-05 20:28:53 +01:00
fi
2018-03-05 22:15:05 +01:00
########################################################
# Daemons test
if systemctl is-failed isc-dhcp-server.service
then
echo "dhcp-Server läuft nicht"
fehler=1
fehlermeldung="$fehlermeldung\nisc-dhcp-server: not active"
else
echo "OK"
fi
2018-03-05 20:28:53 +01:00
2018-03-05 22:19:29 +01:00
if systemctl is-failed bind9.service
then
echo "bind9 läuft nicht"
fehler=1
fehlermeldung="$fehlermeldung\nbind9: not active"
else
echo "OK"
fi
2018-03-05 22:20:30 +01:00
if systemctl is-failed apache2.service
then
echo "apache2 läuft nicht"
fehler=1
fehlermeldung="$fehlermeldung\napache2: not active"
else
echo "OK"
fi
2018-03-05 22:24:23 +01:00
if systemctl is-failed openvpn.service
then
echo "openvpn läuft nicht"
fehler=1
fehlermeldung="$fehlermeldung\nopenvpn: not active"
else
echo "OK"
fi
2018-03-05 22:17:06 +01:00
########################################################
# Auswertung und Benachrichtigung
2018-03-05 20:28:53 +01:00
if [ "$fehler" = "1" ]
then
2018-03-05 21:31:02 +01:00
send_message "$(echo -e $fehlermeldung)"
2018-03-05 20:28:53 +01:00
fi