commit af4ae883db63162f3f93f5728dccb6e275e6fa2d Author: beu Date: Mon Mar 12 16:20:29 2018 +0100 premier commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..5623e7b --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +# zbx-pf_gateway + +### Introduction + +Ce projet permet de superviser les passerelles pfSense sur zabbix avec peu d'efforts + +### HowTO + + - copier le **bin/pf-gw** dans le dossier **/usr/local/bin/** de pfSense et le rendre executable. + - copier dans les options avancées de la WebUI le contenu du fichier **conf/userparameters** + - Importer dans zabbix le template situé dans template/pf_gateway.xml + diff --git a/bin/pf-gw b/bin/pf-gw new file mode 100644 index 0000000..85fab74 --- /dev/null +++ b/bin/pf-gw @@ -0,0 +1,20 @@ +#!/bin/sh + +if [ "$1" == "discovery" ]; then + sockets=`ls /var/run/dpinger_*.sock` + result=`echo -n '{"data": ['` + for i in $sockets ; do + data=`echo $i | cut -c 18- | cut -d "~" -f 1` + result=`echo -n $result'{"{#GWNAME}": "'` + result=`echo -n $result"$data"` + result=`echo -n $result'"},'` + done + result=`echo $result | sed 's/.$//'` + result=`echo -n $result']}'` +elif [ "$1" == "latency" ]; then + result=`cat /var/run/dpinger_${2}~*.sock 2> /dev/null | awk '{print $2 / 1000}' | bc | sed 's/^\./0./'` +elif [ "$1" == "packetloss" ]; then + result=`cat /var/run/dpinger_${2}~*.sock 2> /dev/null | awk '{print $4}'` +fi + +echo $result diff --git a/conf/userparameters.conf b/conf/userparameters.conf new file mode 100644 index 0000000..3cf67e9 --- /dev/null +++ b/conf/userparameters.conf @@ -0,0 +1,3 @@ +UserParameter=pf-gw-latency[*],/usr/local/bin/pf-gw latency $1 +UserParameter=pf-gw-pl[*],/usr/local/bin/pf-gw packetloss $1 +UserParameter=pf-gw-discovery,/usr/local/bin/pf-gw discovery diff --git a/template/pf_gateway.xml b/template/pf_gateway.xml new file mode 100644 index 0000000..529527e --- /dev/null +++ b/template/pf_gateway.xml @@ -0,0 +1,228 @@ + + + 3.4 + 2018-03-12T15:15:08Z + + + Templates/Network Devices + + + + + +