From d7a8ad65763198bd7cc67a4301a3a57841d5543d Mon Sep 17 00:00:00 2001 From: 12ww1160 <12ww1160@confdroid.com> Date: Thu, 24 Sep 2026 16:36:18 +0200 Subject: [PATCH 1/2] OP#672 add sshd nagios check --- manifests/main/config.pp | 4 ++++ manifests/monitoring/target.pp | 22 ++++++++++++++++++++++ manifests/params.pp | 7 +++++++ 3 files changed, 33 insertions(+) create mode 100644 manifests/monitoring/target.pp diff --git a/manifests/main/config.pp b/manifests/main/config.pp index c035b41..0a9609b 100644 --- a/manifests/main/config.pp +++ b/manifests/main/config.pp @@ -7,4 +7,8 @@ class confdroid_ssh::main::config ( ) inherits confdroid_ssh::params { require confdroid_selinux include confdroid_ssh::main::service + + if $ssh_manage_nagios == true { + include confdroid_ssh::monitoring::target + } } diff --git a/manifests/monitoring/target.pp b/manifests/monitoring/target.pp new file mode 100644 index 0000000..b796ba0 --- /dev/null +++ b/manifests/monitoring/target.pp @@ -0,0 +1,22 @@ +## confdroid_ssh::monitoring::target.pp +# Module name: confdroid_ssh +# Author: 12ww1160 (12ww1160@confdroid.com) +# @summary Class manages Nagios monitoring settings +############################################################################## +class confdroid_ssh::monitoring::target ( +) inherits confdroid_ssh::params { + if $ssh_manage_nagios == true { + @@nagios_service { "check_ssh_${fqdn}": + check_command => "check_nrpe!check_ssh!${ssh_procs_allowed}!sshd", + use => 'generic-service', + host_name => $fqdn, + notification_period => '24x7', + service_description => "${fqdn}_check_ssh", + target => $ssh_target_service, + owner => 'nagios', + group => 'nagios', + mode => '0640', + contacts => $ssh_target_contacts, + } + } +} diff --git a/manifests/params.pp b/manifests/params.pp index 6e97d34..1c614af 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -21,6 +21,13 @@ class confdroid_ssh::params ( String $ssh_fw_order = '50', String $ssh_source_range = '0.0.0.0/0', + # monitoring + + Boolean $ssh_manage_nagios = false, + String $ssh_target_service = '/etc/nagios/conf.d/sshd_service.cfg', + String $ssh_target_contacts = 'nagiosadmin', + String $ssh_procs_allowed = '1:', + ) { # default facts $fqdn = $facts['networking']['fqdn'] From b81af4156f2d8f03e2fa4b3200b5979c5e1b1195 Mon Sep 17 00:00:00 2001 From: Jenkins Server Date: Thu, 24 Sep 2026 16:37:32 +0200 Subject: [PATCH 2/2] Recommit for updates in build 41 --- doc/_index.html | 5 + doc/puppet_class_list.html | 11 +- .../confdroid_ssh_3A_3Amain_3A_3Aconfig.html | 10 +- ...droid_ssh_3A_3Amonitoring_3A_3Atarget.html | 154 ++++++++++++++++++ .../confdroid_ssh_3A_3Aparams.html | 70 +++++++- 5 files changed, 246 insertions(+), 4 deletions(-) create mode 100644 doc/puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html diff --git a/doc/_index.html b/doc/_index.html index 9f20f6d..370f7d1 100644 --- a/doc/_index.html +++ b/doc/_index.html @@ -103,6 +103,11 @@ +
  • + confdroid_ssh::monitoring::target + +
  • +
  • confdroid_ssh::params diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html index a8531c9..fa385d1 100644 --- a/doc/puppet_class_list.html +++ b/doc/puppet_class_list.html @@ -89,14 +89,21 @@
  • -
  • +
  • + +
  • + + +
  • -
  • +
  • diff --git a/doc/puppet_classes/confdroid_ssh_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/confdroid_ssh_3A_3Amain_3A_3Aconfig.html index 4748626..33e6c45 100644 --- a/doc/puppet_classes/confdroid_ssh_3A_3Amain_3A_3Aconfig.html +++ b/doc/puppet_classes/confdroid_ssh_3A_3Amain_3A_3Aconfig.html @@ -105,7 +105,11 @@ 7 8 9 -10 +10 +11 +12 +13 +14
    # File 'manifests/main/config.pp', line 6
    @@ -114,6 +118,10 @@ class confdroid_ssh::main::config (
     ) inherits confdroid_ssh::params {
       require confdroid_selinux
       include confdroid_ssh::main::service
    +
    +  if $ssh_manage_nagios == true {
    +    include confdroid_ssh::monitoring::target
    +  }
     }
    diff --git a/doc/puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html b/doc/puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html new file mode 100644 index 0000000..927012b --- /dev/null +++ b/doc/puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html @@ -0,0 +1,154 @@ + + + + + + + Puppet Class: confdroid_ssh::monitoring::target + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
    + + +

    Puppet Class: confdroid_ssh::monitoring::target

    +
    + +
    +
    Inherits:
    +
    confdroid_ssh::params
    +
    + + +
    +
    Defined in:
    +
    + manifests/monitoring/target.pp +
    +
    +
    + +

    Summary

    + Class manages Nagios monitoring settings + +

    Overview

    +
    +
    + +

    confdroid_ssh::monitoring::target.pp Module name: confdroid_ssh Author: 12ww1160 (12ww1160@confdroid.com)

    + +
    +
    + + + +
    + + + +
    + + + + + +
    +
    +
    +
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +
    +
    # File 'manifests/monitoring/target.pp', line 6
    +
    +class confdroid_ssh::monitoring::target (
    +) inherits confdroid_ssh::params {
    +  if $ssh_manage_nagios == true {
    +    @@nagios_service { "check_ssh_${fqdn}":
    +      check_command       => "check_nrpe!check_ssh!${ssh_procs_allowed}!sshd",
    +      use                 => 'generic-service',
    +      host_name           => $fqdn,
    +      notification_period => '24x7',
    +      service_description => "${fqdn}_check_ssh",
    +      target              => $ssh_target_service,
    +      owner               => 'nagios',
    +      group               => 'nagios',
    +      mode                => '0640',
    +      contacts            => $ssh_target_contacts,
    +    }
    +  }
    +}
    +
    +
    +
    + + + +
    + + \ No newline at end of file diff --git a/doc/puppet_classes/confdroid_ssh_3A_3Aparams.html b/doc/puppet_classes/confdroid_ssh_3A_3Aparams.html index 27bcb46..61167e1 100644 --- a/doc/puppet_classes/confdroid_ssh_3A_3Aparams.html +++ b/doc/puppet_classes/confdroid_ssh_3A_3Aparams.html @@ -81,6 +81,8 @@ confdroid_ssh::firewall::iptables
    + confdroid_ssh::monitoring::target
    + @@ -218,6 +220,58 @@
  • +
  • + + ssh_manage_nagios + + + (Boolean) + + + (defaults to: false) + + +
  • + +
  • + + ssh_target_service + + + (String) + + + (defaults to: '/etc/nagios/conf.d/sshd_service.cfg') + + +
  • + +
  • + + ssh_target_contacts + + + (String) + + + (defaults to: 'nagiosadmin') + + +
  • + +
  • + + ssh_procs_allowed + + + (String) + + + (defaults to: '1:') + + +
  • + @@ -258,7 +312,14 @@ 39 40 41 -42 +42 +43 +44 +45 +46 +47 +48 +49
    # File 'manifests/params.pp', line 13
    @@ -274,6 +335,13 @@ class confdroid_ssh::params (
       String $ssh_fw_order                      = '50',
       String $ssh_source_range                  = '0.0.0.0/0',
     
    +  # monitoring
    +
    +  Boolean $ssh_manage_nagios                = false,
    +  String $ssh_target_service                = '/etc/nagios/conf.d/sshd_service.cfg',
    +  String $ssh_target_contacts               = 'nagiosadmin',
    +  String $ssh_procs_allowed                 = '1:',
    +
     ) {
     # default facts
       $fqdn                     = $facts['networking']['fqdn']