From cdc0ef3059e05ede098d5cf1dd533915abbe5b51 Mon Sep 17 00:00:00 2001 From: "th.l" <thl-cmk@outlook.com> Date: Sun, 27 Mar 2022 20:06:24 +0200 Subject: [PATCH] update project --- agent_based/curl.py | 2 +- agents/bakery/curl.py | 24 ++++++++++++++++++-- agents/plugins/curl.ps1 | 2 +- curl.mkp | Bin 24578 -> 24993 bytes packages/curl | 10 +++++---- web/plugins/wato/curl.py | 46 +++++++++++++++++++++++---------------- 6 files changed, 57 insertions(+), 27 deletions(-) diff --git a/agent_based/curl.py b/agent_based/curl.py index 2350da3..4d1ecbc 100644 --- a/agent_based/curl.py +++ b/agent_based/curl.py @@ -461,7 +461,7 @@ def check_curl(item, params, section: Dict[str, Any]) -> CheckResult: if show_session_info and _data.get('TLS_INFO'): yield Result(state=State.OK, notice=f' ') - yield Result(state=State.OK, notice=f'TLS/SSL info:') + yield Result(state=State.OK, notice=f'TLS/SSL/SSH info:') for line in _data['TLS_INFO']: if line: yield Result(state=State.OK, notice=f'{line}') diff --git a/agents/bakery/curl.py b/agents/bakery/curl.py index 048a2bd..196c6e1 100755 --- a/agents/bakery/curl.py +++ b/agents/bakery/curl.py @@ -44,7 +44,10 @@ # 2022-03-21: fixed handling of limits and sub directories from wato # 2022-03-24: added options --hostpubmd5, --hostpubsha256, --pubkey # 2022-03-24: added options --key --passs +# 2022-03-25: added options --compressed-ssh, --list-only, --use-ascii +# added options --path-as-is, --ssl-allow-beast, --no-buffer, --no-keepalive, --no-sessionid # + from pathlib import Path from typing import List, Tuple, Dict @@ -60,7 +63,7 @@ from cmk.base.cee.plugins.bakery.bakery_api.v1 import ( ) -bakery_version = '20220324.v0.0.6' +bakery_version = '20220325.v0.0.6' def get_curl_files(conf: Tuple[str, Dict[str, List[any]]]) -> FileGenerator: @@ -343,11 +346,22 @@ def get_curl_files(conf: Tuple[str, Dict[str, List[any]]]) -> FileGenerator: url_settings.pop('cert_verify') if url_settings.get('advanced_settings'): - no_apln, no_npn, tcp_fastopen, tcp_nodelay = url_settings['advanced_settings'] + allow_beast, no_apln, no_buffering, no_npn, no_sessionid, no_keepalive, \ + path_as_is, tcp_fastopen, tcp_nodelay = url_settings['advanced_settings'] + if allow_beast: + options_array.append(f'--ssl-allow-beast') if no_apln: options_array.append(f'--no-alpn') + if no_buffering: + options_array.append(f'--no-buffer') if no_npn: options_array.append(f'--no-npn') + if no_sessionid: + options_array.append(f'--no-sessionid') + if no_keepalive: + options_array.append(f'--no-keepalive') + if path_as_is: + options_array.append(f'--path-as-is') if tcp_fastopen: options_array.append(f'--tcp-fastopen') if tcp_nodelay: @@ -433,6 +447,12 @@ def get_curl_files(conf: Tuple[str, Dict[str, List[any]]]) -> FileGenerator: if ftp_ssl_ccc: options_array.append(f'--ftp-ssl-ccc') options_array.append(f'--ftp-ssl-ccc-mode {ftp_ssl_ccc_mode}') + if ftp_options.get('compressed_ssh'): + options_array.append(f'--compressed-ssh') + if ftp_options.get('list_only'): + options_array.append(f'--list-only') + if ftp_options.get('use_ascii'): + options_array.append(f'--use-ascii') url_settings.pop('ftp_settings') if save_output: diff --git a/agents/plugins/curl.ps1 b/agents/plugins/curl.ps1 index ba27c30..04727a2 100755 --- a/agents/plugins/curl.ps1 +++ b/agents/plugins/curl.ps1 @@ -5,7 +5,7 @@ Author: thl-cmk[at]outlook[dot]com URL : https://thl-cmk.hopto.org Date : 2022-02-10 -based on the work by Christian Wirtz doc[at]snowheaven[dot]de and +based on the work by Christian Wirtz doc[at]snowheaven[dot]de and Ingo Hambrock Wrapper around: https://curl.se/ diff --git a/curl.mkp b/curl.mkp index 3b74d44ce4876c7f8f6965c781178d49acbf3179..cce478135ad49d04e80f3785b9ec19898a7e80f2 100644 GIT binary patch literal 24993 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 F_#Y{BrnmqA literal 24578 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 D`j<%o diff --git a/packages/curl b/packages/curl index d589b44..b9b250c 100644 --- a/packages/curl +++ b/packages/curl @@ -5,15 +5,17 @@ 'not the monitoring server ;-). Deployment and configuration ' 'of the plugin is integrated in the CMK bakery.\n' '\n' + 'The plugin is based on a idea by based on the work by ' + 'Christian Wirtz doc[at]snowheaven[dot]de and Ingo Hambrock\n' 'This agent plugin for Linux and Windows is build around the ' 'curl command line tool from https://curl.se.\n' '\n' 'The executable is not included in this package. The plugin ' 'will use by default the system provided curl executable.\n' '\n' - 'Note: this plugin needs a fairly new version of curl to work. ' - 'You can use my CMK package "curl_executable.mkp" to deploy a ' - 'compatible version.\n', + 'Note: this plugin needs at leat curl version 7.70.0 from ' + 'April 29 2020 to work. You can use my CMK package ' + '"curl_executable.mkp" to deploy a compatible version.\n', 'download_url': 'https://thl-cmk.hopto.org/gitlab/checkmk/vendor-independent/curl', 'files': {'agent_based': ['curl.py'], 'agents': ['bakery/curl.py', 'plugins/curl.sh', 'plugins/curl.ps1'], @@ -21,7 +23,7 @@ 'name': 'curl', 'num_files': 6, 'title': 'cURL agent plugin', - 'version': '20220324.v0.1.3', + 'version': '20220325.v0.1.4', 'version.min_required': '2.0.0', 'version.packaged': '2021.09.20', 'version.usable_until': None} \ No newline at end of file diff --git a/web/plugins/wato/curl.py b/web/plugins/wato/curl.py index 78ec3d0..ac451cf 100644 --- a/web/plugins/wato/curl.py +++ b/web/plugins/wato/curl.py @@ -62,7 +62,10 @@ # 2022-03-24: added options --hostpubmd5, --hostpubsha256, --pubkey # 2022-03-24: added options --key --passs # reworked user_auth section +# 2022-03-25: added options --compressed-ssh, --list-only, --use-ascii +# added options --path-as-is, --ssl-allow-beast, --no-buffer, --no-keepalive, --no-sessionid # + import ipaddress from cmk.gui.i18n import _ from cmk.gui.exceptions import MKUserError @@ -101,7 +104,7 @@ from cmk.gui.cee.plugins.wato.agent_bakery.rulespecs.utils import ( RulespecGroupMonitoringAgentsAgentPlugins, ) -bakery_plugin_version = '20220324.v0.0.6' +bakery_plugin_version = '20220325.v0.0.6' # unsafe characters https://www.tutorialspoint.com/html/html_url_encoding.htm forbidden_chars = '"<>#%{}|\^~[]` \'' @@ -393,8 +396,13 @@ _option_advanced_settings = ('advanced_settings', Tuple( title='Advanced settings', elements=[ + Checkbox('Allow SSL beast security flaw to improve interoperability'), Checkbox('Disable Application Layer Protocol Negotiation (ALPN)'), + Checkbox('Disable buffering of the output stream'), Checkbox('Disable Next Protocol Negotiation (NPN)'), + Checkbox('Disable SSL session-ID reusing'), + Checkbox('Disable TCP keep alive on the connection'), + Checkbox('Do not squash .. sequences in URL path'), Checkbox('Use TCP fast open option'), Checkbox('Use TCP no delay option'), ] @@ -648,7 +656,7 @@ _option_address_resolution = ('ip_address_resolution', _option_ftp_settings = ('ftp_settings', Foldable( Dictionary( - title=_('FTP options'), + title=_('FTP/SCP/SFTP options'), elements=[ ('ftp_account', TextUnicode(title=_('Account data string')),), ('ftp_alternate_to_user', TextUnicode(title=_('String to replace USER command'))), @@ -713,9 +721,24 @@ _option_ftp_settings = ('ftp_settings', ) ] )), + ('compressed_ssh', FixedValue( + True, + title=_('Enable ssh compression'), + totext=_('enabled'), + )), + ('list_only', FixedValue( + True, + title=_('Enable list only'), + totext=_('enabled'), + )), + ('use_ascii', FixedValue( + True, + title=_('Enable ASCII transfer'), + totext=_('enabled'), + )), ], ), - title=_('Set FTP options'), + title=_('Set FTP/SCP/SFTP options'), )) _option_expected_strings = ('expected_strings', @@ -982,21 +1005,6 @@ _option_limits = ('limits', ), title=_('Set connection limits') )) -_url_limits = ('limits', - Foldable( - Dictionary( - title=_('Limits'), - elements=[ - _url_limit_rate, - _url_max_file_size, - _url_connect_timeout, - _url_max_time, - _url_speed_limit, - _url_speed_time, - ] - ), - title=_('Set connection limits') - )) _option_user_agent = ('user_agent', TextUnicode( @@ -1106,7 +1114,7 @@ _option_url_settings = ('url_settings', _url_user_agent, _url_header_strings, _url_expected_strings, - _url_limits, + _option_limits, _option_address_resolution, _option_ftp_settings, _option_tls_ssl_version, -- GitLab