This addon provides the agent for monitoring a host by Zabbix Monitoring.

Requirements

You need a running Zabbix Server and you should be aware of how to integrate hosts monitored by agents into your environment.
Consider using this IPFire by Zabbix Agent Active Zabbix template for monitoring IPFire specific metrics:

  • IPFire general stats (Available entropy, state of RNG)
  • IPFire services (default IPFire services and possible Addon services)
  • Pakfire status (Installed version, Available update(s))
  • Network stats (Line quality, Open Connections, Firewall hits)
  • OpenVPN Clients (Bytes receives/sent, Client properties, Connections status, Certificates, ...)

Installation

  • Install the addon via Pakfire
  • Modify the configuration files to fit your needs as described under the next heading
  • Restart the agent to apply your changed config
  • Create firewall rule(s) to allow the communication between the agent and your server/proxy

Configuration

The addon is shipped with a default configuration file and some additional directories and files. The way how this addon organizes its configuration files was changed in Core Update 170 with zabbix_agentd v6.0.6.

Core Update 170 and later

  • /etc/zabbix_agentd/zabbix_agentd.conf - The main configuration file. This file is included in the backup of this addon.
    See /etc/zabbix_agentd/zabbix_agentd.conf.example or the original documentation for help.
    Please note: The parameters Server and ServerActive have to be set to your Zabbix Server's (or Proxy's) IP/DNS in order to allow access to the agent. They are both set to 127.0.0.1 by default for security reasons.
    Also note: On new installations the ListenIP is set to the GREEN IP address by default for security reasons. Remove this line to listen on ALL interfaces (not recommended).
    Warning: This addon installation or upgrade will automatically add 2 Include directives to this file which should not be modified to ensure that Zabbix Agent will properly run on IPFire:

    • Include=/var/ipfire/zabbix_agentd/userparameters/*.conf - Activates IPFire specific userparameters for Zabbix to monitor. (see below for more details)
      You can disable those userparameters by commenting out this configuration directive by placing a hash sign in front of the line. Do NOT remove or alter the line in any other way as then it will be re-added on next addon upgrade.

    • Include=/var/ipfire/zabbix_agentd/zabbix_agentd_ipfire_mandatory.conf - Mandatory agent configuration for running on an IPFire system. Do not alter or remove this line as Zabbix Agent will then no longer work.

  • /etc/zabbix_agentd/zabbix_agentd.d - Files containing UserParameters should go here. They need to have the extension *.conf. This directory is included in the backup of this addon.

  • /etc/zabbix_agentd/scripts - Additional scripts e.g. for UserParameters should go here. This directory is included in the backup of this addon.
  • /usr/lib/zabbix - Custom agent modules go here. This directory is included in the backup of this addon.
  • /etc/sudoers.d/zabbix_agentd - Sudoers file required for IPFire specific userparameters. Do not alter this file as it is not included in the addon backup and will be overwritten on next update.
  • /etc/sudoers.d/zabbix_agentd_user - This file can be modified to allow certain commands to be executed with sudo if needed by a UserParameter. This file will be included in a backup of this addon. Do not change the filename!
  • /var/log/zabbix/zabbix_agentd.log Deprecated LogFile.
    Since IPFire 2.27 CU 175 Zabbix Agentd logs are integrated in the IPFire's web interface.
    If you upgraded from a previous version, this file can be safely removed and will no longer be updated.

earlier Core Update versions

  • /etc/zabbix_agentd All configuration files should be put below this directory. The entire directory will be included in a backup of this addon.
  • /etc/zabbix_agentd/zabbix_agentd.conf The configuration file. See the [original documentation](https://www.zabbix.com/documentation/current/manual/appendix/config/zabbix_agentd) for help. Please note: The parametersServerandServerActivehave to be set to your Zabbix Server's (or Proxy's) IP/DNS in order to allow access to the agent. They are both set to 127.0.0.1 by default for security reasons.

  • /etc/zabbix_agentd/zabbix_agentd.d Files containing UserParameters should go here. They need to have the extension *.conf.

  • /etc/zabbix_agentd/scripts Additional scripts e.g. for UserParameters should go here
  • /etc/sudoers.d/zabbix.user This file can be modified to allow certain commands to be executed with sudo if needed by a UserParameter. This file will be included in a backup of this addon. Do not change the filename!
  • /usr/lib/modules LoadModulePath
  • /var/log/zabbix/zabbix_agentd.log Current LogFile
  • /etc/logrotate.d/zabbix_agentd Includefile for logrotate. The logs are rotated monthly and kept for 12 month by default.
  • Please note: The logs are NOT included in a backup of this addon.

IPFire specific userparameters

As of Core Update 170 / zabbix_agentd addon v6.0.6 following IPFire specific userparameters are supported on the agent:

  • ipfire.net.gateway.pingtime - numeric (unsigned) - Internet Gateway ping timings, can be used to measure "Internet Line Quality"
  • ipfire.net.gateway.ping - numeric (unsigned) - Internet Gateway availability, can be used to check Internet connection
  • ipfire.net.fw.hits.raw - text - Firewall Filter Forward chain drops in bytes/chain (JSON), can be used for discovery of firewall chains and monitoring of firewall hits on each chain
  • ipfire.dhcpd.clients - numeric (unsigned) - Number of currently Active DHCP leases
  • ipfire.captive.clients - numeric (unsigned) - Number of Captive Portal clients
  • pakfire.status - text - Pakfire status message containing IPFire Core Update version information and available update information

As of Core Update 179 / zabbix_agentd addon v6.0.19 following additional IPFire specific userparameters are supported on the agent:

  • ipfire.ovpn.clients.discovery - text - Discovery of configured ovpn clients. Returns a JSON array.
  • ipfire.ovpn.statusreport.get - text - OpenVPN statusreport. Returns /var/run/ovpnserver.log as a JSON array.

As of Core Update 185 / zabbix_agentd addon v6.0.27 following additional IPFire specific userparameters are supported on the agent:

  • ipfire.ovpn.clientcert[ovpn_clientname] - text - OpenVPN certificate details/validation. Returns a JSON array. Expects OpenVPN client-name (as returned by ipfire.ovpn.clients.discovery's {#NAME}-macro) for client certificate or server for the OpenVPN server certificate as parameter to specify on which certificate you want details/validation output.
  • ipfire.ovpn.cacert - text - OpenVPN CA certificate details/validation. Returns a JSON array.