100 Commits

Author SHA1 Message Date
Daniel F. Dickinson
1568fb9816 zabbix: update to 7.0.25 (LTS)
Bump version to latest LTS.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-04-14 10:48:40 +03:00
Daniel F. Dickinson
e4130e53bf zabbix: update to 7.0.24
Bump version and refresh patches.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-04-11 09:12:36 +03:00
Daniel F. Dickinson
2aadd0d97f zabbix: tweak server configuration
* Fix path to fping and use fping as fping6
* For privacy, disable call to public API to check for Zabbix version update

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-04-11 09:12:36 +03:00
Daniel F. Dickinson
0268b7cbc4 zabbix: fix username for ubus acls
When we updated the zabbix agent to use username zabbix-agent
we neglected to update ubus acls for zabbix-extra-network.

Therefore update the username for the network and wifi acls.

Will close #29058 once backported to 25.12.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-04-07 14:35:44 +02:00
Daniel F. Dickinson
6b555ae5e0 zabbix: tweak ubus acl json whitespace
Ensure consist JSON formatting by using jq --tab . <filename>.json.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-04-07 14:35:44 +02:00
Daniel F. Dickinson
f0576eb36b zabbix: hide CONFIG symbols when no Zabbix package selected
As noted in #28709 OpenWrt  contains CONFIG_
symbols for Zabbix even when no Zabbix package is selected.
This fixes and Closes #28709.

We add a 'guard' symbol for the menus and choices so the only
generate CONFIG symbols when 'Enable Zabbix'
(CONFIG_ZABBIX_ENABLE_ZABBIX) is selected.

We also make all the Zabbix packages depend on this symbol,
for consistency.

This operates much as the pseudo-package solution, but without
a pseudo-package required.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-22 09:16:50 +01:00
Daniel F. Dickinson
32abd6408f zabbix: change spaces to tabs in Config.in
This seems to be more standard for Config.in.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-22 09:16:50 +01:00
Daniel F. Dickinson
ee93470984 zabbix: move small config-xx.in back to Makefile
Based on https://github.com/openwrt/packages/issues/28709#issuecomment-4060013105
it has been noted that the number config.in files was high compared to actual
config selections.

Therefore move smaller selection back into the Makefile. They are still kept
with the most appropriate package which they configure.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-22 09:16:50 +01:00
Daniel F. Dickinson
5eaff0b9c0 zabbix: bump version to 7.0.23 (LTS)
Update version to 7.0.23 - latest LTS.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-04 20:27:09 +02:00
Daniel F. Dickinson
c98e9d68a0 zabbix: add full variants and add-on support for other
Rather than having a database selection for SQLITE which prevents
the server or frontend from building, we add a 'basic'
variant for the proxy which uses sqlite3, and have the database
Kconfig affect only the server and frontend.

* There are now only three variants:
  1. full, which is the default. It includes the full monitoring feature
     set currently available on openwrt, including netsnmp, curl-based
     checks, and ldap. In addition these features, plus the choice of
     database and ssl provider (or no ssl) are configuration options for
     this variant.
  2. basic, which provides basic functions with openssl support
  3. no-configure, for packages which are not part of the main Zabbix
     compile process (including the WebUI which only requires copying
     files for use by a web server with PHP CGI support).

* Full is the default variant for agentd and proxy, which are the only
  packages with a choice between full and basic. All other packages only
  are part of one variant.

* Full variants are the base version of the packages (that is
  zabbix-agentd is the 'full' version while zabbix-agentd-basic is the
  core version). The proxy version is named zabbix-proxy-basic-sqlite to
  announce that it is using the sqlite3 database and not a database
  server.

* get and sender only build if at least one of agentd, server, or proxy
are built. Therefore prevent selection get or sender when they would not
build.

* Zabbix's use of NetSNMP requires that Zabbix be build with OpenSSL

* While we are here, enable support for dates after 2038 (64-bit time_t)

* https://github.com/openwrt/packages/pull/28585#issuecomment-3984978895
  * we updated the name to reflect that it is for basic functionality
    that can standalone, rather then being a core the other packages
    build on.
  * basic has been used rather than tiny or small since the sentence
    'Provides only tiny/small functionality with SSL/TLS' in the
    description, sounds strange, but using basic this reads properly.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-04 20:27:09 +02:00
Daniel F. Dickinson
4afdeb7d19 zabbix: update php8 dependencies
Using the php8 dependency allows use to go back to using the
+ZABBIX_POSTGRESQL:php8-mod-pgsql (and like dependency for
mysql/mariadb).

