supported by zabbix_agentd addon
| Item key | Description | Available since |
|---|---|---|
ipfire.services.get |
Summary of IPFire services, their state, pids and memory usage. | Core Update 189 / zabbix_agentd addon v6.0.33 |
| Item key | Description | Available since |
|---|---|---|
ipfire.net.gateway.arpingtime |
Internet Gateway ARP ping timings. | Core Update 197 / zabbix_agentd addon v7.0.16 |
ipfire.net.gateway.arping |
Internet Gateway reachable by ARP ping. | Core Update 197 / zabbix_agentd addon v7.0.16 |
ipfire.net.gateway.pingtime |
Internet Gateway ICMP ping timings. | Core Update 170 / zabbix_agentd addon v6.0.6 |
ipfire.net.gateway.ping |
Internet Gateway reachable by ICMP ping. | Core Update 170 / zabbix_agentd addon v6.0.6 |
| Item key | Description | Available since |
|---|---|---|
ipfire.net.fw.hits.raw |
Firewall Filter Forward chain drops in bytes/chain. | Core Update 170 / zabbix_agentd addon v6.0.6 |
| Item key | Description | Available since |
|---|---|---|
ipfire.dhcpd.clients |
Number of currently Active DHCP leases | Core Update 170 / zabbix_agentd addon v6.0.6 |
| Item key | Description | Available since |
|---|---|---|
ipfire.captive.clients |
Number of Captive Portal clients | Core Update 170 / zabbix_agentd addon v6.0.6 |
| Item key | Description | Available since |
|---|---|---|
pakfire.status |
Pakfire status message containing IPFire Core Update version information and available update information | Core Update 132 / zabbix_agentd addon v4.2.1 |
| Item key | Description | Available since |
|---|---|---|
ipfire.ovpn.clients.discovery |
Discovery of configured ovpn clients. | Core Update 179 / zabbix_agentd addon v6.0.19 |
ipfire.ovpn.statusreport.get |
OpenVPN server statusreport. | Core Update 179 / zabbix_agentd addon v6.0.19 |
ipfire.ovpn.clientcert |
OpenVPN certificate details/validation. | Core Update 185 / zabbix_agentd addon v6.0.27 |
ipfire.ovpn.cacert |
OpenVPN CA certificate details/validation. | Core Update 185 / zabbix_agentd addon v6.0.27 |
| Item key | Description | Available since |
|---|---|---|
ipfire.wireguard.peers.discovery |
Discovery of configured WireGuard peers. | Core Update 197 / zabbix_agentd addon v7.0.16 |
ipfire.wireguard.statusreport.get |
WireGuard statusreport. | Core Update 197 / zabbix_agentd addon v7.0.16 |
| Item key | Description | Available since |
|---|---|---|
ipfire.ips.throughput.get |
IPS Throughput. | Core Update 191 / zabbix_agentd addon v6.0.37 |
| Item key | Description | Available since |
|---|---|---|
ipfire.guardian.blocked.count |
Number of blocked IP addresses by Guardian. | Core Update 191 / zabbix_agentd addon v6.0.37 |
| Item key | Description | Available since |
|---|---|---|
ipfire.locationdb.lookup[*] |
Location DB lookup for one or more IP addresses. | Core Update 197 / zabbix_agentd addon v7.0.16 |
ipfire.locationdb.version |
Location DB version. | Core Update 197 / zabbix_agentd addon v7.0.16 |
| Item key | Description | Available since |
|---|---|---|
kresd.stats.get |
Knot DNS resolver statistics | Core Update 204 / zabbix_agentd addon v7.0.29 |
| Item key | Description | Available since |
|---|---|---|
suricata.version |
Suricata version | Core Update 204 / zabbix_agentd addon v7.0.29 |
suricata.counters.get |
Suricata counters | Core Update 204 / zabbix_agentd addon v7.0.29 |
Parameters without angle brackets are mandatory. Parameters marked with angle brackets < > are optional.
Summary of IPFire services, their state, pids and memory usage. Can be used for low-level discovery.
Return value: JSON object
This item returns a JSON with information about IPFire builtin and addon services, for example:
[
{
"service": "DHCP Server",
"servicename": "dhcpd",
"state": 1,
"pids": [
3855
],
"memory": 6684672
},
{
"service": "Addon: zabbix_agentd",
"servicename": "zabbix_agentd",
"onboot": 1,
"state": 1,
"pids": [
17207
],
"memory": 2740224
}
]
Internet Gateway ARP ping timings, can be used to measure "Internet Line Quality", in case ICMP ping is blocked by the ISP.
Return value: Integer
Internet Gateway availability by ARPing, can be used to check Internet connection, in case ICMP ping is blocked by the ISP.
Return value: Integer
Internet Gateway ICMP ping timings, can be used to measure "Internet Line Quality"
Return value: Integer
Internet Gateway availability by ICMP ping, can be used to check Internet connection
Return value: Integer
Firewall Filter Forward chain drops in bytes/chain, can be used for low-level discovery of firewall chains and monitoring of firewall hits on each chain
Return value: JSON object
This item returns a JSON with Firewall filter chain drops in bytes/chain, for example:
[
{
"chain": "CTINVALID",
"bytes": "739395"
},
{
"chain": "FORWARD",
"bytes": "12506820"
},
{
"chain": "INPUT",
"bytes": "1005809"
},
{
"chain": "OUTPUT",
"bytes": "0"
}
]
Number of currently Active DHCP leases
Return value: Integer
Number of Captive Portal clients
Return value: Integer
Pakfire status message containing IPFire Core Update version information and available update information
Return value: Text
Discovery of configured ovpn clients for use with low-level discovery.
Return value: JSON object
This item returns a JSON with configured OpenVPN clients, for example:
[
{
"{#NAME}": "Laptop",
"{#COMMONNAME}": "Ideapad",
"{#STATE}": "on",
"{#REMARK}": "",
"{#TYPE}": "host"
},
{
"{#NAME}": "Gsm",
"{#COMMONNAME}": "Oneplus",
"{#STATE}": "on",
"{#REMARK}": "",
"{#TYPE}": "host"
}
]
The following macros are supported for use in the discovery rule filter and prototypes of items, triggers and graphs:
| Macro | Description |
|---|---|
{#NAME} |
Name of the OpenVPN client as entered in IPFire webUI |
{#COMMONNAME} |
Common name as used in the OpenVPN client certificate |
{#STATE} |
Whether the client is Enabled ("on") or Disabled ("off") in IPFire webUI |
{#REMARK} |
Remark as entered in IPFire webUI |
{#TYPE} |
OpenVPN client type: "host" for Host-to-Net, "net" for Net-to-Net |
OpenVPN statusreport.
Return value: JSON object
Comments:
ipfire.ovpn.statusreport.get[] for use as an item prototype in a discovery rule with an empty {#SINGLETON} macro.This item parses /var/run/ovpnserver.log and returns a JSON with the parsed result, for example:
{
"timestamp": 1729283374,
"clients": [
{
"common_name": "Oneplus",
"real_address": "192.168.1.100:59650",
"bytes_in": "99023277",
"bytes_out": "1683354183",
"connected_since": "1729183106"
}
],
"routing_table": [
{
"common_name": "Oneplus",
"virtual_address": "10.220.189.18",
"real_address": "192.168.1.100:59650",
"last_ref": "1729283354"
}
]
}
Validates the OpenVPN server or client certificate and returns certificate details.
Return value: JSON object
Parameters:
{#NAME} macro by ipfire.ovpn.clients.discovery for client certificate or server for the OpenVPN server certificate.Comments:
Example:
ipfire.ovpn.clientcert[server] # To get/validate the OpenVPN server certificate
ipfire.ovpn.clientcert[Laptop001] # To get/validate the OpenVPN client certificate for client "Laptop001"
This item returns a JSON with requested certificate details and validation result, for example:
{
"x509": {
"version": "3",
"serial_number": "1",
"signature_algorithm": "sha256WithRSAEncryption",
"issuer": "C=DE, O=IPFire, CN=IPFire appliance CA, emailAddress=info@ipfire.example.domain",
"not_before": {
"value": "Feb 13 18:58:17 2022 GMT",
"timestamp": "1644778697"
},
"not_after": {
"value": "Jan 10 18:58:17 4760 GMT",
"timestamp": "88044692297"
},
"subject": "C=DE, O=IPFire, CN=ipfire.example.domain",
"public_key_algorithm": "rsaEncryption"
},
"result": {
"value": "valid",
"message": "certificate verified successfully"
},
"sha1_fingerprint": "A4:23:1C:0F:EF:FE:8C:43:F5:14:43:83:BD:5C:E1:3E:AC:5E:A1:E7",
"sha256_fingerprint": "A5:64:D9:BA:35:4D:43:9E:F0:7D:BC:AD:EC:62:93:BD:C9:82:3B:95:D5:83:78:11:D4:40:60:6D:AF:42:3C:E5"
}
Validates the OpenVPN CA certificate and returns certificate details.
Return value: JSON object
Comments:
ipfire.ovpn.cacert[] for use as an item prototype in a discovery rule with an empty {#SINGLETON} macro.ipfire.ovpn.clientcert.Discovery of configured WireGuard peers for use with low-level discovery.
Return value: JSON object
This item returns a JSON with configured WireGuard peers, for example:
[
{
"{#NAME}":"GSM",
"{#ID}":"GkxGYoQagndpjBb4LmO/+aoFdalUVenSBwZQlkWHKyw=",
"{#STATE}":"on",
"{#REMARK_B64}":"T25lUGx1cyBOb3JkIDM=",
"{#TYPE}":"host"
},
{
"{#NAME}":"Laptop",
"{#ID}":"sn2McCt61iIZX8ZdKUs5HcI/JEkFHE5buoN+LCRzhlo=",
"{#STATE}":"on",
"{#REMARK_B64}":"",
"{#TYPE}":"host"
}
]
The following macros are supported for use in the discovery rule filter and prototypes of items, triggers and graphs:
| Macro | Description |
|---|---|
{#NAME} |
Name of the WireGuard peer as entered in IPFire webUI |
{#ID} |
Public key of the WireGuard peer |
{#STATE} |
Whether the client is Enabled ("on") or Disabled ("off") in IPFire webUI |
{#REMARK_B64} |
Remark as entered in IPFire webUI, Base64 encoded |
{#TYPE} |
WireGuard client type: "host" for Host-to-Net, "net" for Net-to-Net |
WireGuard statusreport.
Return value: JSON object
This item returns a JSON with statistics of all peers, for example:
[
{
"id":"GkxGYoQagndpjBb4LmO/+aoFdalUVenSBwZQlkWHKyw=",
"endpoint":"192.168.1.100:38391",
"allowed_ip":"10.220.190.1/32",
"handshake_timestamp":1753897790,
"bytes_in":970542448,
"bytes_out":5426505240
},
{
"id":"sn2McCt61iIZX8ZdKUs5HcI/JEkFHE5buoN+LCRzhlo=",
"endpoint":"192.168.1.171:51820",
"allowed_ip":"10.220.190.2/32",
"handshake_timestamp":1750934933,
"bytes_in":2556,
"bytes_out":308
}
]
Summary of Intrusion Detection Prevention (IPS) throughput.
Return value: JSON object
Comments:
ipfire.ips.throughput.get[] for use as an item prototype in a discovery rule with an empty {#SINGLETON} macro.This item returns a JSON with whitelisted, scanned and bypassed IPS throughput in bytes per second, for example:
{
"bypassed": 2608332316,
"whitelisted": 0,
"scanned": 908881957
}
Number of blocked IP addresses by Guardian.
Return value: Integer
Comments:
ipfire.guardian.blocked.count[] for use as an item prototype in a discovery rule with an empty {#SINGLETON} macro.Lookup one or more IP's in IPFire's Location DB.
Return value: JSON Object
This item returns a JSON containing the network, Country of origin and the AS that owns the IP for each requested IP.
Parameters:
Example:
{
"8.8.8.8":{
"network":"8.8.8.0/24",
"country":"United States of America",
"as":"AS15169 - Google LLC"
},
"1.1.1.1":{
"network":"1.1.1.0/24",
"country":"Australia",
"as":"AS13335 - Cloudflare, Inc."
}
}
Current version of LocationDB.
Return value: Integer
LocationDB version is a timestamp. This item returns the timestamp in unixtime for easy interpretation by Zabbix server.
Knot DNS Resolver statistics
Return value: JSON object
This item returns a JSON containing the current statistics of each kresd worker as collected by the Knot Resolver builtin statistics collector keeping track of number of queries and answers matching specific criteria.. Refer to Knot Resolver - Statistics collector documentation for a list of returned metrics.
Example:
{
"kresd:kresd0": {
"answer": {
"1000ms": 5176,
"1500ms": 1503,
"slow": 2323,
"nodata": 4597013,
"cached": 9727509,
"edns0": 56750598,
"rd": 61836572,
...
},
"request": {
"total4": 14317988,
"total6": 0,
"internal": 47921896,
"udp4": 14309456,
"tcp4": 8532,
...
},
"query": {
"edns": 56750598,
"dnssec": 249
}
},
"kresd:kresd1": {
...
},
"kresd:kresd2": {
...
},
"kresd:kresd3": {
...
}
}
Suricata Intrusion Protection version.
Return value: JSON Object
This item returns a JSON containing the current running version of Suricata.
Example:
{
"message": "8.0.5 RELEASE",
"return": "OK"
}
Suricata Intrusion Protection internal counters.
Return value: JSON Object
This item returns a JSON containing all Suricata performance counters. Refer to the stats object in the Suricata schema.json file for a description of each counter.
Example:
{
"message": {
"uptime": 1277049,
"ips": {
"accepted": 611179281,
"blocked": 274348,
"rejected": 0,
"replaced": 0,
"drop_reason": {
"decode_error": 0,
"defrag_error": 0,
"defrag_memcap": 0,
"flow_memcap": 0,
"flow_drop": 28732,
"applayer_error": 0,
"applayer_memcap": 0,
"rules": 63575,
...
},
"return": "OK"
}