From 1921fccdc2af43d936aaf0256622535a5608bc92 Mon Sep 17 00:00:00 2001 From: "th.l" <thl-cmk@outlook.com> Date: Sun, 28 Apr 2024 21:44:53 +0200 Subject: [PATCH] update project --- README.md | 2 +- mkp/check_radius-0.1.1-20240428.mkp | Bin 0 -> 10578 bytes source/gui/metrics/check_radius.py | 5 +- .../gui/wato/check_parameters/check_radius.py | 15 ++- source/lib/nagios/plugins/check_radius | 14 +-- source/lib/nagios/plugins/dictionary | 11 +++ .../lib/nagios/plugins/dictionary.freeradius | 91 ------------------ source/packages/check_radius | 9 +- 8 files changed, 40 insertions(+), 107 deletions(-) create mode 100644 mkp/check_radius-0.1.1-20240428.mkp delete mode 100755 source/lib/nagios/plugins/dictionary.freeradius diff --git a/README.md b/README.md index 0ddcade..de66089 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[PACKAGE]: ../../raw/master/mkp/check_radius-0.1.0-20240428.mkp "check_radius-0.1.0-20240428.mkp" +[PACKAGE]: ../../raw/master/mkp/check_radius-0.1.1-20240428.mkp "check_radius-0.1.1-20240428.mkp" [PYRADLIB]: ../../raw/master/mkp/pyrad-2.4.0-240421.mkp "pyrad-2.4.0-240421.mkp" This is a (very) basic active RADIUS check. Tests if a RADIUS server is responsive (accept/reject/timeout). There is (limited) support to add AV-pairs to the RADIUS request. diff --git a/mkp/check_radius-0.1.1-20240428.mkp b/mkp/check_radius-0.1.1-20240428.mkp new file mode 100644 index 0000000000000000000000000000000000000000..eb41f06b9cd46531cfa8f267a7cf3d78e009815a GIT binary patch literal 10578 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 literal 0 HcmV?d00001 diff --git a/source/gui/metrics/check_radius.py b/source/gui/metrics/check_radius.py index 67790d9..73f5873 100644 --- a/source/gui/metrics/check_radius.py +++ b/source/gui/metrics/check_radius.py @@ -3,6 +3,7 @@ # # License: GNU General Public License v2 # +# # Author: thl-cmk[at]outlook[dot]com # URL : https://thl-cmk.hopto.org # Date : 2024-04-21 @@ -38,6 +39,6 @@ graph_info['check_radius_time'] = { perfometer_info.append({ 'type': 'logarithmic', 'metric': 'radius_response_time', - 'half_value': 1.0, - 'exponent': 10.0, + 'half_value': 0.1, # 100 ms + 'exponent': 2.0, }) diff --git a/source/gui/wato/check_parameters/check_radius.py b/source/gui/wato/check_parameters/check_radius.py index 71dd1d8..c3092ec 100644 --- a/source/gui/wato/check_parameters/check_radius.py +++ b/source/gui/wato/check_parameters/check_radius.py @@ -6,7 +6,7 @@ # # Author: thl-cmk[at]outlook[dot]com # URL : https://thl-cmk.hopto.org -# Date : 2022-10-04 +# Date : 2024-04-21 # File : wato/active_checks_radius.py # # 2024-01-01: modified for cmk 2.2.x @@ -159,6 +159,18 @@ _service_type = Tuple( ), ], ) +_cisco_av_pair = Tuple( + title='Cisco-AVPair', + orientation='horizontal', + elements=[ + FixedValue('Cisco-AVPair'), + TextInput( + size=20, + placeholder='method=mab', + allow_empty=False, + ), + ], +) def _valuespec_active_checks_radius(): @@ -237,6 +249,7 @@ def _valuespec_active_checks_radius(): elements=[ _called_station_id, _calling_station_id, + _cisco_av_pair, _framed_mtu, _nas_identifier, _nas_ip_address, diff --git a/source/lib/nagios/plugins/check_radius b/source/lib/nagios/plugins/check_radius index 2147c1f..79568a9 100755 --- a/source/lib/nagios/plugins/check_radius +++ b/source/lib/nagios/plugins/check_radius @@ -57,7 +57,7 @@ class Args(Namespace): state_not_expected_response: int -VERSION = '0.1.0-20240428' +VERSION = '0.1.1-20240428' cmk_state = { 0: '', @@ -74,7 +74,7 @@ response_str = { def parse_arguments(argv: Sequence[str]) -> Args: def _av_pair(s): try: - name, value = s.split(':') + name, value = s.split(':', 1) return name, value except ValueError: raise ArgumentTypeError("AV-Pairs must be in the form of name:vale") @@ -106,18 +106,18 @@ def parse_arguments(argv: Sequence[str]) -> Args: help='secret RADIUS key', ) parser.add_argument( - '--username', default='dummyuser', required=True, + '--username', default='dummyuser', help='user name to test with', ) parser.add_argument( - '--password', default='dummypassword', required=True, + '--password', default='dummypassword', help='user password to test with', ) # # optional request parameters # parser.add_argument( - '--auth_port', type=int, default=1812, + '--auth-port', type=int, default=1812, help='RADIUS authentication port to use.', ) parser.add_argument( @@ -197,7 +197,7 @@ def main(args=None): for av_pair in args.request_attribute: name, value = av_pair[0] try: - rad_req[name] = value + rad_req.AddAttribute(name, value) except TypeError: sys_stdout.write( f'WARNING: attribute value must be the real value not the name of the ' @@ -233,7 +233,7 @@ def main(args=None): long_output.append(message) # third: check response time - message = f'Response time {response_time * 1000:.0f}ms' + message = f'Response time {response_time * 1000:.0f} ms' if args.max_response_time: warn, crit = args.max_response_time warn = warn diff --git a/source/lib/nagios/plugins/dictionary b/source/lib/nagios/plugins/dictionary index 125de2f..f7a30ca 100755 --- a/source/lib/nagios/plugins/dictionary +++ b/source/lib/nagios/plugins/dictionary @@ -444,3 +444,14 @@ VALUE Tunnel-Medium-Type Appletalk 12 VALUE Tunnel-Medium-Type DecNet-IV 13 VALUE Tunnel-Medium-Type Banyan-Vines 14 VALUE Tunnel-Medium-Type E.164-NSAP 15 + +# +# Cisco AV Pair +# +VENDOR Cisco 9 + +BEGIN-VENDOR Cisco + +ATTRIBUTE Cisco-AVPair 1 string + +END-VENDOR Cisco diff --git a/source/lib/nagios/plugins/dictionary.freeradius b/source/lib/nagios/plugins/dictionary.freeradius deleted file mode 100755 index dc9fb22..0000000 --- a/source/lib/nagios/plugins/dictionary.freeradius +++ /dev/null @@ -1,91 +0,0 @@ -# -*- text -*- -# Copyright (C) 2015 The FreeRADIUS Server project and contributors -# -# The FreeRADIUS Vendor-Specific dictionary. -# -# Version: $Id: ea468da88509aeff96b6f0d38ebc97411b9775b3 $ -# -# For a complete list of Private Enterprise Codes, see: -# -# http://www.isi.edu/in-notes/iana/assignments/enterprise-numbers -# - -VENDOR FreeRADIUS 11344 - -BEGIN-VENDOR FreeRADIUS - -# -# This attribute is really a bitmask. -# -ATTRIBUTE FreeRADIUS-Statistics-Type 127 integer - -VALUE FreeRADIUS-Statistics-Type None 0 -VALUE FreeRADIUS-Statistics-Type Authentication 1 -VALUE FreeRADIUS-Statistics-Type Accounting 2 -VALUE FreeRADIUS-Statistics-Type Proxy-Authentication 4 -VALUE FreeRADIUS-Statistics-Type Proxy-Accounting 8 -VALUE FreeRADIUS-Statistics-Type Internal 0x10 -VALUE FreeRADIUS-Statistics-Type Client 0x20 -VALUE FreeRADIUS-Statistics-Type Server 0x40 -VALUE FreeRADIUS-Statistics-Type Home-Server 0x80 - -VALUE FreeRADIUS-Statistics-Type Auth-Acct 0x03 -VALUE FreeRADIUS-Statistics-Type Proxy-Auth-Acct 0x0c - -VALUE FreeRADIUS-Statistics-Type All 0x1f - -# -# FreeRADIUS statistic result attributes -# -ATTRIBUTE FreeRADIUS-Total-Access-Requests 128 integer -ATTRIBUTE FreeRADIUS-Total-Access-Accepts 129 integer -ATTRIBUTE FreeRADIUS-Total-Access-Rejects 130 integer -ATTRIBUTE FreeRADIUS-Total-Access-Challenges 131 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Responses 132 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Duplicate-Requests 133 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Malformed-Requests 134 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Invalid-Requests 135 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Dropped-Requests 136 integer -ATTRIBUTE FreeRADIUS-Total-Auth-Unknown-Types 137 integer - -ATTRIBUTE FreeRADIUS-Total-Proxy-Access-Requests 138 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Access-Accepts 139 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Access-Rejects 140 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Access-Challenges 141 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Responses 142 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Duplicate-Requests 143 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Malformed-Requests 144 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Invalid-Requests 145 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Dropped-Requests 146 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Auth-Unknown-Types 147 integer - -ATTRIBUTE FreeRADIUS-Total-Accounting-Requests 148 integer -ATTRIBUTE FreeRADIUS-Total-Accounting-Responses 149 integer -ATTRIBUTE FreeRADIUS-Total-Acct-Duplicate-Requests 150 integer -ATTRIBUTE FreeRADIUS-Total-Acct-Malformed-Requests 151 integer -ATTRIBUTE FreeRADIUS-Total-Acct-Invalid-Requests 152 integer -ATTRIBUTE FreeRADIUS-Total-Acct-Dropped-Requests 153 integer -ATTRIBUTE FreeRADIUS-Total-Acct-Unknown-Types 154 integer - -ATTRIBUTE FreeRADIUS-Total-Proxy-Accounting-Requests 155 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Accounting-Responses 156 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Acct-Duplicate-Requests 157 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Acct-Malformed-Requests 158 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Acct-Invalid-Requests 159 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Acct-Dropped-Requests 160 integer -ATTRIBUTE FreeRADIUS-Total-Proxy-Acct-Unknown-Types 161 integer - -ATTRIBUTE FreeRADIUS-Queue-Len-Internal 162 integer -ATTRIBUTE FreeRADIUS-Queue-Len-Proxy 163 integer -ATTRIBUTE FreeRADIUS-Queue-Len-Auth 164 integer -ATTRIBUTE FreeRADIUS-Queue-Len-Acct 165 integer -ATTRIBUTE FreeRADIUS-Queue-Len-Detail 166 integer - -ATTRIBUTE FreeRADIUS-Stats-Start-Time 176 date -ATTRIBUTE FreeRADIUS-Stats-HUP-Time 177 date - -ATTRIBUTE FreeRADIUS-Queue-PPS-In 181 integer -ATTRIBUTE FreeRADIUS-Queue-PPS-In 182 integer - - -END-VENDOR FreeRADIUS \ No newline at end of file diff --git a/source/packages/check_radius b/source/packages/check_radius index bff1f3c..7bbd0d9 100644 --- a/source/packages/check_radius +++ b/source/packages/check_radius @@ -6,17 +6,16 @@ ' - (limited) support to add AV-pairs to the RADIUS request\n' ' - checks response code, response time and number of response ' 'attributes\n' - '\n', + '\n' + 'NOTE: this plugin needs _pyrad_ to work.\n', 'download_url': 'https://thl-cmk.hopto.org', 'files': {'checks': ['check_radius'], 'gui': ['metrics/check_radius.py', 'wato/check_parameters/check_radius.py'], - 'lib': ['nagios/plugins/check_radius', - 'nagios/plugins/dictionary', - 'nagios/plugins/dictionary.freeradius']}, + 'lib': ['nagios/plugins/check_radius', 'nagios/plugins/dictionary']}, 'name': 'check_radius', 'title': 'Check RADIUS', - 'version': '0.1.0-20240428', + 'version': '0.1.1-20240428', 'version.min_required': '2.2.0b1', 'version.packaged': '2.2.0p24', 'version.usable_until': None} -- GitLab