This has the benefit of being an apk dependency so the user does not
install the frontend without a php8 database module.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-03-04 20:27:09 +02:00
Daniel F. Dickinson
696e549e9d zabbix: fix unnecessary virtual provides
We aren't using packages with the same name as the provides, so don't
use an virtual (@) provides for providing zabbix-get

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-11 21:47:03 +01:00
Daniel F. Dickinson
4635838819 zabbix: set PKGARCH all for non-binary packages
For non-compiled package that are architecture independant, set
PKGARCH:=all.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-11 21:47:03 +01:00
Michael Heimpold
849db7361d zabbix: fix no-configure build variant
When selecting only a package of "no-configure" build variant, e.g.
CONFIG_PACKAGE_zabbix-frontend-server=y
but not any other zabbix package, then the build fails.
The sources are not extracted and the install fails finally with:

make[4]: Entering directory '/srv/openwrt/openwrt-2.git/build_dir/target-arm_arm926ej-s_musl_eabi/zabbix-no-configure/zabbix-7.0.22'
make[4]: *** No rule to make target 'install'.  Stop.
make[4]: Leaving directory '/srv/openwrt.git/build_dir/target-arm_arm926ej-s_musl_eabi/zabbix-no-configure/zabbix-7.0.22'
make[3]: *** [Makefile:522: /srv/openwrt.git/build_dir/target-arm_arm926ej-s_musl_eabi/zabbix-no-configure/zabbix-7.0.22/.built] Error 2

This PR fixes this by always running the standard Prepare stage,
but skip the Install one when nothing needs to be compiled.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2026-02-06 22:45:27 +01:00
Daniel F. Dickinson
ff7353dbbc zabbix: fix recursive depedency warning on build
The error in the #24828 patch series left Kconfig recursive depedency
error on zabbix-frontend-server. We fix this by update the database
depedencies on zabbix-frontend-server. Now, you must select the PHP8
database module you want _before_ zabbix-frontend-server will be
visible in menuconfig.

This is not a big problem, because zabbix-frontend-server already
depends on having php8 slected before the frontend can be built.

Closes: #28458

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-04 20:38:34 +01:00
Daniel F. Dickinson
b032682381 zabbix: fix package rename missed database config
Due to package renaming the selection of database for the server and
proxy was missing from the Kconfig menu. This caused build failures for
proxy and server.

We now fix that.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-04 20:38:34 +01:00
Daniel F. Dickinson
8bc0c6c7cf zabbix: fix compile skipped due to line continuation
Using line continuation (\\) in GNU Make \$(foreach ...) and
\$(call ...) resulted in the install section for many of the packages
not being defined. This resulted in 'skipping [package-name] no install
section' messages and no new package being generated.

We remove the line continuation from the parts foreach and call, in
ordeer to restore compilation and creation of packages.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-04 20:38:34 +01:00
Daniel F. Dickinson
75146ea2be zabbix: deduplicate and reorganize package defines
In preparation for further changes, deduplicate package definitions,
and reorganize them. At the same time make use of provides to ensure
both existing names are preserved, and that it is possible to be
specific about the variant of the package one wants.

Also, condense the package conffiles, install, postinst, etc handling.
This is more maintainable (less copy and paste and less to modify).

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-01 20:39:30 +01:00
Daniel F. Dickinson
0a897f7042 zabbix: drop unwanted file and wrong BUILD_VARIANT
cspell.json was accidentally include in a previous commit, so remove it.

