Documentation by YARD 0.9.36
+Alphabetic Index
+ +Puppet Class Listing A-Z
+ + +
+
+
+
|
+
Defined Type Listing A-Z
+ + +
+
+
+
|
+
File Listing
+-
+
+
+
- README + + +
diff --git a/doc/_index.html b/doc/_index.html new file mode 100644 index 0000000..f40d9ec --- /dev/null +++ b/doc/_index.html @@ -0,0 +1,187 @@ + + +
+ + +
+
+
+
|
+
+
+
+
|
+
| t |
+ + + +6 +7 +8+ |
+
+ # File 'manifests/init.pp', line 6
+
+class confdroid_nrpe {
+ include confdroid_nrpe::params
+}
+ |
+
confdroid_nrpe::commands::definition_rules.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80+ |
+
+ # File 'manifests/commands/definition_rules.pp', line 12
+
+class confdroid_nrpe::commands::definition_rules (
+
+) inherits confdroid_nrpe::params {
+ if $ne_manage_cmds == true {
+ require confdroid_nrpe::main::files
+
+ # manage the commands.cfg file
+
+ concat { $ne_cmd_file:
+ ensure => present,
+ path => $ne_cmd_file,
+ owner => $ne_user,
+ group => $ne_user,
+ mode => '0640',
+ selrange => s0,
+ selrole => object_r,
+ seltype => nrpe_etc_t,
+ seluser => system_u,
+ notify => Service[$ne_service],
+ }
+
+ # manage the file header
+
+ concat::fragment { 'nrpe_cmd_header':
+ target => $ne_cmd_file,
+ content => template($ne_cmd_head_erb),
+ order => '000',
+ }
+
+ # basic example rules
+
+ confdroid_nrpe::commands::definitions { 'check_users':
+ ne_check_name => 'check_users',
+ ne_check_cmd => 'check_users',
+ ne_cmd_argstring => '-w $ARG1$ -c $ARG2$',
+ ne_cmd_comment => 'check the amount of user logged in locally',
+ }
+
+ confdroid_nrpe::commands::definitions { 'check_load':
+ ne_check_name => 'check_load',
+ ne_check_cmd => 'check_load',
+ ne_cmd_argstring => '-w $ARG1$ -c $ARG2$',
+ }
+
+ confdroid_nrpe::commands::definitions { 'check_disk':
+ ne_check_name => 'check_disk',
+ ne_check_cmd => 'check_disk',
+ ne_cmd_argstring => '-w $ARG1$ -c $ARG2$ -p $ARG3$',
+ }
+
+ confdroid_nrpe::commands::definitions { 'check_procs':
+ ne_check_name => 'check_procs',
+ ne_check_cmd => 'check_procs',
+ ne_cmd_argstring => '-w $ARG1$ -c $ARG2$ -s $ARG3$',
+ }
+
+ confdroid_nrpe::commands::definitions { 'check_swap':
+ ne_check_name => 'check_swap',
+ ne_check_cmd => 'check_swap',
+ ne_cmd_argstring => '-w $ARG1$ -c $ARG2$',
+ }
+
+ confdroid_nrpe::commands::definitions { 'check_fail2ban':
+ ne_check_name => 'check_fail2ban',
+ ne_check_cmd => 'check_procs',
+ ne_cmd_argstring => '-c $ARG1$ -a $ARG2$',
+ }
+ }
+}
+ |
+
+ + + +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18+ |
+
+ # File 'manifests/firewall/iptables.pp', line 7
+
+class confdroid_nrpe::firewall::iptables (
+
+) inherits confdroid_nrpe::params {
+ if $ne_incl_fw == true {
+ firewall { "${ne_fw_order_no}${ne_nrpe_port} port ${ne_nrpe_port}":
+ source => $nagios_source,
+ proto => 'tcp',
+ dport => $ne_nrpe_port,
+ jump => 'accept',
+ }
+ }
+}
+ |
+
+ + + +7 +8 +9 +10 +11+ |
+
+ # File 'manifests/main/config.pp', line 7
+
+class confdroid_nrpe::main::config (
+
+) inherits confdroid_nrpe::params {
+ include confdroid_nrpe::main::service
+}
+ |
+
confdroid_nrpe::main::dirs.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36+ |
+
+ # File 'manifests/main/dirs.pp', line 6
+
+class confdroid_nrpe::main::dirs (
+
+) inherits confdroid_nrpe::params {
+ require confdroid_nrpe::main::user
+
+ # manage main conf_d_dir
+
+ file { $ne_main_conf_d_dir:
+ ensure => directory,
+ path => $ne_main_conf_d_dir,
+ owner => 'root',
+ group => 'root',
+ mode => '0755',
+ selrange => s0,
+ selrole => object_r,
+ seltype => etc_t,
+ seluser => system_u,
+ }
+
+ file { $ne_run_dir:
+ ensure => directory,
+ path => $ne_run_dir,
+ owner => $ne_user,
+ group => $ne_user,
+ mode => '0755',
+ selrange => s0,
+ selrole => object_r,
+ seltype => var_run_t,
+ seluser => system_u,
+ }
+}
+ |
+
confdroid_nrpe::main::files.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73+ |
+
+ # File 'manifests/main/files.pp', line 6
+
+class confdroid_nrpe::main::files (
+
+) inherits confdroid_nrpe::params {
+ require confdroid_nrpe::main::dirs
+
+ # manage /etc/nagios/nrpe.cfg
+
+ file { $ne_main_conf_file:
+ ensure => file,
+ path => $ne_main_conf_file,
+ owner => 'root',
+ group => 'root',
+ mode => '0644',
+ selrange => s0,
+ selrole => object_r,
+ seltype => nrpe_etc_t,
+ seluser => system_u,
+ content => template($ne_main_conf_erb),
+ notify => Service[$ne_service],
+ }
+
+ # manage /etc/sysconfig/nrpe
+
+ file { $ne_nrpe_conf_file:
+ ensure => file,
+ path => $ne_nrpe_conf_file,
+ owner => 'root',
+ group => 'root',
+ mode => '0644',
+ selrange => s0,
+ selrole => object_r,
+ seltype => etc_t,
+ seluser => system_u,
+ content => template($ne_nrpe_conf_erb),
+ notify => Service[$ne_service],
+ }
+
+ if $ne_allow_sudo == true {
+
+ file { $ne_sudo_file:
+ ensure => file,
+ path => $ne_sudo_file,
+ owner => 'root',
+ group => 'root',
+ mode => '0440',
+ selrange => s0,
+ selrole => object_r,
+ seltype => etc_t,
+ seluser => system_u,
+ content => template($ne_sudo_rule_erb),
+ }
+
+ # file for sudo selinux policy
+ file { $ne_nrpe_te_file:
+ ensure => file,
+ path => $ne_nrpe_te_file,
+ owner => 'root',
+ group => 'root',
+ mode => '0440',
+ selrange => s0,
+ selrole => object_r,
+ seltype => nrpe_etc_t,
+ seluser => system_u,
+ content => template($ne_nrpe_te_erb),
+ notify => Exec['create_nrpe_pp'],
+ }
+ }
+}
+ |
+
confdroid_nrpe::main::install.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +6 +7 +8 +9 +10 +11 +12 +13 +14+ |
+
+ # File 'manifests/main/install.pp', line 6
+
+class confdroid_nrpe::main::install (
+
+) inherits confdroid_nrpe::params {
+ require confdroid_resources::main::epel
+
+ package { $reqpackages:
+ ensure => $pkg_ensure,
+ }
+}
+ |
+
confdroid_nrpe::main::service.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29+ |
+
+ # File 'manifests/main/service.pp', line 6
+
+class confdroid_nrpe::main::service (
+
+) inherits confdroid_nrpe::params {
+ require confdroid_nrpe::main::files
+
+ if $ne_incl_fw == true {
+ require confdroid_nrpe::firewall::iptables
+ }
+
+ if $ne_manage_cmds == true {
+ require confdroid_nrpe::commands::definition_rules
+ }
+
+ if $ne_include_selinux == true {
+ require confdroid_nrpe::selinux::config
+ }
+
+ service { $ne_service:
+ ensure => running,
+ hasstatus => true,
+ hasrestart => true,
+ enable => true,
+ }
+}
+ |
+
confdroid_nrpe::main::user.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31+ |
+
+ # File 'manifests/main/user.pp', line 6
+
+class confdroid_nrpe::main::user (
+
+) inherits confdroid_nrpe::params {
+ require confdroid_nrpe::main::install
+
+ group { $ne_user:
+ ensure => present,
+ name => $ne_user,
+ gid => $ne_user_uid,
+ allowdupe => false,
+ }
+
+ user { $ne_user:
+ ensure => present,
+ name => $ne_user,
+ allowdupe => false,
+ comment => $ne_user_comment,
+ uid => $ne_user_uid,
+ gid => $ne_user,
+ groups => $ne_user_groups,
+ managehome => true,
+ home => $ne_user_home,
+ shell => $ne_user_shell,
+ require => Group[$ne_user],
+ }
+}
+ |
+
confdroid_nrpe::params.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com) be passed to the NRPE daemon.
+ +
+ + + +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165+ |
+
+ # File 'manifests/params.pp', line 78
+
+class confdroid_nrpe::params (
+
+ String $pkg_ensure = 'present',
+ Array $reqpackages = ['nrpe','nrpe-selinux','selinux-policy-devel'],
+
+ Boolean $ne_manage_cmds = true,
+
+# NRPE user settings
+ String $ne_user = 'nrpe',
+ String $ne_user_comment = 'NRPE service user',
+ String $ne_user_uid = '1005',
+ String $ne_user_home = '/var/run/nrpe',
+ Optional[String] $ne_user_groups = undef,
+ String $ne_user_shell = '/sbin/nologin',
+
+# nrpe.cfg
+ String $ne_log_facility = 'daemon',
+ String $ne_log_file = '',
+ String $ne_debug = '0',
+ String $ne_nrpe_port = '5666',
+ String $ne_server_address = '0.0.0.0',
+ String $ne_listen_queue_size = '5',
+ String $ne_dont_blame_nrpe = '1',
+ String $ne_allow_bash_cmd_subst = '1',
+ Boolean $ne_allow_sudo = true,
+ String $ne_command_prefix = '/usr/bin/sudo',
+ String $ne_command_timeout = '60',
+ String $ne_connection_timeout = '300',
+ String $ne_allow_weak_rnd_seed = '1',
+ Boolean $ne_enable_ssl = false,
+ String $ne_ssl_version = 'TLSv2+',
+ String $ne_ssl_use_adh = '1',
+ String $ne_ssl_cipher_list = 'ALL:!aNULL:!eNULL:!SSLv2:!LOW:!EXP:!RC4:!MD5:@STRENGTH',
+ String $ne_ssl_cacert_file = '/etc/pki/tls/certs/ca-chain.crt.pem',
+ String $ne_ssl_client_certs = '2',
+ String $ne_ssl_logging = '0x00',
+ Array $ne_nasty_metachars = ["|`&><'\\[]{};\r\n"],
+ String $ne_include_file = '',
+
+# nrpe.conf
+ String $ne_ssl_opts = '',
+
+# firewall
+ Boolean $ne_incl_fw = true,
+ String $ne_fw_order_no = '50',
+
+# selinux
+ Boolean $ne_include_selinux = true,
+
+) {
+# Default facts
+ $fqdn = $facts['networking']['fqdn']
+ $domain = $facts['networking']['domain']
+ $os_name = $facts['os']['name']
+ $os_release = $facts['os']['release']['major']
+ $nagios_server = $::nagios_server
+ $nagios_source = $::nagios_source
+
+# service
+ $ne_service = 'nrpe'
+
+# directories
+ $ne_main_conf_d_dir = '/etc/nrpe.d'
+ $ne_run_dir = '/var/run/nrpe'
+
+# files
+ $ne_main_conf_file = '/etc/nagios/nrpe.cfg'
+ $ne_main_conf_erb = 'confdroid_nrpe/nrpe_cfg.erb'
+ $ne_nrpe_pid_file = "${ne_run_dir}/nrpe.pid"
+ $ne_nrpe_conf_file = '/etc/sysconfig/nrpe'
+ $ne_nrpe_conf_erb = 'confdroid_nrpe/nrpe_conf.erb'
+ $ne_cmd_file = "${ne_main_conf_d_dir}/commands.cfg"
+ $ne_cmd_head_erb = 'confdroid_nrpe/cmd_head.erb'
+ $ne_cmd_rule_erb = 'confdroid_nrpe/cmd_rule.erb'
+ $ne_sudo_file = '/etc/sudoers.d/nagios_sudo'
+ $ne_sudo_rule_erb = 'confdroid_nrpe/sudo_rule.erb'
+ $ne_nrpe_te_file = "${ne_main_conf_d_dir}/nrpe.te"
+ $ne_nrpe_te_erb = 'confdroid_nrpe/nrpe.te.erb'
+ $ne_nrpe_mod_file = "${ne_main_conf_d_dir}/nrpe.mod"
+ $ne_checkmodule_nrpe_erb = 'confdroid_nrpe/checkmodule_nrpe.erb'
+ $ne_nrpe_pp_file = "${ne_main_conf_d_dir}/nrpe.pp"
+ $ne_semodule_erb = 'confdroid_nrpe/semodule_nrpe.erb'
+ $ne_ssl_cert_file = "/etc/pki/tls/certs/${fqdn}.crt.pem"
+ $ne_ssl_privatekey_file = "/etc/pki/tls/private/${fqdn}.key.pem"
+
+# includes must be last
+ include confdroid_nrpe::main::config
+}
+ |
+
confdroid_nrpe::selinux::config.pp # Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com)
+ +
+ + + +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35+ |
+
+ # File 'manifests/selinux/config.pp', line 5
+
+class confdroid_nrpe::selinux::config (
+
+) inherits confdroid_nrpe::params {
+ if $ne_include_selinux == true {
+ # manage allow nagios sudo
+
+ exec { 'nagios_run_sudo':
+ command => 'setsebool -P nagios_run_sudo 1',
+ path => ['/usr/bin','/usr/sbin'],
+ cwd => '/tmp',
+ unless => 'getsebool nagios_run_sudo | awk \'{print$3}\' | grep -ic "on"'
+ }
+
+ # create policy file for sudo selinux policy
+ exec { 'create_nrpe_pp':
+ command => template($ne_checkmodule_nrpe_erb),
+ user => 'root',
+ creates => $ne_nrpe_pp_file,
+ refreshonly => true,
+ notify => Exec['import_semodule_nrpe'],
+ }
+
+ # import semodule
+ exec { 'import_semodule_nrpe':
+ command => template($ne_semodule_erb),
+ user => 'root',
+ unless => '/sbin/semodule -l | grep nrpe | grep -v nrpe_',
+ refreshonly => true,
+ }
+ }
+}
+ |
+
confdroid_nrpe::commands::definitions.pp Module name: confdroid_nrpe Author: 12ww1160 (12ww1160@ConfDroid.com) different checks.
+ +
+ + + +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40+ |
+
+ # File 'manifests/commands/definitions.pp', line 21
+
+define confdroid_nrpe::commands::definitions (
+
+ String $ne_check_name = 'check_procs',
+ Optional[String] $ne_check_cmd = undef,
+ String $ne_cmd_path = '/usr/lib64/nagios/plugins/',
+ Optional[String] $ne_cmd_argstring = undef,
+ Optional[String] $ne_cmd_comment = undef,
+
+) {
+ $ne_cmd_file = $confdroid_nrpe::params::ne_cmd_file
+ $ne_cmd_rule_erb = $confdroid_nrpe::params::ne_cmd_rule_erb
+ $ne_manage_cmds = $confdroid_nrpe::params::ne_manage_cmds
+
+ if $ne_manage_cmds == true {
+ concat::fragment { $name:
+ target => $ne_cmd_file,
+ content => template($ne_cmd_rule_erb),
+ }
+ }
+}
+ |
+