Start working on pfSense Plus releases

This commit is contained in:
Riccardo Bicelli 2023-02-26 13:11:06 +01:00
parent 74fe64349c
commit 8937d88d7c
7 changed files with 159 additions and 216 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
*.backup
*.orig

View File

@ -43,12 +43,11 @@ First copy the file pfsense_zbx.php to your pfsense box (e.g. to /root/scripts).
From **Diagnostics/Command Prompt** input this one-liner:
```bash
curl --create-dirs -o /root/scripts/pfsense_zbx.php https://raw.githubusercontent.com/rbicelli/pfsense-zabbix-template/master/pfsense_zbx.php
curl --create-dirs -o /root/scripts/pfsense_zbx.php https://raw.githubusercontent.com/rbicelli/pfsense-zabbix-template/master/pfsense_zbx_legacy.php
```
Then install package "Zabbix Agent 4" on your pfSense Box
Then install package "Zabbix Agent 5" (or "Zabbix Agent 4") on your pfSense Box
Then install package "Zabbix Agent 5" (or "Zabbix Agent 6") on your pfSense Box
In Advanced Features-> User Parameters
@ -111,6 +110,7 @@ Speedtest template creates a cron job and check for entry everytime Zabbix reque
/url/local/bin/php /root/scripts/pfsense_zbx.php cron_cleanup
```
## Credits
[Keenton Zabbix Template](https://github.com/keentonsas/zabbix-template-pfsense) for Zabbix Agent freeBSD part.

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
<version>5.0</version>
<date>2021-11-09T21:44:28Z</date>
<date>2021-07-12T10:35:24Z</date>
<groups>
<group>
<name>Templates/Network Devices</name>
@ -21,9 +21,6 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
</group>
</groups>
<applications>
<application>
<name>Certificate Manager</name>
</application>
<application>
<name>CPU</name>
</application>
@ -40,7 +37,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Memory</name>
</application>
<application>
<name>Network Interfaces</name>
<name>Network interfaces</name>
</application>
<application>
<name>Network Limits</name>
@ -69,7 +66,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Maximum number of opened files</name>
<type>ZABBIX_ACTIVE</type>
<key>kernel.maxfiles</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<description>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</description>
<applications>
<application>
@ -88,7 +86,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Maximum number of processes</name>
<type>ZABBIX_ACTIVE</type>
<key>kernel.maxproc</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<description>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</description>
<applications>
<application>
@ -107,6 +106,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Used memory (calc)</name>
<type>CALCULATED</type>
<key>kt.mem.used</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<params>last(vm.memory.size[total]) - last(vm.memory.size[available])</params>
<applications>
@ -135,6 +136,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>MBUF Cache</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.cache</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
@ -145,6 +148,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>MBUF Current</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.current</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
@ -155,7 +160,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>MBUF Max</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.max</key>
<delay>10m</delay>
<delay>600</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
@ -166,6 +172,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>MBUF Total Used (percent)</name>
<type>CALCULATED</type>
<key>pfsense.mbuf.ptotal</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<params>((last(pfsense.mbuf.current) + last(pfsense.mbuf.cache)) * 100) / last(pfsense.mbuf.max)</params>
@ -191,6 +199,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>States Table Current</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.states.current</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
@ -201,7 +211,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>States Table Max</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.states.max</key>
<delay>10m</delay>
<delay>600</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
@ -212,6 +223,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>States Table Current (percent)</name>
<type>CALCULATED</type>
<key>pfsense.states.pused</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<params>(last(pfsense.states.current) * 100) / last(pfsense.states.max)</params>
@ -250,7 +263,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<triggers>
<trigger>
<expression>{last()}&gt;2</expression>
<name>CARP Problems on {HOST.NAME}</name>
<name>CARP Problems on {HOST.NAME}</name>
<priority>HIGH</priority>
<description>CARP Problems</description>
</trigger>
@ -263,92 +276,11 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
</trigger>
</triggers>
</item>
<item>
<name>Certificates Manager: latest &quot;validFrom&quot;</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[cert_date,validFrom.max]</key>
<units>unixtime</units>
<description>This item will return will return the latest date &quot;validFrom&quot; from all the certificates (including CA). This is used to find new/renewed certificates.</description>
<applications>
<application>
<name>Certificate Manager</name>
</application>
</applications>
<preprocessing>
<step>
<type>DISCARD_UNCHANGED_HEARTBEAT</type>
<params>1d</params>
</step>
</preprocessing>
<triggers>
<trigger>
<expression>({now()}-{last()})&lt;1d</expression>
<name>One or more certificates have been renewed in the past 24h</name>
<opdata>Latest &quot;Valid From&quot;: {ITEM.LASTVALUE1}</opdata>
<priority>INFO</priority>
<manual_close>YES</manual_close>
</trigger>
</triggers>
</item>
<item>
<name>Certificates Manager: earliest &quot;validTo&quot;</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[cert_date,validTo.min]</key>
<units>unixtime</units>
<description>This item will return will return the earliest date &quot;validTo&quot; from all the certificates (including CA). This is used to find expiring certificates.</description>
<applications>
<application>
<name>Certificate Manager</name>
</application>
</applications>
<preprocessing>
<step>
<type>DISCARD_UNCHANGED_HEARTBEAT</type>
<params>1d</params>
</step>
</preprocessing>
<triggers>
<trigger>
<expression>{last()}&lt;{now()}</expression>
<name>One or more certificates are expired</name>
<opdata>Earliest &quot;Valid To&quot;: {ITEM.LASTVALUE1}</opdata>
<priority>HIGH</priority>
</trigger>
<trigger>
<expression>({last()}-{now()})&lt;{$PFSENSE_CERT_EXPIRATION.AVERAGE}</expression>
<name>One or more certificates are expiring less than {$PFSENSE_CERT_EXPIRATION.AVERAGE}</name>
<opdata>Earliest &quot;Valid To&quot;: {ITEM.LASTVALUE1}</opdata>
<priority>AVERAGE</priority>
<dependencies>
<dependency>
<name>One or more certificates are expired</name>
<expression>{Template pfSense Active:pfsense.value[cert_date,validTo.min].last()}&lt;{Template pfSense Active:pfsense.value[cert_date,validTo.min].now()}</expression>
</dependency>
</dependencies>
</trigger>
<trigger>
<expression>({last()}-{now()})&lt;{$PFSENSE_CERT_EXPIRATION.WARN}</expression>
<name>One or more certificates are expiring less than {$PFSENSE_CERT_EXPIRATION.WARN}</name>
<opdata>Earliest &quot;Valid To&quot;: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
<dependencies>
<dependency>
<name>One or more certificates are expired</name>
<expression>{Template pfSense Active:pfsense.value[cert_date,validTo.min].last()}&lt;{Template pfSense Active:pfsense.value[cert_date,validTo.min].now()}</expression>
</dependency>
<dependency>
<name>One or more certificates are expiring less than {$PFSENSE_CERT_EXPIRATION.AVERAGE}</name>
<expression>({Template pfSense Active:pfsense.value[cert_date,validTo.min].last()}-{Template pfSense Active:pfsense.value[cert_date,validTo.min].now()})&lt;{$PFSENSE_CERT_EXPIRATION.AVERAGE}</expression>
</dependency>
</dependencies>
</trigger>
</triggers>
</item>
<item>
<name>DHCP Failover Pool Problems</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[dhcp,failover]</key>
<delay>2m</delay>
<delay>120s</delay>
<description>This value indicates, in a HA scenario, if DHCP failover pool partners are out of sync.</description>
<applications>
<application>
@ -360,6 +292,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Gateway Status Raw</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_status]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>Gateway Status Raw</description>
@ -380,29 +313,6 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
</trigger>
</triggers>
</item>
<item>
<name>SMART Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[smart_status]</key>
<delay>30m</delay>
<description>pfSense SMART Status</description>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap>
<name>pfSense SMART Status</name>
</valuemap>
<triggers>
<trigger>
<expression>{last()}=1</expression>
<name>SMART Errors on {HOST.NAME}</name>
<priority>HIGH</priority>
<description>pfSense has detected SMART Problems on one or more drives.</description>
</trigger>
</triggers>
</item>
<item>
<name>pfSense Installed Version</name>
<type>ZABBIX_ACTIVE</type>
@ -454,7 +364,6 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<trigger>
<expression>{last()}&gt;0</expression>
<name>Packages Update Available on {HOST.NAME}</name>
<opdata>{ITEM.LASTVALUE}</opdata>
<priority>INFO</priority>
<description>New version of packages are available</description>
</trigger>
@ -477,6 +386,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Number of running processes</name>
<type>ZABBIX_ACTIVE</type>
<key>proc.num[,,run]</key>
<delay>60</delay>
<history>27d</history>
<description>Number of processes in running state.</description>
<applications>
<application>
@ -495,6 +406,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Number of processes</name>
<type>ZABBIX_ACTIVE</type>
<key>proc.num[]</key>
<delay>60</delay>
<history>27d</history>
<description>Total number of processes in any state.</description>
<applications>
<application>
@ -513,7 +426,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Host boot time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.boottime</key>
<delay>10m</delay>
<delay>600</delay>
<history>27d</history>
<units>unixtime</units>
<applications>
<application>
@ -525,6 +439,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Interrupts per second</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.intr</key>
<delay>60</delay>
<history>27d</history>
<units>ips</units>
<applications>
<application>
@ -542,6 +458,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Processor load (1min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg1]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
@ -561,6 +479,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Processor load (5min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg5]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
@ -573,6 +493,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Processor load (15min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg15]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
@ -585,6 +507,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Context switches per second</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.switches</key>
<delay>60</delay>
<history>27d</history>
<units>sps</units>
<applications>
<application>
@ -602,6 +526,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,idle]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent doing nothing.</description>
@ -615,6 +541,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,interrupt]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The amount of time the CPU has been servicing hardware interrupts.</description>
@ -628,6 +556,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,nice]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running users' processes that have been niced.</description>
@ -641,6 +571,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,system]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running the kernel and its processes.</description>
@ -654,6 +586,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,user]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running users' processes that are not niced.</description>
@ -667,7 +601,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Host name</name>
<type>ZABBIX_ACTIVE</type>
<key>system.hostname</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<trends>0</trends>
<value_type>CHAR</value_type>
<description>System host name.</description>
@ -689,6 +624,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Host local time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.localtime</key>
<delay>60</delay>
<history>27d</history>
<units>unixtime</units>
<applications>
<application>
@ -700,6 +637,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Free swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,free]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
@ -711,6 +650,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Free swap space in %</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,pfree]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<applications>
@ -731,7 +672,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Total swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,total]</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
@ -743,6 +685,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Used swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,used]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
@ -754,7 +698,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>System information</name>
<type>ZABBIX_ACTIVE</type>
<key>system.uname</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<trends>0</trends>
<value_type>CHAR</value_type>
<description>The information as normally returned by 'uname -a'.</description>
@ -776,7 +721,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>System uptime</name>
<type>ZABBIX_ACTIVE</type>
<key>system.uptime</key>
<delay>10m</delay>
<delay>600</delay>
<history>27d</history>
<units>uptime</units>
<applications>
<application>
@ -795,6 +741,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Number of logged in users</name>
<type>ZABBIX_ACTIVE</type>
<key>system.users.num</key>
<delay>60</delay>
<history>27d</history>
<description>Number of users who are currently logged in.</description>
<applications>
<application>
@ -806,7 +754,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Checksum of $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.file.cksum[/etc/passwd]</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<applications>
<application>
<name>OS</name>
@ -824,6 +773,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Active memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[active]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>Memory used by processes</description>
<applications>
@ -836,6 +787,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Available memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[available]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<description>Available memory is defined as free+cached+buffers memory.</description>
<applications>
@ -855,6 +808,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Buffered memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[buffers]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>Cache d'entrées des IO disque.&#13;
@ -870,6 +825,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Cached memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[cached]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory used to cache data</description>
<applications>
@ -882,6 +839,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Free memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[free]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory completely free and ready to be used directly.</description>
<applications>
@ -894,6 +853,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Inactive memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[inactive]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory that contains data that is no longer used (can be directly freed if needed)</description>
<applications>
@ -906,6 +867,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Available memory (percent)</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[pavailable]</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>Available memory is defined as free+cached+buffers memory.</description>
@ -925,6 +888,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Shared memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[shared]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>quantité de mémoire partagée entre plusieurs processus&#13;
@ -940,7 +905,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Total memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[total]</key>
<delay>1h</delay>
<delay>3600</delay>
<history>27d</history>
<units>B</units>
<description>quantité de mémoire totale</description>
<applications>
@ -953,6 +919,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Used memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[used]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>Item désactivé car non utilisé</description>
@ -966,6 +934,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Wired memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[wired]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory used by the kernel, can neither be unloaded in swap, nor compressed.</description>
<applications>
@ -980,7 +950,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Gateways Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[gw]</key>
<delay>5m</delay>
<delay>300s</delay>
<description>Gateway Discovery</description>
<item_prototypes>
<item_prototype>
@ -1132,7 +1102,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Network interface discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[interfaces]</key>
<delay>1h</delay>
<delay>3600s</delay>
<filter>
<conditions>
<condition>
@ -1149,10 +1119,11 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Incoming Errors on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.in[{#IFNAME},errors]</key>
<delay>60</delay>
<history>7d</history>
<applications>
<application>
<name>Network Interfaces</name>
<name>Network interfaces</name>
</application>
</applications>
</item_prototype>
@ -1160,11 +1131,12 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Incoming network traffic on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.in[{#IFNAME}]</key>
<delay>60</delay>
<history>7d</history>
<units>bps</units>
<applications>
<application>
<name>Network Interfaces</name>
<name>Network interfaces</name>
</application>
</applications>
<preprocessing>
@ -1182,10 +1154,11 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Outgoing errors on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.out[{#IFNAME},errors]</key>
<delay>60</delay>
<history>7d</history>
<applications>
<application>
<name>Network Interfaces</name>
<name>Network interfaces</name>
</application>
</applications>
</item_prototype>
@ -1193,11 +1166,12 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Outgoing network traffic on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.out[{#IFNAME}]</key>
<delay>60</delay>
<history>7d</history>
<units>bps</units>
<applications>
<application>
<name>Network Interfaces</name>
<name>Network interfaces</name>
</application>
</applications>
<preprocessing>
@ -1244,13 +1218,14 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Client Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[openvpn_client]</key>
<delay>5m</delay>
<delay>300s</delay>
<description>OpenVPN Client Discovery</description>
<item_prototypes>
<item_prototype>
<name>OpenVPN Client {#NAME} Tunnel Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_clientvalue,{#CLIENT},status]</key>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Client</name>
@ -1274,12 +1249,13 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[openvpn_server]</key>
<delay>5m</delay>
<delay>300s</delay>
<item_prototypes>
<item_prototype>
<name>OpenVPN Server {#NAME} Clients Connected</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},conns]</key>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
@ -1290,7 +1266,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#NAME} Mode</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},mode]</key>
<delay>5m</delay>
<delay>300s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
@ -1304,7 +1280,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#NAME} Port</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},port]</key>
<delay>5m</delay>
<delay>300s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
@ -1315,7 +1291,8 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#NAME} Tunnel Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},status]</key>
<applications>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
</application>
@ -1338,13 +1315,22 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Services Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[services]</key>
<delay>5m</delay>
<delay>300s</delay>
<filter>
<conditions>
<condition>
<macro>{#SERVICE}</macro>
<value>@pfSense service names for discovery</value>
<formulaid>A</formulaid>
</condition>
</conditions>
</filter>
<item_prototypes>
<item_prototype>
<name>Service {#DESCRIPTION} enabled on CARP Slave</name>
<name>Service {#DESCRIPTION} enabled on CARP Slave</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[service_value,{#SERVICE},run_on_carp_slave]</key>
<delay>10m</delay>
<delay>600s</delay>
<applications>
<application>
<name>Services</name>
@ -1358,6 +1344,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>Service {#DESCRIPTION} Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[service_value,{#SERVICE},status]</key>
<delay>60s</delay>
<applications>
<application>
<name>Services</name>
@ -1370,8 +1357,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Template pfSense Active:pfsense.value[service_value,{#SERVICE},status].last()}=0 &#13;
and {$PFSENSE_SRVC_MONITORING:&quot;{#SERVICE}&quot;}=1 and (&#13;
<expression>{Template pfSense Active:pfsense.value[service_value,{#SERVICE},status].last()}=0 and (&#13;
&#13;
({Template pfSense Active:pfsense.value[service_value,{#SERVICE},run_on_carp_slave].last()}=1 and &#13;
{Template pfSense Active:pfsense.value[carp_status].last()}=2)&#13;
@ -1386,26 +1372,7 @@ or&#13;
)</expression>
<name>Service {#DESCRIPTION} is not running</name>
<priority>HIGH</priority>
<description>Service is not running&#13;
&#13;
If you want to skip the trigger for this service, add the macro $PFSENSE_SRVC_MONITORING:&quot;{#SERVICE}&quot;=0&#13;
&#13;
0 = Service monitoring disabled&#13;
1 = Service monitoring check if running&#13;
2 = Service monitoring check if not running</description>
</trigger_prototype>
<trigger_prototype>
<expression>{Template pfSense Active:pfsense.value[service_value,{#SERVICE},status].last()}=1 and {$PFSENSE_SRVC_MONITORING:&quot;{#SERVICE}&quot;}=2 and (({Template pfSense Active:pfsense.value[service_value,{#SERVICE},run_on_carp_slave].last()}=1 and {Template pfSense Active:pfsense.value[carp_status].last()}=2) or {Template pfSense Active:pfsense.value[carp_status].last()}=1 or {Template pfSense Active:pfsense.value[carp_status].last()}=0)</expression>
<name>Service {#DESCRIPTION} is running</name>
<priority>HIGH</priority>
<description>Service is running&#13;
&#13;
If you want to skip the trigger for this service, remove the macro $PFSENSE_SRVC_MONITORING:&quot;{#SERVICE}&quot;=2&#13;
Alternatively you can also set the macro to 1 or 0.&#13;
&#13;
0 = Service monitoring disabled&#13;
1 = Service monitoring check if running&#13;
2 = Service monitoring check if not running</description>
<description>Service is not running</description>
</trigger_prototype>
</trigger_prototypes>
</discovery_rule>
@ -1413,7 +1380,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Mounted filesystem discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.discovery</key>
<delay>1h</delay>
<delay>3600</delay>
<filter>
<conditions>
<condition>
@ -1430,6 +1397,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Free inodes on $1 (percentage)</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.inode[{#FSNAME},pfree]</key>
<delay>60</delay>
<history>7d</history>
<value_type>FLOAT</value_type>
<units>%</units>
@ -1450,6 +1418,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Free disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},free]</key>
<delay>60</delay>
<history>7d</history>
<units>B</units>
<applications>
@ -1462,6 +1431,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Free disk space on $1 (percentage)</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},pfree]</key>
<delay>60</delay>
<history>7d</history>
<value_type>FLOAT</value_type>
<units>%</units>
@ -1482,7 +1452,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Total disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},total]</key>
<delay>1h</delay>
<delay>3600</delay>
<history>7d</history>
<units>B</units>
<applications>
@ -1495,6 +1465,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<name>Used disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},used]</key>
<delay>60</delay>
<history>7d</history>
<units>B</units>
<applications>
@ -1561,29 +1532,6 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<macro>{$EXPECTED_CARP_STATUS}</macro>
<value>0</value>
</macro>
<macro>
<macro>{$PFSENSE_CERT_EXPIRATION.AVERAGE}</macro>
<value>48h</value>
</macro>
<macro>
<macro>{$PFSENSE_CERT_EXPIRATION.WARN}</macro>
<value>10d</value>
</macro>
<macro>
<macro>{$PFSENSE_SRVC_MONITORING}</macro>
<value>1</value>
<description>Enable monitoring of Services</description>
</macro>
<macro>
<macro>{$PFSENSE_SRVC_MONITORING:&quot;iperf&quot;}</macro>
<value>0</value>
<description>Disable monitoring of Service iperf Network Performance Testing Daemon/Client</description>
</macro>
<macro>
<macro>{$PFSENSE_SRVC_MONITORING:&quot;pcscd&quot;}</macro>
<value>2</value>
<description>Enable monitoring of PC/SC Smart Card Daemon (check if NOT running) https://redmine.pfsense.org/issues/12095</description>
</macro>
</macros>
<screens>
<screen>
@ -1695,7 +1643,7 @@ Alternatively you can also set the macro to 1 or 0.&#13;
<expression>({Template pfSense Active:pfsense.value[system,version].last()}&lt;&gt;{Template pfSense Active:pfsense.value[system,installed_version].last()})=1</expression>
<name>New Version Available on {HOST.NAME}</name>
<priority>INFO</priority>
<description>Notify of new version of pfsense available</description>
<description>Noify of new version of pfsense available</description>
</trigger>
</triggers>
<graphs>
@ -2185,23 +2133,6 @@ Alternatively you can also set the macro to 1 or 0.&#13;
</mapping>
</mappings>
</value_map>
<value_map>
<name>pfSense SMART Status</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>OK</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Error</newvalue>
</mapping>
<mapping>
<value>2</value>
<newvalue>Unknown</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>Service state</name>
<mappings>

View File

@ -33,14 +33,14 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Phase 1 Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[ipsec_ph1]</key>
<delay>20m</delay>
<delay>1200s</delay>
<description>Discovery of IPsec Phase 1</description>
<item_prototypes>
<item_prototype>
<name>IPsec Tunnel {#IKEID} {#NAME} Tunnel Enabled</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},disabled]</key>
<delay>2m</delay>
<delay>120s</delay>
<description>IPsec Phase 1 Tunnel Mode</description>
<applications>
<application>
@ -55,7 +55,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID} {#NAME} IKE Type</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},iketype]</key>
<delay>10m</delay>
<delay>600s</delay>
<description>IPsec Phase 1 IKE Type</description>
<applications>
<application>
@ -70,7 +70,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID} {#NAME} Tunnel Mode</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},mode]</key>
<delay>10m</delay>
<delay>600s</delay>
<description>IPsec Phase 1 Tunnel Mode</description>
<applications>
<application>
@ -85,7 +85,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID} {#NAME} Protocol</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},protocol]</key>
<delay>10m</delay>
<delay>600s</delay>
<description>IPsec Phase 1 Protocol</description>
<applications>
<application>
@ -100,7 +100,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID} {#NAME} Remote Gateway</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},remote-gateway]</key>
<delay>10m</delay>
<delay>600s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>IPsec Phase 1 Remote Gateway</description>
@ -114,6 +114,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID} {#NAME} Phase 1 Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph1,{#IKEID},status]</key>
<delay>60s</delay>
<description>IPsec Phase 1 Tunnel Mode</description>
<applications>
<application>
@ -138,14 +139,14 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Phase 2 Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[ipsec_ph2]</key>
<delay>20m</delay>
<delay>1200s</delay>
<description>Discovery of IPsec Phase 2</description>
<item_prototypes>
<item_prototype>
<name>IPsec Tunnel {#IKEID}.{#REQID} {#NAME} Phase 2 Enabled</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph2,{#UNIQID},disabled]</key>
<delay>2m</delay>
<delay>120s</delay>
<description>IPsec Tunnel Phase 2 Protocol</description>
<applications>
<application>
@ -160,7 +161,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID}.{#REQID} {#NAME} Phase 2 Life Time</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph2,{#UNIQID},lifetime]</key>
<delay>10m</delay>
<delay>600s</delay>
<units>s</units>
<description>IPsec Tunnel Phase 2 Life Time</description>
<applications>
@ -173,7 +174,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID}.{#REQID} {#NAME} Phase 2 Mode</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph2,{#UNIQID},mode]</key>
<delay>10m</delay>
<delay>600s</delay>
<description>IPsec Tunnel Phase 2 Mode</description>
<applications>
<application>
@ -185,7 +186,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>IPsec Tunnel {#IKEID}.{#REQID} {#NAME} Phase 2 Protocol</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[ipsec_ph2,{#UNIQID},protocol]</key>
<delay>10m</delay>
<delay>600s</delay>
<description>IPsec Tunnel Phase 2 Protocol</description>
<applications>
<application>

View File

@ -33,12 +33,14 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN User Auth Connected Clients Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[openvpn_server_user]</key>
<delay>60s</delay>
<description>Discovery of clients connected to OpenVPN Server in User Auth Mode</description>
<item_prototypes>
<item_prototype>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Bytes Received</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},bytes_recv]</key>
<delay>60s</delay>
<trends>0</trends>
<units>bytes</units>
<description>Client Bytes Received</description>
@ -52,6 +54,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Bytes Sent</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},bytes_sent]</key>
<delay>60s</delay>
<trends>0</trends>
<units>bytes</units>
<description>Client Bytes Sent</description>
@ -65,6 +68,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Connection Time</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},connect_time_unix]</key>
<delay>60s</delay>
<trends>0</trends>
<units>unixtime</units>
<description>Client Connect Time</description>
@ -78,6 +82,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Remote Host</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},remote_host]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>Remote Host</description>
@ -91,6 +96,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: User Name</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},user_name]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>Client User Name</description>
@ -104,6 +110,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Virtual IP Address (IPv6)</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},virtual_addr6]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>IPv6 Address assigned from OpenVPN Server</description>
@ -117,6 +124,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Virtual IP Address</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue,{#UNIQUEID},virtual_addr]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>IP Address assigned from OpenVPN Server</description>
@ -130,6 +138,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Client ID</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue_numeric,{#UNIQUEID},client_id]</key>
<delay>60s</delay>
<trends>0</trends>
<description>Client ID</description>
<applications>
@ -142,6 +151,7 @@ https://github.com/rbicelli/pfsense-zabbix-template</description>
<name>OpenVPN Server {#SERVERNAME}, Client {#USERID}: Peer ID</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_server_uservalue_numeric,{#UNIQUEID},peer_id]</key>
<delay>60s</delay>
<trends>0</trends>
<description>Peer ID</description>
<applications>