Compare commits

..

4 Commits

Author SHA1 Message Date
Jenkins Server
de7a6f2c8b Merge build 41 into master 2026-09-24 16:37:33 +02:00
Jenkins Server
b81af4156f Recommit for updates in build 41 2026-09-24 16:37:32 +02:00
Jenkins Server
1033830a1a Merge remote-tracking branch 'origin/master' into jenkins-build-41 2026-09-24 16:36:36 +02:00
d7a8ad6576 OP#672 add sshd nagios check 2026-09-24 16:36:18 +02:00
8 changed files with 279 additions and 4 deletions

View File

@@ -103,6 +103,11 @@
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html" title="puppet_classes::confdroid_ssh::monitoring::target (puppet_class)">confdroid_ssh::monitoring::target</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_ssh_3A_3Aparams.html" title="puppet_classes::confdroid_ssh::params (puppet_class)">confdroid_ssh::params</a></span>

View File

@@ -89,14 +89,21 @@
</li>
<li id="object_puppet_classes::confdroid_ssh::params" class="even">
<li id="object_puppet_classes::confdroid_ssh::monitoring::target" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html" title="puppet_classes::confdroid_ssh::monitoring::target (puppet_class)">confdroid_ssh::monitoring::target</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_ssh::params" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_ssh_3A_3Aparams.html" title="puppet_classes::confdroid_ssh::params (puppet_class)">confdroid_ssh::params</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_ssh::selinux::semanage" class="odd">
<li id="object_puppet_classes::confdroid_ssh::selinux::semanage" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_ssh_3A_3Aselinux_3A_3Asemanage.html" title="puppet_classes::confdroid_ssh::selinux::semanage (puppet_class)">confdroid_ssh::selinux::semanage</a></span>
</div>

View File

@@ -105,7 +105,11 @@
7
8
9
10</pre>
10
11
12
13
14</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/config.pp', line 6</span>
@@ -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
}
}</pre>
</td>
</tr>

View File

@@ -0,0 +1,154 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_ssh::monitoring::target
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_ssh::monitoring::target";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_ssh::monitoring::target</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_ssh::monitoring::target</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_ssh_3A_3Aparams.html" title="puppet_classes::confdroid_ssh::params (puppet_class)">confdroid_ssh::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/monitoring/target.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages Nagios monitoring settings
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_ssh::monitoring::target.pp Module name: confdroid_ssh Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/monitoring/target.pp', line 6</span>
class confdroid_ssh::monitoring::target (
) inherits confdroid_ssh::params {
if $ssh_manage_nagios == true {
@@nagios_service { &quot;check_ssh_${fqdn}&quot;:
check_command =&gt; &quot;check_nrpe!check_ssh!${ssh_procs_allowed}!sshd&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_check_ssh&quot;,
target =&gt; $ssh_target_service,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
contacts =&gt; $ssh_target_contacts,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -81,6 +81,8 @@
<span class='object_link'><a href="confdroid_ssh_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::confdroid_ssh::firewall::iptables (puppet_class)">confdroid_ssh::firewall::iptables</a></span><br/>
<span class='object_link'><a href="confdroid_ssh_3A_3Amonitoring_3A_3Atarget.html" title="puppet_classes::confdroid_ssh::monitoring::target (puppet_class)">confdroid_ssh::monitoring::target</a></span><br/>
</dd>
</dl>
@@ -218,6 +220,58 @@
</li>
<li>
<span class='name'>ssh_manage_nagios</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
</li>
<li>
<span class='name'>ssh_target_service</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;/etc/nagios/conf.d/sshd_service.cfg&#39;</tt>)</em>
</li>
<li>
<span class='name'>ssh_target_contacts</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;nagiosadmin&#39;</tt>)</em>
</li>
<li>
<span class='name'>ssh_procs_allowed</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1:&#39;</tt>)</em>
</li>
</ul>
@@ -258,7 +312,14 @@
39
40
41
42</pre>
42
43
44
45
46
47
48
49</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 13</span>
@@ -274,6 +335,13 @@ class confdroid_ssh::params (
String $ssh_fw_order = &#39;50&#39;,
String $ssh_source_range = &#39;0.0.0.0/0&#39;,
# monitoring
Boolean $ssh_manage_nagios = false,
String $ssh_target_service = &#39;/etc/nagios/conf.d/sshd_service.cfg&#39;,
String $ssh_target_contacts = &#39;nagiosadmin&#39;,
String $ssh_procs_allowed = &#39;1:&#39;,
) {
# default facts
$fqdn = $facts[&#39;networking&#39;][&#39;fqdn&#39;]

View File

@@ -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
}
}

View File

@@ -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,
}
}
}

View File

@@ -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']