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 4gQhpd05G7z32ZF for ; Wed, 27 May 2026 21:00:25 +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 "R12" (not verified)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4gQhpY4Jn6z2ykp for ; Wed, 27 May 2026 21:00:21 +0000 (UTC) Received: from layka.disroot.org (layka.disroot.org [178.21.23.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mail01.ipfire.org (Postfix) with ESMTPS id 4gQhpX28ppz1Fr for ; Wed, 27 May 2026 21:00:20 +0000 (UTC) Authentication-Results: mail01.ipfire.org; dkim=pass header.d=disroot.org header.s=mail header.b=cYHu0okM; dmarc=pass (policy=reject) header.from=disroot.org; spf=pass (mail01.ipfire.org: domain of robin.roevens@disroot.org designates 178.21.23.139 as permitted sender) smtp.mailfrom=robin.roevens@disroot.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=lists.ipfire.org; s=202003rsa; t=1779915620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:dkim-signature; bh=U8rt73Sa4MW7EN//JEV5a/hTNL+PPxaY32rgYDZAv74=; b=nlNUr4IrifMlbGEzcyG8W1EMo3J6l04GZcDzMUocR2/SwU5Ooa0Mrx/ME4Wt0gSIVwICGA G7Mm1nS64l8BraYs8CFl2xQsl0wgZvEwvn4gCJrmB7ZPHOdbRHov2y4aBf7A2zSx3FZeRe diXQp2GYJbK+7imCXnezBFZTxLKJKiqR6s8jONUitq90fFckNqUrn7XAe1uIhHSb+SCmPG Ogx+BqA0OGMNB+sXsZAI/ecQZY49VYyVhbc6jmyZ7lGpbQ51k+qTHRapX/gJFMvY6yiN48 6QjJiTLXvHlMu9KEVNnDgNE6lgrDCV0rPnMRhu3JlQHvE8NH1SgDiLDfAvJLDQ== ARC-Authentication-Results: i=1; mail01.ipfire.org; dkim=pass header.d=disroot.org header.s=mail header.b=cYHu0okM; dmarc=pass (policy=reject) header.from=disroot.org; spf=pass (mail01.ipfire.org: domain of robin.roevens@disroot.org designates 178.21.23.139 as permitted sender) smtp.mailfrom=robin.roevens@disroot.org ARC-Seal: i=1; a=rsa-sha256; d=lists.ipfire.org; s=202003rsa; cv=none; t=1779915620; b=DaWFeaRwTBJ70QCTzBEqHJ5jqQ5U88C1ly4zsX3gTFHe0ikRkq+oyi/o+8np0cd4mKnj81 F6+ZSVm/8Tj1jdm5t5bS9e9DkpsOiIV3f8tTEsmCeVdob0Kqx1/Li6TU33kawi0lMaENx9 GsHk9eDegOPszqZRV4hWs0RXCvKhMVG6fsgzoEei2hyAsLBVM+Zpwaiav7OwOVuRX8QT/i dsK9gqR5d/RU8TWKjDOIS/GuHF/NjPU/95+patOp7NEhFfQpQet+ORl7C5yHKf2WT+p+Ph lzgehEuV33O6b5GNxrcCr3HjOoblM6CafTLKeQp3IzX45doDxuwO6EMBIRMwLg== Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 12071276DF for ; Wed, 27 May 2026 23:00:19 +0200 (CEST) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id RwwyYUZolvDU for ; Wed, 27 May 2026 23:00:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1779915618; bh=8ChajXXkATimGRVMovMtFzMk1qQ7WDXnDcq224qLwEw=; h=From:To:Cc:Subject:Date; b=cYHu0okM58dATSexLd9IYVbc0bwq3mVAqvAYOllei5ScXAkQi510hJqmQjAi0vQUQ BdmO9GonHJDrWjDZxpJ1mxRSbUJK7kePDMpgsg8iIcAmlufJfrdmhKWY1FLPLVBr3X j/LttV9ufbsKim4fHf3sr2j1RpJmgvGohqBrmuVvtjwXx/wIUkltmBOV80Rqywkcix RWTz/K60TpWF04xbD3p8vCC5AI+BSfUk9kA8+q2DA29YQwFrJAu/kYr32vzFyqJtH6 ImDpfGol5E0Gyn4ZnS8YZqPZK+oT1opAZMfECsXKwlvg+5rgoBniejphCdyP5VXT31 woDXkJwW6c1VQ== Received: from chojin.roevenslambrechts.be (chojin.roevenslambrechts.be [192.168.0.50]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (no client certificate requested) (Authenticated sender) by hachiman (MailScanner Milter) with SMTP id 9B6A6534F5F; Wed, 27 May 2026 23:00:15 +0200 (CEST) From: Robin Roevens To: development@lists.ipfire.org Cc: Robin Roevens Subject: [PATCH] zabbix_agentd: Fix OpenVPN 2.7 status parsing Date: Wed, 27 May 2026 22:59:50 +0200 Message-ID: <20260527205950.926409-1-robin.roevens@disroot.org> Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-RoevensLambrechts-MailScanner-ID: 9B6A6534F5F.AD543 X-RoevensLambrechts-MailScanner: Found to be clean X-RoevensLambrechts-MailScanner-From: robin.roevens@disroot.org X-RoevensLambrechts-MailScanner-Watermark: 1780520417.39047@Xzp5knvkx58/+xouHCmIxg X-Rspamd-Action: no action X-Spamd-Result: default: False [-2.52 / 11.00]; BAYES_HAM(-3.00)[100.00%]; MID_CONTAINS_FROM(1.00)[]; DMARC_POLICY_ALLOW(-0.50)[disroot.org,reject]; R_MISSING_CHARSET(0.50)[]; R_DKIM_ALLOW(-0.20)[disroot.org:s=mail]; R_SPF_ALLOW(-0.20)[+a]; MIME_GOOD(-0.10)[text/plain]; MX_GOOD(-0.01)[]; IP_REPUTATION_HAM(-0.01)[asn: 50673(0.00), country: NL(-0.01), ip: 178.21.23.139(0.00)]; DKIM_REPUTATION(0.00)[0]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; MISSING_XM_UA(0.00)[]; ASN(0.00)[asn:50673, ipnet:178.21.23.0/24, country:NL]; RCVD_COUNT_THREE(0.00)[3]; ARC_SIGNED(0.00)[lists.ipfire.org:s=202003rsa:i=1]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[development@lists.ipfire.org]; DKIM_TRACE(0.00)[disroot.org:+] X-Rspamd-Server: mail01.haj.ipfire.org X-Rspamd-Queue-Id: 4gQhpX28ppz1Fr Signed-off-by: Robin Roevens --- config/zabbix_agentd/userparameter_ovpn.conf | 2 +- lfs/zabbix_agentd | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/zabbix_agentd/userparameter_ovpn.conf b/config/zabbix_agentd/userparameter_ovpn.conf index d2ce10bb3..21efd0a63 100644 --- a/config/zabbix_agentd/userparameter_ovpn.conf +++ b/config/zabbix_agentd/userparameter_ovpn.conf @@ -3,7 +3,7 @@ # Discovery of configured ovpn clients UserParameter=ipfire.ovpn.clients.discovery,cat /var/ipfire/ovpn/ovpnconfig 2>/dev/null | awk -F',' 'BEGIN { ORS = ""; print "[" } { printf "%s{\"{#NAME}\":\"%s\",\"{#COMMONNAME}\":\"%s\",\"{#STATE}\":\"%s\",\"{#REMARK}\":\"%s\",\"{#TYPE}\":\"%s\"}", separator, $3, $4, $2, $27, $5; separator = ","; } END { print "]" }' # Get OpenVPN status report -UserParameter=ipfire.ovpn.statusreport.get,sudo /usr/local/bin/openvpnctrl rw log 2>/dev/null | awk -F"," 'function unixtime(t) { gsub(/[-:]/," ",t); return mktime(t) } BEGIN { ORS = ""; print "{" } /^Updated,.+/ { printf "\"timestamp\":%s,\"clients\":[",unixtime($2) } /^.+,[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]+,[0-9]+,[0-9]+,.+/ { if ($1 != "Common Name") { printf "%s{\"common_name\":\"%s\",\"real_address\":\"%s\",\"bytes_in\":\"%s\",\"bytes_out\":\"%s\",\"connected_since\":\"%s\"}", separator, $1, $2, $3, $4, unixtime($5); separator = ","; } } /^ROUTING TABLE/ { print "],\"routing_table\":["; separator = "" } /^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+,.+,[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]+,.+/ { if ($1 != "Virtual Address") { printf "%s{\"common_name\":\"%s\",\"virtual_address\":\"%s\",\"real_address\":\"%s\",\"last_ref\":\"%s\"}", separator, $2, $1, $3, unixtime($4); separator = "," } } END { print "]}" }' +UserParameter=ipfire.ovpn.statusreport.get,sudo /usr/local/bin/openvpnctrl rw log 2>/dev/null | awk -F"," 'function unixtime(t) { gsub(/[-:]/," ",t); return mktime(t) } BEGIN { ORS = ""; print "{" } /^Updated,.+/ { printf "\"timestamp\":%s,\"clients\":[",unixtime($2) } /^.+,.+:[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]+,[0-9]+,[0-9]+,.+/ { if ($1 != "Common Name") { printf "%s{\"common_name\":\"%s\",\"real_address\":\"%s\",\"bytes_in\":\"%s\",\"bytes_out\":\"%s\",\"connected_since\":\"%s\"}", separator, $1, $2, $3, $4, unixtime($5); separator = ","; } } /^ROUTING TABLE/ { print "],\"routing_table\":["; separator = "" } /^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+,.+,.+:[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]+,.+/ { if ($1 != "Virtual Address") { printf "%s{\"common_name\":\"%s\",\"virtual_address\":\"%s\",\"real_address\":\"%s\",\"last_ref\":\"%s\"}", separator, $2, $1, $3, unixtime($4); separator = "," } } END { print "]}" }' # Get OpenVPN client certificate details UserParameter=ipfire.ovpn.clientcert[*],sudo /var/ipfire/zabbix_agentd/scripts/ipfire_certificate_detail.sh /var/ipfire/ovpn/ca/cacert.pem /var/ipfire/ovpn/certs/$1cert.pem UserParameter=ipfire.ovpn.cacert,sudo /var/ipfire/zabbix_agentd/scripts/ipfire_certificate_detail.sh /var/ipfire/ovpn/ca/cacert.pem /var/ipfire/ovpn/ca/cacert.pem diff --git a/lfs/zabbix_agentd b/lfs/zabbix_agentd index 9f0d65c78..cbf4b246c 100644 --- a/lfs/zabbix_agentd +++ b/lfs/zabbix_agentd @@ -34,7 +34,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = zabbix_agentd -PAK_VER = 22 +PAK_VER = 23 DEPS = fping -- 2.54.0 -- Dit bericht is gescanned op virussen en andere gevaarlijke inhoud door MailScanner en lijkt schoon te zijn.