From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [IPv6:::1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4hD8xL08Cgz2xvl for ; Mon, 03 Aug 2026 08:29:58 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1 raw public key) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "YR2" (not verified)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4hD8xK6vy6z2xsf for ; Mon, 03 Aug 2026 08:29:57 +0000 (UTC) Received: from people01.haj.ipfire.org (people01.haj.ipfire.org [IPv6:2001:678:b28::161]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bit raw public key) server-digest SHA256 client-signature ECDSA (secp384r1) client-digest SHA384) (Client CN "people01.haj.ipfire.org", Issuer "YE2" (not verified)) by mail01.ipfire.org (Postfix) with ESMTPS id 4hD8x92sX0zH3 for ; Mon, 03 Aug 2026 08:29:49 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1785745789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc; bh=riRG8te1reTRcc2LoFP5YpEzEdpPDkZPMzWITR5jKf0=; b=X5npzNJbaUo7MSOu64u/UBPgbLJAW0Xr0/TqIhT9WUloH2qBONnDTtEkNbME/l1fsp7vhN KuEgqOByDNsh9SBQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1785745789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc; bh=riRG8te1reTRcc2LoFP5YpEzEdpPDkZPMzWITR5jKf0=; b=gJW4Ya6MIv6zXrfxjH82Kl12BfFRhSQNTl6jHjlsJrS21XJvDDom8+novOy/9W9Hm9ADHA RF8NO82qrX1t3Z6cC3axUhJwKWsTd8EO1MzWBykVQqI5KO4QEdtA+Pv7uaW/7aY3/PMgVY G5MTkciLekihzOYRX2u6mxeLaeTBXRR853+HgpAolnrKKJhFaY924snhDAIfuY7zIP8ivU WM4ojB62yCxwrs/kQFIvPPtRUhgkuUPjnaw0XAV2H4ezgeVfs1RN6gbxZNcmUBMUJ6Do1i s05QJc4+6RJ5UuWnNPyLIp1M7RRyiqEQhN0pSm1erkSxI2msjIiSEKghaNnrXA== Received: by people01.haj.ipfire.org (Postfix, from userid 1000) id 4hD8x76pMDz2xSX; Mon, 03 Aug 2026 08:29:47 +0000 (UTC) To: ipfire-scm@lists.ipfire.org Subject: [git.ipfire.org] IPFire 2.x development tree branch, next, updated. eed04bbef5fff399a3acb63030b972b4fb5044aa X-Git-Refname: refs/heads/next X-Git-Reftype: branch X-Git-Oldrev: c21328ab44974bdca46faa28b6f679072dddbcaf X-Git-Newrev: eed04bbef5fff399a3acb63030b972b4fb5044aa Message-Id: <4hD8x76pMDz2xSX@people01.haj.ipfire.org> Date: Mon, 03 Aug 2026 08:29:47 +0000 (UTC) From: Michael Tremer Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree". The branch, next has been updated via eed04bbef5fff399a3acb63030b972b4fb5044aa (commit) via 22941342a75040f472a2dc2e0bb6153183a943a4 (commit) via 0939bc5c08b382bee5065eee437d2f4958b21df0 (commit) via ac9cb6c061bb081dbbc03e45a5bafc4b18c9c39e (commit) via d29632f7e1a58cd35217a794e170e4074224be20 (commit) from c21328ab44974bdca46faa28b6f679072dddbcaf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit eed04bbef5fff399a3acb63030b972b4fb5044aa Author: Matthias Fischer Date: Fri Jul 31 18:39:53 2026 +0200 nano: Update to 9.2 For details see: https://www.nano-editor.org/news.php "2026 July 31 - GNU nano 9.2 "Alquézar" Nano refuses to start when standard output is not a terminal. Options --newbuffer and 'set newbuffer' were added as better synonyms of --multibuffer and 'set multibuffer'. Legacy keystroke pairs ^W^T and ^/^T are recognized again." Signed-off-by: Matthias Fischer Signed-off-by: Michael Tremer commit 22941342a75040f472a2dc2e0bb6153183a943a4 Author: Robin Roevens Date: Fri Jul 31 10:49:17 2026 +0200 zabbix_agentd: Add support for suricata metrics Add new UserParameters: - suricata.counters.get: for retrieval of suricata counters using suricatasc. - suricata.version for retrieval of current suricata version using suricatasc Add both suricatasc commands to sudoers for Zabbix agent to be able to query suricata. Signed-off-by: Robin Roevens Signed-off-by: Michael Tremer commit 0939bc5c08b382bee5065eee437d2f4958b21df0 Author: Robin Roevens Date: Fri Jul 31 00:29:54 2026 +0200 python3-zabbix-utils: New package: v2.0.4 A Python library with modules for working with Zabbix (Zabbix API, Zabbix sender, Zabbix get) Signed-off-by: Robin Roevens Signed-off-by: Michael Tremer commit ac9cb6c061bb081dbbc03e45a5bafc4b18c9c39e Author: Robin Roevens Date: Fri Jul 31 00:00:08 2026 +0200 zabbix_agentd: Update to 7.0.29 (LTS) - Update of rootfile not required Bugs fixed: - ZBX-27495 Fixed excessive history upload delay for both Zabbix agents Full changelogs: - https://www.zabbix.com/rn/rn7.0.25 - https://www.zabbix.com/rn/rn7.0.26 - https://www.zabbix.com/rn/rn7.0.27 - https://www.zabbix.com/rn/rn7.0.28 - https://www.zabbix.com/rn/rn7.0.29 Signed-off-by: Robin Roevens Signed-off-by: Michael Tremer commit d29632f7e1a58cd35217a794e170e4074224be20 Author: Robin Roevens Date: Thu Jul 30 23:40:55 2026 +0200 zabbix_agentd: Make kresd userparameter not ipfire specific By removing the "ipfire."-prefix from the userparameter, it allows the Kresd monitoring Zabbix template to be more generic and also usable on non-IPFire systems. Signed-off-by: Robin Roevens Signed-off-by: Michael Tremer ----------------------------------------------------------------------- Summary of changes: config/rootfiles/packages/python3-zabbix-utils | 19 +++++++++++++++++++ config/rootfiles/packages/zabbix_agentd | 2 ++ config/zabbix_agentd/sudoers | 1 + config/zabbix_agentd/userparameter_ipfire.conf | 3 --- config/zabbix_agentd/userparameter_kresd.conf | 2 ++ config/zabbix_agentd/userparameter_suricata.conf | 3 +++ lfs/nano | 4 ++-- lfs/{python3-setuptools-scm => python3-zabbix-utils} | 14 +++++++------- lfs/zabbix_agentd | 10 +++++++--- make.sh | 1 + 10 files changed, 44 insertions(+), 15 deletions(-) create mode 100644 config/rootfiles/packages/python3-zabbix-utils create mode 100644 config/zabbix_agentd/userparameter_kresd.conf create mode 100644 config/zabbix_agentd/userparameter_suricata.conf copy lfs/{python3-setuptools-scm => python3-zabbix-utils} (88%) Difference in files: diff --git a/config/rootfiles/packages/python3-zabbix-utils b/config/rootfiles/packages/python3-zabbix-utils new file mode 100644 index 000000000..dc658ea27 --- /dev/null +++ b/config/rootfiles/packages/python3-zabbix-utils @@ -0,0 +1,19 @@ +#usr/lib/python3.10/site-packages/zabbix_utils +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info/PKG-INFO +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info/SOURCES.txt +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info/dependency_links.txt +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info/requires.txt +#usr/lib/python3.10/site-packages/zabbix_utils-2.0.4-py3.10.egg-info/top_level.txt +usr/lib/python3.10/site-packages/zabbix_utils/__init__.py +usr/lib/python3.10/site-packages/zabbix_utils/aioapi.py +usr/lib/python3.10/site-packages/zabbix_utils/aiogetter.py +usr/lib/python3.10/site-packages/zabbix_utils/aiosender.py +usr/lib/python3.10/site-packages/zabbix_utils/api.py +usr/lib/python3.10/site-packages/zabbix_utils/common.py +usr/lib/python3.10/site-packages/zabbix_utils/exceptions.py +usr/lib/python3.10/site-packages/zabbix_utils/getter.py +usr/lib/python3.10/site-packages/zabbix_utils/logger.py +usr/lib/python3.10/site-packages/zabbix_utils/sender.py +usr/lib/python3.10/site-packages/zabbix_utils/types.py +usr/lib/python3.10/site-packages/zabbix_utils/version.py diff --git a/config/rootfiles/packages/zabbix_agentd b/config/rootfiles/packages/zabbix_agentd index 7f1f39b64..85afdaa9f 100644 --- a/config/rootfiles/packages/zabbix_agentd +++ b/config/rootfiles/packages/zabbix_agentd @@ -24,6 +24,8 @@ var/ipfire/zabbix_agentd/userparameters/userparameter_ovpn.conf var/ipfire/zabbix_agentd/userparameters/userparameter_gateway.conf var/ipfire/zabbix_agentd/userparameters/userparameter_wireguard.conf var/ipfire/zabbix_agentd/userparameters/userparameter_locationdb.conf +var/ipfire/zabbix_agentd/userparameters/userparameter_kresd.conf +var/ipfire/zabbix_agentd/userparameters/userparameter_suricata.conf var/ipfire/zabbix_agentd/scripts var/ipfire/zabbix_agentd/scripts/ipfire_certificate_detail.sh var/ipfire/zabbix_agentd/scripts/ipfire_services.pl diff --git a/config/zabbix_agentd/sudoers b/config/zabbix_agentd/sudoers index 13edfcce9..8669b0361 100644 --- a/config/zabbix_agentd/sudoers +++ b/config/zabbix_agentd/sudoers @@ -13,3 +13,4 @@ zabbix ALL=(ALL) NOPASSWD: /usr/local/bin/openvpnctrl rw log, /usr/local/bin/wir zabbix ALL=(ALL) NOPASSWD: /var/ipfire/zabbix_agentd/scripts/ipfire_certificate_detail.sh zabbix ALL=(ALL) NOPASSWD: /var/ipfire/zabbix_agentd/scripts/ipfire_services.pl zabbix ALL=(ALL) NOPASSWD: /usr/bin/curl -s --unix-socket /var/run/knot-resolver/kres-api.sock http\://localhost/metrics/json +zabbix ALL=(ALL) NOPASSWD: /usr/bin/suricatasc --command=dump-counters, /usr/bin/suricatasc --command=version \ No newline at end of file diff --git a/config/zabbix_agentd/userparameter_ipfire.conf b/config/zabbix_agentd/userparameter_ipfire.conf index a91e305a3..e88c20298 100644 --- a/config/zabbix_agentd/userparameter_ipfire.conf +++ b/config/zabbix_agentd/userparameter_ipfire.conf @@ -10,12 +10,9 @@ UserParameter=ipfire.captive.clients,awk -F ',' 'length($2) == 17 {sum += 1} END UserParameter=ipfire.services.get,sudo /var/ipfire/zabbix_agentd/scripts/ipfire_services.pl # IPS throughput bypassed/scanned/whitelisted in bytes/type (JSON) UserParameter=ipfire.ips.throughput.get,sudo /usr/local/bin/getipstat -xm | awk 'BEGIN{ORS="";print "{"}/Chain IPS/{f=1}/BYPASSED/&&f{printf "\"bypassed\":%s",$2}/SCANNED/&&f{printf ",\"scanned\":%s",$2}/WHITELISTED/&&f{printf ",\"whitelisted\":%s",$2}/^$/{f=0}END{print "}"}' -# Knot DNS resolver statistics -UserParameter=ipfire.kresd.stats.get,sudo /usr/bin/curl -s --unix-socket /var/run/knot-resolver/kres-api.sock http://localhost/metrics/json # Addon: Guardian: Number of currently blocked IP's UserParameter=ipfire.guardian.blocked.count,sudo /usr/local/bin/getipstat | awk 'BEGIN{ORS="";c=0}/Chain GUARDIAN/{f=1}/DROP/&&f{c++}/^$/{f=0}END{print c}' # # Allow item key to be called with (unused) parameters. This allows the #SINGLETON method of discovering this item only when specific service is active Alias=ipfire.ips.throughput.get[]:ipfire.ips.throughput.get -Alias=ipfire.kresd.stats.get[]:ipfire.kresd.stats.get Alias=ipfire.guardian.blocked.count[]:ipfire.guardian.blocked.count \ No newline at end of file diff --git a/config/zabbix_agentd/userparameter_kresd.conf b/config/zabbix_agentd/userparameter_kresd.conf new file mode 100644 index 000000000..f5765919b --- /dev/null +++ b/config/zabbix_agentd/userparameter_kresd.conf @@ -0,0 +1,2 @@ +# Knot DNS resolver statistics +UserParameter=kresd.stats.get,sudo /usr/bin/curl -s --unix-socket /var/run/knot-resolver/kres-api.sock http://localhost/metrics/json \ No newline at end of file diff --git a/config/zabbix_agentd/userparameter_suricata.conf b/config/zabbix_agentd/userparameter_suricata.conf new file mode 100644 index 000000000..b8f8c5b98 --- /dev/null +++ b/config/zabbix_agentd/userparameter_suricata.conf @@ -0,0 +1,3 @@ +# Suricata statistics +UserParameter=suricata.counters.get,sudo /usr/bin/suricatasc --command=dump-counters +UserParameter=suricata.version,sudo /usr/bin/suricatasc --command=version \ No newline at end of file diff --git a/lfs/nano b/lfs/nano index 6f0793d16..b308f1258 100644 --- a/lfs/nano +++ b/lfs/nano @@ -24,7 +24,7 @@ include Config -VER = 9.1 +VER = 9.2 THISAPP = nano-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = d762076463b0c683d13cd4c47cc05db573a1890c9ea0629c2aa37d36305197242eb724229afc59468aa47c515dbfb8378d9fa6fafa88d8b90a2af6d1ed467b14 +$(DL_FILE)_BLAKE2 = b8f5aedbb296654817eac82723a6ae6323b2710d225152ee6356fefe5e692958236a00ab4c7fd5abff71b84c3c023afc06854e4e216b80879c48ce94486c4b89 install : $(TARGET) diff --git a/lfs/python3-zabbix-utils b/lfs/python3-zabbix-utils new file mode 100644 index 000000000..fa4d25b81 --- /dev/null +++ b/lfs/python3-zabbix-utils @@ -0,0 +1,86 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2018 IPFire Team # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 2.0.4 +SUMMARY = A Python library with modules for working with Zabbix (Zabbix API, Zabbix sender, Zabbix get) + +THISAPP = zabbix_utils-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) +PROG = python3-zabbix-utils +PAK_VER = 1 + +DEPS = + +SERVICES = + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_BLAKE2 = d7a8eff20b6a19cad55e8b5f126f17ed325bed704957f31c66a0c70d791a925a160e68b7612e6a38c2302154f05f68ba8589de63ee161c37d50a7d32a08357ce + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +b2 : $(subst %,%_BLAKE2,$(objects)) + +dist: + @$(PAK) + +############################################################################### +# Downloading, checking, b2sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_BLAKE2,$(objects)) : + @$(B2SUM) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + #cd $(DIR_APP) && python3 setup.py build + cd $(DIR_APP) && python3 setup.py install --root=/ + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/zabbix_agentd b/lfs/zabbix_agentd index cbf4b246c..14671d66b 100644 --- a/lfs/zabbix_agentd +++ b/lfs/zabbix_agentd @@ -26,7 +26,7 @@ include Config SUMMARY = Zabbix Agent -VER = 7.0.24 +VER = 7.0.29 THISAPP = zabbix-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -34,7 +34,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = zabbix_agentd -PAK_VER = 23 +PAK_VER = 24 DEPS = fping @@ -48,7 +48,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = d508b84185493ce830ff2990569407c4e6ff03437c406e15258c1641e21c4c3b5195ca329903c44b73ec4fec022bd31c6bdd3883caa824e577e5044c0a5e840a +$(DL_FILE)_BLAKE2 = d013d271842464658bdb05f5d60ee591e60cfd7a9406c30f91ed96da8ec3a24c8f145154541190bf09d2819cba8c57cc7e264eb5148d257177f81d40b307cbb4 install : $(TARGET) @@ -118,6 +118,10 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) /var/ipfire/zabbix_agentd/userparameters/userparameter_wireguard.conf install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/userparameter_locationdb.conf \ /var/ipfire/zabbix_agentd/userparameters/userparameter_locationdb.conf + install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/userparameter_kresd.conf \ + /var/ipfire/zabbix_agentd/userparameters/userparameter_kresd.conf + install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/userparameter_suricata.conf \ + /var/ipfire/zabbix_agentd/userparameters/userparameter_suricata.conf # Install IPFire-specific Zabbix Agent scripts -mkdir -pv /var/ipfire/zabbix_agentd/scripts diff --git a/make.sh b/make.sh index facc95596..37f01c1a2 100755 --- a/make.sh +++ b/make.sh @@ -2146,6 +2146,7 @@ build_system() { lfsmake2 suricata-reporter lfsmake2 lldpd lfsmake2 perl-Net-LibIDN2 + lfsmake2 python3-zabbix-utils lfsmake2 linux lfsmake2 linux-initrd hooks/post-receive -- IPFire 2.x development tree