Mit Zabbix werden die Gateways überwacht.
Spezielle Freifunk-Meßwerte sind:
Damit der Server auf den Agenten zugreifen kann, muß die zugehörige Konfiguration wie folgt eingestellt werden
[...] server=10.137.0.12 Hostname=<gateway> UserParameter=exitvpn.state,sudo /usr/local/share/zabbix/exitvpn.state UserParameter=dhcpd.leases, /usr/local/share/zabbix/dhcpd.leases # ServerActive=127.0.0.1
zabbix ALL=NOPASSWD: /usr/local/share/zabbix/exitvpn.state
Insbesondere wird der Zustand des ExitVPNs überwacht.
#!/bin/bash # # Check if ExitVPN is working # 1 - OK # 0 - Failed # VPNCONF=$(grep -e "^AUTOSTART=" /etc/default/openvpn) INTERFACE=$(sed -e 's/^"//' -e 's/"$//' <<< ${VPNCONF#*=}) NATIF=$(iptables -t nat -vnL | grep MASQUERADE | awk '{$1=$1};1' | cut -d' ' -f 7) TESTIP=81.7.16.37 # gate01 if [ ! `pgrep openvpn` ]; then echo 0 exit 0 fi if [ ! -d "/sys/class/net/$INTERFACE" ]; then echo 0 exit 0 fi if ! test "$NATIF" == "$INTERFACE" ; then echo 0 exit 0 fi ping -q -I $INTERFACE $TESTIP -c 3 -i 1 -W 5 >/dev/null 2>&1 if ! test $? -eq 0; then echo 0 exit 0 fi echo 1 exit 0
Es wird das Paket der Distribution verwendet: zabbix-server-mysql
.
mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'SECRETPASSWORD'; zcat /usr/share/zabbix-server-mysql/{schema,images,data}.sql.gz \ | mysql -uzabbix -pSECRETPASSWORD zabbix