Commit Graph
118 Commits
Author SHA1 Message Date
Daniel F. Dickinson b3087fee99 zabbix: remove unneeded postinsts
Handling uci-defaults scripts in package postinst is not needed in
modern OpenWrt and in fact results in error messages on install since
the common postinst processes and deletes uci-defaults scripts before
package-specific postinsts are executed.

Therefore remove the unneeded postinsts in this package.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-09-05 18:37:50 +03:00
Daniel F. Dickinson 070a2991e0 zabbix: bump to version 7.0.30
Bug-fix update: https://www.zabbix.com/rn/rn7.0.30

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-08-29 14:14:22 +02:00
Daniel F. Dickinson 5e84a9851b zabbix: bump version to 7.0.29
July 28, 2026 LTS release: https://www.zabbix.com/rn/rn7.0.29

Patches refreshed (no changes required).

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-08-09 07:43:25 +02:00
Daniel F. Dickinson 355665cfb5 zabbix: bring proxy to parity with server and agentd
* Add config file patch for proxy
* Add initscript for proxy
* Update Makefile and support files to bring proxy to parity with
  agentd and server.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-31 12:50:45 +03:00
Daniel F. Dickinson ec54972924 zabbix: tweak server initscript and bring agentd to parity
* Genericize zabbix_server initscript.
* Add shellcheck overrides where needed.
* Add a 'never_root' config option (default true) that determines
  whether server starts as an unprivileged user or starts as root and
  drops to an unprivileged user (unless config is changed so it always
  runs as root).
* Bring zabbix_agentd initscript to parity with zabbix_server for the
  initscript and configuration.
* Tweak Makefile to reduce repetition

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-31 12:50:45 +03:00
Daniel F. Dickinson 589cf9a73c zabbix: tweak patch agent and server patch configs
Tweak the agentd and server patch configurations and bring agentd and
server confgurations to parity.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-31 12:50:45 +03:00
Daniel F. Dickinson 1340781924 zabbix: use separate users for server and proxy
This is the upstream recommendation, and fits with our separation
of agent and server.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-31 12:50:45 +03:00
Daniel F. Dickinson 3e46007e60 zabbix: add php8-mod-simplexml dependency to frontend
While the frontend can mostly operate without php8-mod-simplexml, when
trying to import XML templates the user only gets unhelpful error
messages and is unlikely to realize the module is required for that
functionality. Therefore have the frontend depend on php8-mod-simplexml.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-23 01:04:06 +02:00
Daniel F. Dickinson f1bf9f56d8 zabbix: stop shipping sysctl.d conf in package
The sysctl file increases max files to allow the default full
complement of discovery workers, however this is probably not a
hard requirement and such a conf not shipped elsewhere in tree, so
leave that to the user to configure. (The syslog messages from
zabbix-server and/or zabbix-proxy provided the needed information).

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-23 01:04:06 +02:00
Daniel F. Dickinson 2616169cd4 zabbix: reorganize files dir for clarity and to better follow the FHS
Reorganize the extra files under the 'files' dir so that it is more
clear where they go and what they are for, and to avoid having a
disorganized mass of files.

Move the extra C source file out of files and into 'src-extra'.

Avoid treating openwrt-supplied params files as configuration data.
Instead have them in a separate directory under /usr/share which is
included in the zabbix_agentd configuration by default. This also better
follows the FHS.

Hopefully these changes make sense on their own, as well as helping the
CI accept the changes.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-23 01:04:06 +02:00
Daniel F. Dickinson 9058162e11 zabbix: preserve user config files across sysupgrade
Add the user config file directories (/etc/zabbix_x.conf.d) to the
list of directories and files to preserve across sysupgrade.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-23 01:04:06 +02:00
Daniel F. Dickinson 69b555d22a zabbix: bump version to 7.0.28
Update to latest LTS. See release notes:
https://www.zabbix.com/rn/rn7.0.28

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-18 10:59:18 +02:00
Daniel F. Dickinson 33fa804bdd zabbix: do not error in postinst when no ubusd
Now that post install is running properly, when CI executes the
tests the zabbix-extra-* packages that have a posinst exit the
post install with an error if ubusd is not running.

Drop the error code from killall with no usbd running to fix this.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-16 08:48:33 +02:00
Daniel F. Dickinson 9ec085718d zabbix: add version check override
Allow CI to pass the version check for packages with executables
with not version output.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-10 20:56:10 +02:00
Daniel F. Dickinson d5eb49a42d zabbix: remove dependency on symbol ZABBIX_ENABLE_ZABBIX
It results a failure to build due to
https://github.com/openwrt/gh-action-sdk/issues/70. This means there will be some
ZABBIX symbols in .config eveen when ZABBIX is not selected, but this is a
necessary tradeoff. See
https://github.com/openwrt/packages/pull/29803#issuecomment-4882201182.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-10 20:56:10 +02:00
Daniel F. Dickinson 13ee37072d zabbix: bump to 7.0.27 and fix Makefile
* Update version to latest upstream LTS version.

* The Makefile was using an overly clever means to be compact that the
  CI webhook, and possibly the CI test container, didn't understand. We
  unroll that logic, and have more usual install and conffiles sections.
  In the process we fix a missing conffile install for zbbix-proxy*
	packages.

* Whitespace fixups

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-07-10 20:56:10 +02:00
Daniel F. Dickinson 736edbfa2f zabbix: prevent invalid package selection
zabbix-sender and zabbix-get are only build if agentd is built.
Therefore do not allow selection them if the full agentd is not
being built.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-05-13 14:54:29 +03:00
Daniel F. Dickinson c79ea3a86c zabbix: bump version
Update to version 7.0.26 (latest LTS).

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
2026-05-13 14:54:29 +03:00
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