VARIANT is to be used in package definitions, and BUILD_VARIANT
for checking which VARIANT is currently being built. BUILD_VARIANT was
incorrectly used in a package definition, so we fix that.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-02-01 20:39:30 +01:00
Daniel F. Dickinson
a2685bfad2 zabbix: fix agentd default user and minor issues
The last PR (https://github.com/openwrt/packages/pull/28370) missed
including two needed changes, and had a minor packaging Makefile
mistake.

The Zabbix Agent needs to drop privileges to the zabbix-agent user.
Similarly, if run as root (not the default), the Zabbix server needs to
drop privileges to the zabbix-server user.

There are also, in the Makefile, three instances of using BUILD_VARIANT
instead of VARIANT in package definitions.

So we fix those issues.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-23 21:13:51 +01:00
Daniel F. Dickinson
8ab5a3d7c3 zabbix: avoid unnecessary configure/compile
For items which are only copied from the source code, avoid the
prepare, configure, and compile steps, while preserving the special
behaviour of the mac80211 addon, which has a unique prepare and
compile.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-18 07:21:18 +02:00
Daniel F. Dickinson
f798e17379 zabbix: deduplicate zabbix-agentd Makefile parts
Avoid unnecessary duplication on zabbix-agentd package definitions by
using a common zabbix-agentd/Default and extending it for different
zabbix-agentd flavours.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-18 07:21:18 +02:00
Daniel F. Dickinson
907e9c6b1e zabbix: use separate users for agent and server
For security, per upstream recommendations, use a separate user for the
agent daemon and the server daemon.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-18 07:21:18 +02:00
Daniel F. Dickinson
1f3251545d zabbix: bump to 7.0.22 LTS
Bump Zabbix to the latest released 7.0.x LTS version.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-18 07:21:18 +02:00
Daniel F. Dickinson
ffdb7209a4 zabbix: add initscript for server
Adds an initscript for zabbix_server, and related helper files

+ uses a zabbix_server uci conf to enable/disable startup
+ updates the default zabbix_server.conf to work with initscript
+ add a sysctl.d conf to set max-files more appropriate for zabbix_server

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-16 01:10:59 +02:00
Daniel F. Dickinson
1ff6a92251 zabbix: fix agentd PidFile creation
Addresses the issue pointed out in #28165, which is that zabbix_agentd
always creates a PidFile and has no option to disable PidFile creation.
Therefore update the configuration file to default to create a PidFile
where we want it.

Close #28165

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-01-16 01:10:59 +02:00
Florian Eckert
dec74a7985 zabbix: zabbix-server-frontend: update dependency
Only show zabbix-server-frontend if the build dependency 'PACKEGE_php8' is
fulfilled. This means that 'zabbix-server-frotend' can only be selected if
PHP has also been enabled for building.

This change is needed to fix the following recursive dependency warning.

error: recursive dependency detected!
   symbol PACKAGE_php8 is selected by PACKAGE_zabbix-server-frontend
   symbol PACKAGE_zabbix-server-frontend depends on PHP8_DOM
   symbol PHP8_DOM depends on PACKAGE_php8
For a resolution refer to Documentation/kbuild/kconfig-language.rst

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2026-01-11 20:45:13 +01:00
Daniel F. Dickinson
33b868d540 zabbix: tweak frontend dependencies
For zabbix-server-frontend, the absence of php8-mod-filter results in
many of the frontend's pages failing to render.  Therefore add this
module as a frontend dependency.

Without php8-mod-openssl the frontend fails with:

[13-Dec-2025 18:47:25 UTC] PHP Fatal error:  Uncaught Error: Call to
undefined function openssl_random_pseudo_bytes() in
/www/zabbix/include/classes/helpers/CEncryptHelper.php:89
Stack trace:
CEncryptHelper::generateKey()
  thrown in /www/zabbix/include/classes/helpers/CEncryptHelper.php on
  line 89

Therefore add php8-mod-openssl as a frontend dependency.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2025-12-26 09:39:50 +01:00
Daniel F. Dickinson
b961c4e1b5 zabbix: transfer maintenance to myself
With previous maintainer's blessing:
https://github.com/openwrt/packages/pull/28041#issuecomment-3650645784

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2025-12-20 11:19:45 +01:00
Daniel F. Dickinson
0488c96b08 zabbix: update to 7.0.21 (lts)
Updates Zabbix to 7.0.21-r1 (latest 7.0 LTS version)

Note that for the frontend, clearing browser cache, cookies and other
site data for the zabbix frontend server may be necessary.

Security fixes compared to 7.0.12 (most are frontend only):

* CVE-2025-27238: API hostprototype.get lists data to users with
  insufficient authorization https://support.zabbix.com/browse/ZBX-26988
* CVE-2025-27236: User information disclosure via api_jsonrpc.php on
  method user.get with param search:
  https://support.zabbix.com/browse/ZBX-27060
* CVE-2025-27231: LDAP 'Bind password' field value can be leaked by a
  Zabbix Super Admin: https://support.zabbix.com/browse/ZBX-27062
* CVE-2025-49641: Insufficient permission check for the
  problem.view.refresh action:
  https://support.zabbix.com/browse/ZBX-27063
* CVE-2025-49643: Frontend DoS vulnerability due to asymmetric
  resource consumption: https://support.zabbix.com/browse/ZBX-27284

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2025-12-20 11:19:45 +01:00
Thlv Alivs
7c268c3ac2 zabbix: update to 7.0.12
also fix build error

Signed-off-by: Thlv Alivs <zgmzzzz18@gmail.com>
2025-05-18 16:25:10 +02:00
Yanase Yuki
4948edf6ff zabbix: update to 7.0.0
License has been changed to AGPL-3.0-only

Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Yanase Yuki
e1d7c7ec89 zabbix: update to 6.4.15
Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Yanase Yuki
808c315436 zabbix: update to 6.4.14
Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Yanase Yuki
d8d5538f5a zabbix: update to 6.4.13
Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Yanase Yuki
956c5f9bf7 zabbix: update to 6.4.12
Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Yanase Yuki
e61c3ea01c zabbix: zabbix-agentd: depend on libevent2-pthreads
zabbix-agentd requires libevent2-pthreads to build
correctly, so add it to DEPENDS.

Signed-off-by: Yanase Yuki <dev@zpc.st>
2024-06-23 11:28:47 -07:00
Tony Ambardar
3cf17ad130 zabbix: zabbix_helper_mac80211.c: use POSIX <libgen.h> header
The musl libc only implements POSIX basename() but provided a GNU header
kludge in <string.h>, which was removed in musl 1.2.5 [1]. Use the standard
<libgen.h> header to avoid compilation warnings like:

zabbix-6.4.7/zabbix-extra-mac80211/zabbix_helper_mac80211.c:37:11: warning:
 implicit declaration of function 'basename' [-Wimplicit-function-declaration]
   37 |     phy = basename(phy);
      |           ^~~~~~~~
zabbix-6.4.7/zabbix-extra-mac80211/zabbix_helper_mac80211.c:37:9: warning:
 assignment to 'char *' from 'int' makes pointer from integer without a cast
 [-Wint-conversion]
   37 |     phy = basename(phy);
      |         ^
zabbix-6.4.7/zabbix-extra-mac80211/zabbix_helper_mac80211.c:38:10: warning:
 assignment to 'char *' from 'int' makes pointer from integer without a cast
 [-Wint-conversion]
   38 |     stat = basename(stat);
      |          ^

Link 1: https://git.musl-libc.org/cgit/musl/log/?qt=grep&q=basename

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2024-03-06 05:44:46 -08:00
Florian Eckert
4f9ced5cf9 zabbix: update to version 6.4.7
Switch to current stable version 6.4.7.
See release notes:
https://www.zabbix.com/rn/rn6.4.7

So that the new version builds cleanly. The 'libevent2-pthreads' must be
added as dependency.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2023-10-31 11:57:20 +01:00
Christian Marangi
3dfb00c6c6 zabbix: move to PCRE2 library
Move to PCRE2 library as PCRE is not EOL and won't receive any security
updates anymore.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-10-29 15:45:45 +01:00
Jeffery To
c196aac4b1 zabbix: Add "oldstable" source URL
Zabbix moved the 6.2 directory from "stable" into "oldstable". This adds
the "oldstable" URL to PKG_SOURCE_URL.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2023-06-02 21:51:57 +08:00
Florian Eckert
3c11092560 zabbix: add sqlite3 support
This change makes it possible to build zabbix with sqlite3 support.

Attention:
By selecting "SQLite" as "Database Software" you are not able
to build the zabbix-server and zabbix-server-frontend package anymore.
This database is not supported for this service.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2022-10-17 13:50:42 +02:00
Scott Roberts
cd48d03f01 zabbix: add variants for SSL support
opkg does not offer ssl varients:
zabbix-agentd
zabbix-sender
zabbix-get
zabbix-proxy
zabbix-server

resolve this by adding ssl varients.

Signed-off-by: Scott Roberts <ttocsr@gmail.com>
2022-10-06 06:44:03 -06:00
Scott Roberts
475d1cc0e9 zabbix: update to 6.2.3
Refreshed patches.

Signed-off-by: Scott Roberts <ttocsr@gmail.com>
2022-09-26 09:41:21 -06:00
Florian Eckert
672a655d6b zabbix: add fping dependency
If fping is not installed on the system the following message is show if
hosts should be monitored via icmp.

Log-Message:
"At least one of '/usr/sbin/fping', '/usr/sbin/fping6' must exist. Both
are missing in the system."

To fix this also, add a dependency to 'fping' for 'zabbix-server' and
'zabbix-proxy' for installation to allow icmp hosts monitoring.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2022-08-03 09:40:59 +02:00
Sergey V. Lobanov
2d680d787f zabbix: update to 5.0.18
Updated to latest 5.0 LTS minor release

Signed-off-by: Sergey V. Lobanov <sergey@lobanov.in>
2021-12-21 21:38:54 +01:00
Jacek Konieczny
30007d3804 zabbix: fix 6in4 network interface discovery
Those devices don't have 'device' propery, only 'l3_device', which
causes 'attempt to concatenate field 'device' (a nil value)' lua error.

Use 'l3_device' as a fallback in this case.

Signed-off-by: Jacek Konieczny <jajcus@jajcus.net>
2021-11-21 11:00:53 -05:00
Michael Heimpold
ceb4c2b2df zabbix: switch dependencies to php8
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2021-10-05 23:19:09 +02:00
Jan Baier
641f75d98a zabbix: Call killall with the -s
Some versions of killall do support the `killall -SIGNAL` syntax and
have only `-s SIGNAL` which should be supported everywhere.

I see the problem with *killall (PSmisc) 23.3* on latest TurrisOS 5.2

Signed-off-by: Jan Baier <jan.baier@amagical.net>
2021-08-18 10:37:40 -04:00
Rosen Penev
0ce5d5e203 zabbix: update to 5.0.7
Remove pointless uClibc-ng dependency as it's gone now.

Refreshed patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-01-17 15:08:28 -08:00